
On 06/18/2018 04:08 PM, Simon Glass wrote:
At present a NULL pointer passed to printf for a %pU argument will cause U-Boot to access memory at 0. Fix this by adding a check, and print "(null)" instead.
Signed-off-by: Simon Glass sjg@chromium.org Reviewed-by: Alexander Graf agraf@suse.de
Changes in v8: None Changes in v7: None Changes in v6: None Changes in v5: None Changes in v4: None Changes in v3: None Changes in v2: None
lib/vsprintf.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 8b1b29fb5a..2da7f88b18 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -407,7 +407,10 @@ static char *uuid_string(char *buf, char *end, u8 *addr, int field_width, break; }
- uuid_bin_to_str(addr, uuid, str_format);
- if (addr)
uuid_bin_to_str(addr, uuid, str_format);
- else
strcpy(uuid, "(null)");
Everywhere else in vsprintf.c we use "<NULL>". I would prefer consistency.
@Alex: You already added the patch to efi-next. Could you update the string, please?
Best regards
Heinrich
return string(buf, end, uuid, field_width, precision, flags); }