]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
MIPS: RB532: Replace deprecated strcpy() with memcpy() and strscpy()
authorThorsten Blum <thorsten.blum@linux.dev>
Tue, 19 Aug 2025 10:24:17 +0000 (12:24 +0200)
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>
Fri, 29 Aug 2025 20:34:30 +0000 (22:34 +0200)
strcpy() is deprecated; use memcpy() and strscpy() instead.

Add the local variable 'size_t len' to keep track of the string lengths
and prefer memcpy() over strscpy() when we use the string length to
advance the 'cp' pointer.

No functional changes intended.

Link: https://github.com/KSPP/linux/issues/88
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
arch/mips/rb532/prom.c

index b88e89ec58941d60d1649c31f7f42af650036047..8c370eb180efc271b06cbeffa7760c9290712eb1 100644 (file)
@@ -53,6 +53,7 @@ static void __init prom_setup_cmdline(void)
        int prom_argc;
        char **prom_argv;
        int i;
+       size_t len;
 
        prom_argc = fw_arg0;
        prom_argv = (char **) fw_arg1;
@@ -82,20 +83,20 @@ static void __init prom_setup_cmdline(void)
                                mips_machtype = MACH_MIKROTIK_RB532;
                }
 
-               strcpy(cp, prom_argv[i]);
-               cp += strlen(prom_argv[i]);
+               len = strlen(prom_argv[i]);
+               memcpy(cp, prom_argv[i], len + 1);
+               cp += len;
        }
        *(cp++) = ' ';
 
-       i = strlen(arcs_cmdline);
-       if (i > 0) {
+       len = strlen(arcs_cmdline);
+       if (len > 0) {
                *(cp++) = ' ';
-               strcpy(cp, arcs_cmdline);
-               cp += strlen(arcs_cmdline);
+               memcpy(cp, arcs_cmdline, len + 1);
+               cp += len;
        }
        cmd_line[COMMAND_LINE_SIZE - 1] = '\0';
-
-       strcpy(arcs_cmdline, cmd_line);
+       strscpy(arcs_cmdline, cmd_line);
 }
 
 void __init prom_init(void)