Re: [PATCH] accessibility: speakup: refactor deprecated strcpy

Samuel Thibault <[email protected]>
Newsgroups org.kernel.vger.linux-kernel
Organization I am not organized
Message-ID <anXHCY5lJ4K-Ky5w@end>
Ajith P V, le ven. 07 août 2026 11:10:58 +0000, a ecrit:
> strcpy() is deprecated, use strscpy() instead.
> 
> As strcpy() performs no bounds checking on the destination buffer. This
> could result in buffer overflow. The safe replacement is strscpy() [1][2].
> 
> Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strcpy [1]
> Link: https://github.com/KSPP/linux/issues/88 [2]
> 
> Signed-off-by: Ajith P V <[email protected]>

Reviewed-by: Samuel thibault <[email protected]>

> ---
>  drivers/accessibility/speakup/varhandlers.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/accessibility/speakup/varhandlers.c b/drivers/accessibility/speakup/varhandlers.c
> index 462f8d879053..c6d3b4cc1af8 100644
> --- a/drivers/accessibility/speakup/varhandlers.c
> +++ b/drivers/accessibility/speakup/varhandlers.c
> @@ -1,5 +1,6 @@
>  // SPDX-License-Identifier: GPL-2.0
>  #include <linux/ctype.h>
> +#include <linux/string.h>
>  #include "spk_types.h"
>  #include "spk_priv.h"
>  #include "speakup.h"
> @@ -265,10 +266,10 @@ int spk_set_string_var(const char *page, struct st_var_header *var, int len)
>  		if (!var->p_val)
>  			var->p_val = var_data->u.s.default_val;
>  		if (var->p_val != var_data->u.s.default_val)
> -			strcpy((char *)var->p_val, var_data->u.s.default_val);
> +			strscpy((char *)var->p_val, var_data->u.s.default_val, MAXVARLEN + 1);
>  		return -ERESTART;
>  	} else if (var->p_val) {
> -		strcpy((char *)var->p_val, page);
> +		strscpy((char *)var->p_val, page, MAXVARLEN + 1);
>  	} else {
>  		return -E2BIG;
>  	}
> -- 
> 2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.