diff mbox series

tools/bpftool: silence a static check warning

Message ID 20180115081547.bf2u3aqitnm3bmtl@mwanda
State Changes Requested, archived
Delegated to: BPF Maintainers
Headers show
Series tools/bpftool: silence a static check warning | expand

Commit Message

Dan Carpenter Jan. 15, 2018, 8:15 a.m. UTC
There is a static checker warning that proglen has an upper bound but no
lower bound.  The allocation will just fail harmlessly so it's not a big
deal.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

Comments

Daniel Borkmann Jan. 15, 2018, 10:35 a.m. UTC | #1
Hi Dan,

On 01/15/2018 09:15 AM, Dan Carpenter wrote:
> There is a static checker warning that proglen has an upper bound but no
> lower bound.  The allocation will just fail harmlessly so it's not a big
> deal.
> 
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> 
> diff --git a/tools/bpf/bpf_jit_disasm.c b/tools/bpf/bpf_jit_disasm.c
> index 30044bc4f389..2d7bb5dc0b8c 100644
> --- a/tools/bpf/bpf_jit_disasm.c
> +++ b/tools/bpf/bpf_jit_disasm.c
> @@ -205,7 +205,7 @@ static uint8_t *get_last_jit_image(char *haystack, size_t hlen,
>  		regfree(&regex);
>  		return NULL;
>  	}
> -	if (proglen > 1000000) {
> +	if (proglen < 0 || proglen > 1000000) {

Could you just change proglen into unsigned? It's parsing the bpf_jit_dump()
and there we use proglen=%u anyway.

>  		printf("proglen of %d too big, stopping\n", proglen);
>  		return NULL;
>  	}
> 

Thanks,
Daniel
diff mbox series

Patch

diff --git a/tools/bpf/bpf_jit_disasm.c b/tools/bpf/bpf_jit_disasm.c
index 30044bc4f389..2d7bb5dc0b8c 100644
--- a/tools/bpf/bpf_jit_disasm.c
+++ b/tools/bpf/bpf_jit_disasm.c
@@ -205,7 +205,7 @@  static uint8_t *get_last_jit_image(char *haystack, size_t hlen,
 		regfree(&regex);
 		return NULL;
 	}
-	if (proglen > 1000000) {
+	if (proglen < 0 || proglen > 1000000) {
 		printf("proglen of %d too big, stopping\n", proglen);
 		return NULL;
 	}