mkimage: error handling for FIT image
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Tue, 1 Mar 2022 07:53:56 +0000 (08:53 +0100)
committerTom Rini <trini@konsulko.com>
Fri, 4 Mar 2022 20:20:06 +0000 (15:20 -0500)
If parameter -F is given but FIT support is missing, a NULL pointer might
dereferenced (Coverity CID 350249).

If incorrect parameters are given, provide a message and show usage.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
tools/mkimage.c

index 7601451..74bd072 100644 (file)
@@ -381,6 +381,11 @@ int main(int argc, char **argv)
        }
 
        if (params.fflag){
+               if (!tparams) {
+                       fprintf(stderr, "%s: Missing FIT support\n",
+                               params.cmdname);
+                       exit (EXIT_FAILURE);
+               }
                if (tparams->fflag_handle)
                        /*
                         * in some cases, some additional processing needs
@@ -391,7 +396,7 @@ int main(int argc, char **argv)
                        retval = tparams->fflag_handle(&params);
 
                if (retval != EXIT_SUCCESS)
-                       exit (retval);
+                       usage("Bad parameters for FIT image type");
        }
 
        if (params.lflag || params.fflag) {