From 35ffe6476553742b8ad3c3e0a7272398f2a1c0db Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 8 Mar 2026 17:46:11 +0000 Subject: util/nvmutil: fix 3-arg setmac 3-arg arguments were broken, by recent generalisations. this should fix it. Signed-off-by: Leah Rowe --- util/nvmutil/nvmutil.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'util/nvmutil') diff --git a/util/nvmutil/nvmutil.c b/util/nvmutil/nvmutil.c index 474e90eb..212e1a3e 100644 --- a/util/nvmutil/nvmutil.c +++ b/util/nvmutil/nvmutil.c @@ -342,6 +342,7 @@ main(int argc, char *argv[]) if (close(gbe_fd) == -1) err(ECANCELED, "close '%s'", fname); + #ifndef HAVE_ARC4RANDOM_BUF if (urandom_fd > -1) { if (close(urandom_fd) == -1) @@ -458,11 +459,19 @@ set_cmd_args(int argc, char *argv[]) mac_str = rmac; cmd_index = CMD_SETMAC; } else if (valid_command(cmd_index) && argc >= 4) { - /* - * User-supplied partnum. - * Example: ./nvmutil gbe.bin copy 0 - */ - part = conv_argv_part_num(argv[3]); + if (command[cmd_index].arg_part) { + /* + * User-supplied partnum. + * Example: ./nvmutil gbe.bin copy 0 + */ + part = conv_argv_part_num(argv[3]); + } else { + err(ECANCELED, "Bad command: %s %s", + argv[2], argv[3]); + } + } else if (valid_command(cmd_index) && argc >= 3) { + if (cmd_index == CMD_SETMAC) + mac_str = rmac; } /* -- cgit v1.2.1