summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeinrich Schuchardt <xypron.glpk@gmx.de>2019-08-15 23:54:15 +0200
committerLukasz Majewski <lukma@denx.de>2019-08-22 00:09:58 +0200
commit2bdb42f7c076638eb3dfbdfefc142f37f5e6209d (patch)
treeea1a1199f3fea010c5ebdf512faf39a23df21684
parent071f369dd2f83ac6d290b53ea7e530afd0a9e67d (diff)
downloadu-boot-2bdb42f7c076638eb3dfbdfefc142f37f5e6209d.tar.gz
easylogo: avoid buffer overrun
Building easylogo with `HOST_TOOLS_ALL=y make tools` results in a build warning due to a possible buffer overrun: tools/easylogo/easylogo.c:453:4: note: ‘sprintf’ output between 7 and 262 bytes into a destination of size 256 sprintf (str, "%s, 0x%02x", app, *dataptr++); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Truncate the output to fit into the destination buffer. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
-rw-r--r--tools/easylogo/easylogo.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/easylogo/easylogo.c b/tools/easylogo/easylogo.c
index 4ba86bf760..ed4bf203dd 100644
--- a/tools/easylogo/easylogo.c
+++ b/tools/easylogo/easylogo.c
@@ -450,7 +450,8 @@ int image_save_header (image_t * image, char *filename, char *varname)
default:
strcpy (app, str);
- sprintf (str, "%s, 0x%02x", app, *dataptr++);
+ sprintf(str, "%.*s, 0x%02x", (int)sizeof(str) - 7, app,
+ *dataptr++);
col++;
count--;
break;