[PATCH] mkimage: fix option parsing segfault
Carlos López
carlos.lopezr4096 at gmail.com
Thu Apr 24 17:08:19 CEST 2025
getopt_long() expects a NULL-terminated list of structures. The current
list in mkimage does not have a zero-filled structure at the end, which
can cause getopt_long() to walk past the end of the array when passing
an unknown option, causing a segmentation fault.
As a reproducer, the following command causes a segmentation fault
(tested in Debian 12):
mkimage --foobar
Signed-off-by: Carlos López <carlos.lopezr4096 at gmail.com>
---
tools/mkimage.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/mkimage.c b/tools/mkimage.c
index ac62ebbde9b..2954626a283 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -196,6 +196,7 @@ static const struct option longopts[] = {
{ "verbose", no_argument, NULL, 'v' },
{ "version", no_argument, NULL, 'V' },
{ "xip", no_argument, NULL, 'x' },
+ { /* sentinel */ },
};
static void process_args(int argc, char **argv)
--
2.39.5
More information about the U-Boot
mailing list