]> git.sur5r.net Git - u-boot/commitdiff
efi_loader: catch misspelled bootefi subcommand
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 24 Jan 2018 19:33:54 +0000 (20:33 +0100)
committerAlexander Graf <agraf@suse.de>
Sun, 28 Jan 2018 20:37:13 +0000 (21:37 +0100)
If 'bootefi hello' or 'bootefi selftest' can be executed depends on the
configuration.

If an invalid non-numeric 1st argument is passed to bootefi, e.g.
'bootefi hola', this string is converted to 0 and U-Boot jumps to
this typically invalid address.

With the patch the online help is shown instead.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
cmd/bootefi.c

index 545cfecc12b0e52ad8e2fd0852e6d01e3806e64a..4233d36b72288c7fb611826aacc65eff2892693a 100644 (file)
@@ -373,6 +373,9 @@ static int do_bootefi(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
                saddr = argv[1];
 
                addr = simple_strtoul(saddr, NULL, 16);
+               /* Check that a numeric value was passed */
+               if (!addr && *saddr != '0')
+                       return CMD_RET_USAGE;
 
                if (argc > 2) {
                        sfdt = argv[2];