Browse Source

tools: Check arguments in fit_check_sign/fit_info

These tools crash if no arguments are provided. Add checks to avoid this.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Heiko Schocher <hs@denx.de>
Simon Glass 10 years ago
parent
commit
ba923cab00
2 changed files with 21 additions and 0 deletions
  1. 9 0
      tools/fit_check_sign.c
  2. 12 0
      tools/fit_info.c

+ 9 - 0
tools/fit_check_sign.c

@@ -62,6 +62,15 @@ int main(int argc, char **argv)
 			break;
 	}
 
+	if (!fdtfile) {
+		fprintf(stderr, "%s: Missing fdt file\n", *argv);
+		usage(*argv);
+	}
+	if (!keyfile) {
+		fprintf(stderr, "%s: Missing key file\n", *argv);
+		usage(*argv);
+	}
+
 	ffd = mmap_fdt(cmdname, fdtfile, 0, &fit_blob, &fsbuf, false);
 	if (ffd < 0)
 		return EXIT_FAILURE;

+ 12 - 0
tools/fit_info.c

@@ -68,6 +68,18 @@ int main(int argc, char **argv)
 			break;
 		}
 
+	if (!fdtfile) {
+		fprintf(stderr, "%s: Missing fdt file\n", *argv);
+		usage(*argv);
+	}
+	if (!nodename) {
+		fprintf(stderr, "%s: Missing node name\n", *argv);
+		usage(*argv);
+	}
+	if (!propertyname) {
+		fprintf(stderr, "%s: Missing property name\n", *argv);
+		usage(*argv);
+	}
 	ffd = mmap_fdt(cmdname, fdtfile, 0, &fit_blob, &fsbuf, false);
 
 	if (ffd < 0) {