]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - tools/fit_check_sign.c
sh: Do not provide strncmp
[people/ms/u-boot.git] / tools / fit_check_sign.c
index 357650d526e77e6290bc1a422bf6cd6b110cf70f..d9361b00950c7a699c714d224adddcaec7a13dbe 100644 (file)
@@ -62,20 +62,31 @@ int main(int argc, char **argv)
                        break;
        }
 
-       ffd = mmap_fdt(cmdname, fdtfile, &fit_blob, &fsbuf, false);
+       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;
-       kfd = mmap_fdt(cmdname, keyfile, &key_blob, &ksbuf, false);
-       if (ffd < 0)
+       kfd = mmap_fdt(cmdname, keyfile, 0, &key_blob, &ksbuf, false);
+       if (kfd < 0)
                return EXIT_FAILURE;
 
        image_set_host_blob(key_blob);
        ret = fit_check_sign(fit_blob, key_blob);
-
-       if (ret)
+       if (!ret) {
                ret = EXIT_SUCCESS;
-       else
+               fprintf(stderr, "Signature check OK\n");
+       } else {
                ret = EXIT_FAILURE;
+               fprintf(stderr, "Signature check Bad (error %d)\n", ret);
+       }
 
        (void) munmap((void *)fit_blob, fsbuf.st_size);
        (void) munmap((void *)key_blob, ksbuf.st_size);