cmd: fdt: Check argc before accessing argv in fdt bootcpu

On case 'fdt bootcpu' is invoked without parameters, argv[2] is not
valid and this command would SEGFAULT in sandbox environment. Add
missing argc test to avoid the crash and rather print usage help
message.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Marek Vasut
2023-03-09 08:50:47 -08:00
committed by Simon Glass
parent 7a5aa5c14e
commit c8786b6db6
+6 -1
View File
@@ -597,7 +597,12 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
* Set boot cpu id
*/
} else if (strncmp(argv[1], "boo", 3) == 0) {
unsigned long tmp = hextoul(argv[2], NULL);
unsigned long tmp;
if (argc != 3)
return CMD_RET_USAGE;
tmp = hextoul(argv[2], NULL);
fdt_set_boot_cpuid_phys(working_fdt, tmp);
/*