From e71bab696feafed19360e4e00728a59bfb11c875 Mon Sep 17 00:00:00 2001 From: Warner Losh Date: Sat, 25 Feb 2017 00:09:12 +0000 Subject: [PATCH] Exit with usage if argv[1] is NULL in dispatch. This fixes core dumps when a command has subcommands, but the user doesn't give the parameters on the command line. Sponsored by: Netflix --- sbin/nvmecontrol/nvmecontrol.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sbin/nvmecontrol/nvmecontrol.c b/sbin/nvmecontrol/nvmecontrol.c index 52dccb411bf9..6c658d24b39c 100644 --- a/sbin/nvmecontrol/nvmecontrol.c +++ b/sbin/nvmecontrol/nvmecontrol.c @@ -75,6 +75,11 @@ dispatch(int argc, char *argv[], struct nvme_function *tbl) { struct nvme_function *f = tbl; + if (argv[1] == NULL) { + gen_usage(tbl); + return; + } + while (f->name != NULL) { if (strcmp(argv[1], f->name) == 0) f->fn(argc-1, &argv[1]);