X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=tools%2Ffit_check_sign.c;h=d9361b00950c7a699c714d224adddcaec7a13dbe;hb=ed286bc80e9d237dd1732ced037427e7d9a277a0;hp=817773d48a0bbb37934c565835d39e7111e5f059;hpb=3e1fa221f94b7ae3389d166882b77f1da5895f22;p=people%2Fms%2Fu-boot.git diff --git a/tools/fit_check_sign.c b/tools/fit_check_sign.c index 817773d48a..d9361b0095 100644 --- a/tools/fit_check_sign.c +++ b/tools/fit_check_sign.c @@ -62,20 +62,31 @@ int main(int argc, char **argv) break; } - ffd = mmap_fdt(cmdname, fdtfile, &fit_blob, &fsbuf, 0); + 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, 0); - 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);