[dm-devel] [PATCH v3 13/19] multipath: fix max array size in print_cmd_valid

Martin Wilck mwilck at suse.com
Mon Oct 1 21:35:31 UTC 2018


On Fri, 2018-09-21 at 18:05 -0500, Benjamin Marzinski wrote:
> The code is attempting to verify that 0 <= k < 3
> However, sizeof(val) is 12, assuming 4 byte integers. The check needs
> to
> take integer size into account. Found by coverity.
> 
> Signed-off-by: Benjamin Marzinski <bmarzins at redhat.com>

Reviewed-by: Martin Wilck <mwilck at suse.com>

> ---
>  multipath/main.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/multipath/main.c b/multipath/main.c
> index fc5bf16..d5aad95 100644
> --- a/multipath/main.c
> +++ b/multipath/main.c
> @@ -482,7 +482,7 @@ static int print_cmd_valid(int k, const vector
> pathvec,
>  	struct timespec until;
>  	struct path *pp;
>  
> -	if (k < 0 || k >= sizeof(vals))
> +	if (k < 0 || k >= (sizeof(vals) / sizeof(int)))
>  		return 1;
>  
>  	if (k == 2) {

-- 
Dr. Martin Wilck <mwilck at suse.com>, Tel. +49 (0)911 74053 2107
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)





More information about the dm-devel mailing list