From: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Date: Tue, 1 Mar 2022 07:53:56 +0000 (+0100)
Subject: mkimage: error handling for FIT image
X-Git-Tag: v2025.01-rc5-pxa1908~1514^2~2
X-Git-Url: http://git.dujemihanovic.xyz/%22http:/kyber.dk/phpMyBuilder/static/%7B%7B%20%24style.Permalink%20%7D%7D?a=commitdiff_plain;h=5017f9b595da6e5c8f064a43fc6cd42cb62c082a;p=u-boot.git

mkimage: error handling for FIT image

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>
---

diff --git a/tools/mkimage.c b/tools/mkimage.c
index 760145119d..74bd072832 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -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) {