From: Arvind Sankar Date: Mon, 18 May 2020 19:07:05 +0000 (-0400) Subject: efi/printf: Handle null string input X-Git-Tag: v5.10.7~2527^2~1^2~16 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fb031937a86874e6d663542bdbd83e310c13610e;p=platform%2Fkernel%2Flinux-rpi.git efi/printf: Handle null string input Print "(null)" for 's' if the input is a NULL pointer. Signed-off-by: Arvind Sankar Link: https://lore.kernel.org/r/20200518190716.751506-14-nivedita@alum.mit.edu Signed-off-by: Ard Biesheuvel --- diff --git a/drivers/firmware/efi/libstub/vsprintf.c b/drivers/firmware/efi/libstub/vsprintf.c index 27685c7..d427a7b 100644 --- a/drivers/firmware/efi/libstub/vsprintf.c +++ b/drivers/firmware/efi/libstub/vsprintf.c @@ -14,6 +14,7 @@ #include #include +#include #include static int skip_atoi(const char **s) @@ -356,7 +357,11 @@ int vsprintf(char *buf, const char *fmt, va_list ap) continue; case 's': + if (precision < 0) + precision = INT_MAX; s = va_arg(args, char *); + if (!s) + s = precision < 6 ? "" : "(null)"; len = strnlen(s, precision); if (!(flags & LEFT))