diff options
author | Marek Vasut | 2023-03-02 04:08:19 +0100 |
---|---|---|
committer | Simon Glass | 2023-03-09 08:50:47 -0800 |
commit | 5e0462757c636745dbe16aaf72d659271595626b (patch) | |
tree | 04fe9a8075b03373e5398f46a280d187dd2d89d4 /cmd | |
parent | c8786b6db6b39771949161bf8bdd3671dae33b16 (diff) |
cmd: fdt: Check argc before accessing argv in fdt memory
On case 'fdt memory' is invoked without parameters, argv[2]/argv[3]
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>
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/fdt.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/cmd/fdt.c b/cmd/fdt.c index 734c9b36a07..f257bee8643 100644 --- a/cmd/fdt.c +++ b/cmd/fdt.c @@ -611,6 +611,10 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) } else if (strncmp(argv[1], "me", 2) == 0) { uint64_t addr, size; int err; + + if (argc != 4) + return CMD_RET_USAGE; + addr = simple_strtoull(argv[2], NULL, 16); size = simple_strtoull(argv[3], NULL, 16); err = fdt_fixup_memory(working_fdt, addr, size); |