Re: [PATCH] kconfig/lxdialog: replace strcpy with snprintf in print_autowrap
From: Masahiro Yamada
Date: Tue Jul 29 2025 - 10:12:24 EST
On Sun, Jul 27, 2025 at 4:43 AM Suchit Karunakaran
<suchitkarunakaran@xxxxxxxxx> wrote:
>
> strcpy() does not perform bounds checking and can lead to buffer overflows
> if the source string exceeds the destination buffer size. In
> print_autowrap(), replace strcpy() with snprintf() to safely copy the
> prompt string into the fixed-size tempstr buffer.
>
> Signed-off-by: Suchit Karunakaran <suchitkarunakaran@xxxxxxxxx>
> ---
Applied to linux-kbuild.
Thanks.
> scripts/kconfig/lxdialog/util.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/scripts/kconfig/lxdialog/util.c b/scripts/kconfig/lxdialog/util.c
> index 964139c87fcb..b34000beb294 100644
> --- a/scripts/kconfig/lxdialog/util.c
> +++ b/scripts/kconfig/lxdialog/util.c
> @@ -345,8 +345,7 @@ void print_autowrap(WINDOW * win, const char *prompt, int width, int y, int x)
> int prompt_len, room, wlen;
> char tempstr[MAX_LEN + 1], *word, *sp, *sp2, *newline_separator = 0;
>
> - strcpy(tempstr, prompt);
> -
> + snprintf(tempstr, sizeof(tempstr), "%s", prompt);
> prompt_len = strlen(tempstr);
>
> if (prompt_len <= width - x * 2) { /* If prompt is short */
> --
> 2.50.1
>
--
Best Regards
Masahiro Yamada