On Tue, Aug 19, 2025 at 12:24:17PM +0200, Thorsten Blum wrote:
> 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 <[email protected]>
> ---
>  arch/mips/rb532/prom.c | 17 +++++++++--------
>  1 file changed, 9 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/mips/rb532/prom.c b/arch/mips/rb532/prom.c
> index b88e89ec5894..8c370eb180ef 100644
> --- a/arch/mips/rb532/prom.c
> +++ b/arch/mips/rb532/prom.c
> @@ -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)
> -- 
> 2.50.1

applied to mips-next.

Thomas.

-- 
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea.                                                [ RFC1925, 2.3 ]

Reply via email to