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>
diff --git a/tools/easylogo/easylogo.c b/tools/easylogo/easylogo.c
index 4ba86bf..ed4bf20 100644
--- a/tools/easylogo/easylogo.c
+++ b/tools/easylogo/easylogo.c
@@ -450,7 +450,8 @@
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;