| From 52f28df35c86e2b0bf7fe9d6471c8382db14cf75 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Tue, 28 May 2024 14:11:48 +0200 |
| Subject: kdb: address -Wformat-security warnings |
| |
| From: Arnd Bergmann <arnd@arndb.de> |
| |
| [ Upstream commit 70867efacf4370b6c7cdfc7a5b11300e9ef7de64 ] |
| |
| When -Wformat-security is not disabled, using a string pointer |
| as a format causes a warning: |
| |
| kernel/debug/kdb/kdb_io.c: In function 'kdb_read': |
| kernel/debug/kdb/kdb_io.c:365:36: error: format not a string literal and no format arguments [-Werror=format-security] |
| 365 | kdb_printf(kdb_prompt_str); |
| | ^~~~~~~~~~~~~~ |
| kernel/debug/kdb/kdb_io.c: In function 'kdb_getstr': |
| kernel/debug/kdb/kdb_io.c:456:20: error: format not a string literal and no format arguments [-Werror=format-security] |
| 456 | kdb_printf(kdb_prompt_str); |
| | ^~~~~~~~~~~~~~ |
| |
| Use an explcit "%s" format instead. |
| |
| Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
| Fixes: 5d5314d6795f ("kdb: core for kgdb back end (1 of 2)") |
| Reviewed-by: Douglas Anderson <dianders@chromium.org> |
| Link: https://lore.kernel.org/r/20240528121154.3662553-1-arnd@kernel.org |
| Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| kernel/debug/kdb/kdb_io.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| diff --git a/kernel/debug/kdb/kdb_io.c b/kernel/debug/kdb/kdb_io.c |
| index a3b4b55d2e2e1..a4256e558a701 100644 |
| --- a/kernel/debug/kdb/kdb_io.c |
| +++ b/kernel/debug/kdb/kdb_io.c |
| @@ -358,7 +358,7 @@ static char *kdb_read(char *buffer, size_t bufsize) |
| if (i >= dtab_count) |
| kdb_printf("..."); |
| kdb_printf("\n"); |
| - kdb_printf(kdb_prompt_str); |
| + kdb_printf("%s", kdb_prompt_str); |
| kdb_printf("%s", buffer); |
| if (cp != lastchar) |
| kdb_position_cursor(kdb_prompt_str, buffer, cp); |
| @@ -450,7 +450,7 @@ char *kdb_getstr(char *buffer, size_t bufsize, const char *prompt) |
| { |
| if (prompt && kdb_prompt_str != prompt) |
| strscpy(kdb_prompt_str, prompt, CMD_BUFLEN); |
| - kdb_printf(kdb_prompt_str); |
| + kdb_printf("%s", kdb_prompt_str); |
| kdb_nextline = 1; /* Prompt and input resets line number */ |
| return kdb_read(buffer, bufsize); |
| } |
| -- |
| 2.43.0 |
| |