[U-Boot] [PATCH 06/10] dfu: Fix crash when wrong number of arguments given

Lukasz Majewski l.majewski at samsung.com
Wed Nov 28 16:17:14 CET 2012


Hi Pantelis,

> Fix obvious crash when not enough arguments are given to the dfu
> command.
> 
> Signed-off-by: Pantelis Antoniou <panto at antoniou-consulting.com>
> ---
>  common/cmd_dfu.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/common/cmd_dfu.c b/common/cmd_dfu.c
> index 327c738..83ef324 100644
> --- a/common/cmd_dfu.c
> +++ b/common/cmd_dfu.c
> @@ -50,7 +50,7 @@ static int do_dfu(cmd_tbl_t *cmdtp, int flag, int
> argc, char * const argv[]) if (ret)
>  		return CMD_RET_FAILURE;
>  
> -	if (strcmp(argv[3], "list") == 0) {
> +	if (argc > 3 && strcmp(argv[3], "list") == 0) {

I'd add the (argc > 4) to the very beginning check: 
if (argc < 3 || argc > 4)
	return CMD_RET_USAGE;

and leave below code unchanged:

if (strcmp(argv[3], "list") == 0) {
	dfu_show_entities();
	goto done;
}


>  		dfu_show_entities();
>  		goto done;
>  	}



-- 
Best regards,

Lukasz Majewski

Samsung Poland R&D Center | Linux Platform Group


More information about the U-Boot mailing list