summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYoichi Yuasa <yuasa@linux-mips.org>2010-01-26 18:07:02 +0900
committerRalf Baechle <ralf@linux-mips.org>2010-02-27 12:53:14 +0100
commit9feb8367999265b8a300cb96e7a66f79b651c820 (patch)
treeb471a9590a69ef7bc0089cdbee39232e897434e0
parente0e53dee69e07e9446eb16ceabd55a1116611696 (diff)
MIPS: AR7: use strlcat() for the command line arguments
Signed-off-by: Yoichi Yuasa <yuasa@linux-mips.org> Cc: linux-mips <linux-mips@linux-mips.org> Patchwork: http://patchwork.linux-mips.org/patch/871/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/ar7/prom.c22
1 files changed, 6 insertions, 16 deletions
diff --git a/arch/mips/ar7/prom.c b/arch/mips/ar7/prom.c
index f1cfd90a31d7..f5a6ed6deb3f 100644
--- a/arch/mips/ar7/prom.c
+++ b/arch/mips/ar7/prom.c
@@ -56,22 +56,12 @@ char * __init prom_getcmdline(void)
static void __init ar7_init_cmdline(int argc, char *argv[])
{
- char *cp;
- int actr;
-
- actr = 1; /* Always ignore argv[0] */
+ int i;
- cp = &(arcs_cmdline[0]);
- while (actr < argc) {
- strcpy(cp, argv[actr]);
- cp += strlen(argv[actr]);
- *cp++ = ' ';
- actr++;
- }
- if (cp != &(arcs_cmdline[0])) {
- /* get rid of trailing space */
- --cp;
- *cp = '\0';
+ for (i = 1; i < argc; i++) {
+ strlcat(arcs_cmdline, argv[i], COMMAND_LINE_SIZE);
+ if (i < (argc - 1))
+ strlcat(arcs_cmdline, " ", COMMAND_LINE_SIZE);
}
}
@@ -250,7 +240,7 @@ static void __init console_config(void)
else
sprintf(console_string, " console=ttyS0,%d%c%c", baud, parity,
bits);
- strcat(prom_getcmdline(), console_string);
+ strlcat(arcs_cmdline, console_string, COMMAND_LINE_SIZE);
#endif
}