X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=tools%2Ffit_info.c;h=652abcd2bd15434b78298035e53a6d13c9b874e4;hb=1531034831b3098634b524b7e244f577fae21312;hp=afbed7b5995a69a261bae2a4d055963c9fc9b543;hpb=a9468115699de562f08796bf2eabd832435bedec;p=u-boot diff --git a/tools/fit_info.c b/tools/fit_info.c index afbed7b599..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,6 +69,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) {