X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=tools%2Ffit_info.c;h=652abcd2bd15434b78298035e53a6d13c9b874e4;hb=62e92077a8936e60087d55683538ee386cc673aa;hp=50f3c8edf12ef2cde4c89572eece2bcdbfa54454;hpb=6bf4ca076f8c7a3c1c5abd1cbb059516f7af15df;p=u-boot diff --git a/tools/fit_info.c b/tools/fit_info.c index 50f3c8edf1..652abcd2bd 100644 --- a/tools/fit_info.c +++ b/tools/fit_info.c @@ -48,10 +48,11 @@ int main(int argc, char **argv) char *fdtfile = NULL; char *nodename = NULL; char *propertyname = NULL; - char cmdname[50]; + char cmdname[256]; int c; - strcpy(cmdname, *argv); + strncpy(cmdname, *argv, sizeof(cmdname) - 1); + cmdname[sizeof(cmdname) - 1] = '\0'; while ((c = getopt(argc, argv, "f:n:p:")) != -1) switch (c) { case 'f': @@ -68,7 +69,19 @@ 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 (!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) { printf("Could not open %s\n", fdtfile);