[PATCH v1] app/testpmd: fix dereference before null check

Ferruh Yigit ferruh.yigit at intel.com
Tue Jan 18 10:59:39 CET 2022


On 12/9/2021 4:27 PM, Sean Morrissey wrote:
> Assign 'left' variable only after null check on 'size'
> as function returns if 'size' is null.
> 
> Coverity issue: 374381
> Fixes: 169a9fed1f4 ("app/testpmd: fix hex string parser support for flow API")
> Cc: stable at dpdk.org
> Cc: wei.zhao1 at intel.com
> 
> Signed-off-by: Sean Morrissey <sean.morrissey at intel.com>
> ---
>   app/test-pmd/cmdline_flow.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
> index bbe3dc0115..5bb7abcced 100644
> --- a/app/test-pmd/cmdline_flow.c
> +++ b/app/test-pmd/cmdline_flow.c
> @@ -7702,7 +7702,6 @@ parse_string(struct context *ctx, const struct token *token,
>   static int
>   parse_hex_string(const char *src, uint8_t *dst, uint32_t *size)
>   {
> -	uint32_t left = *size;
>   	const uint8_t *head = dst;
>   
>   	/* Check input parameters */
> @@ -7712,6 +7711,8 @@ parse_hex_string(const char *src, uint8_t *dst, uint32_t *size)
>   		(*size == 0))
>   		return -1;
>   
> +	uint32_t left = *size;
> +

Hi Sean,

Change looks good but can you please move variable declaration to the beginning
of the scope, like:

   uint32_t left;

   <null checks>

   left = *size;


With above change,
Reviewed-by: Ferruh Yigit <ferruh.yigit at intel.com>

Please keep the tag in next version.


More information about the dev mailing list