summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNaveen Kumar Chaudhary <[email protected]>2026-06-26 09:19:18 +0530
committerTom Rini <[email protected]>2026-07-10 15:52:36 -0600
commitbd93d8ea10ec94183fece63fe18b9ead91b8ed67 (patch)
tree15f467ffbe1514ddef309ee2df54268e93f0a936
parentb81e716b263479e7e2194f9a2df3c04c83307545 (diff)
cmd: upl: fix off-by-one argc check in do_upl_read
do_upl_read() guards against missing arguments with "argc < 1", but argc always counts argv[0] (the command name) so that condition is never true. The function then unconditionally dereferences argv[1], which is out of bounds when the user runs "upl read" with no address argument and feeds garbage into hextoul()/map_sysmem(). Use "argc < 2" so the address argument is actually required. Fixes: 264f4b0b34c ("upl: Add a command") Signed-off-by: Naveen Kumar Chaudhary <[email protected]>
-rw-r--r--cmd/upl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/cmd/upl.c b/cmd/upl.c
index ef2183d8528..be21ec258cb 100644
--- a/cmd/upl.c
+++ b/cmd/upl.c
@@ -93,7 +93,7 @@ static int do_upl_read(struct cmd_tbl *cmdtp, int flag, int argc,
ulong addr;
int ret;
- if (argc < 1)
+ if (argc < 2)
return CMD_RET_USAGE;
addr = hextoul(argv[1], NULL);