mirror of https://gitee.com/openkylin/linux.git
bpf: fix uninitialized variable in bpf tools
Here the variable cont is used as the saved_pointer for a call to
strtok_r(). It is safe to use the value uninitialized in this
context however and the later reference is only ever used if
the strtok_r is successful. But, 'gcc-5' at least doesn't have all
this knowledge so initialize cont to NULL. Additionally, do the
natural NULL check before accessing just for completness.
The warning is the following:
./bpf/tools/bpf/bpf_dbg.c: In function ‘cmd_load’:
./bpf/tools/bpf/bpf_dbg.c:1077:13: warning: ‘cont’ may be used uninitialized in this function [-Wmaybe-uninitialized]
} else if (matches(subcmd, "pcap") == 0) {
Fixes: fd981e3c32
"filter: bpf_dbg: add minimal bpf debugger"
Signed-off-by: John Fastabend <john.fastabend@gmail.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
This commit is contained in:
parent
25eb0ea717
commit
815425567d
|
@ -1063,7 +1063,7 @@ static int cmd_load_pcap(char *file)
|
|||
|
||||
static int cmd_load(char *arg)
|
||||
{
|
||||
char *subcmd, *cont, *tmp = strdup(arg);
|
||||
char *subcmd, *cont = NULL, *tmp = strdup(arg);
|
||||
int ret = CMD_OK;
|
||||
|
||||
subcmd = strtok_r(tmp, " ", &cont);
|
||||
|
@ -1073,7 +1073,10 @@ static int cmd_load(char *arg)
|
|||
bpf_reset();
|
||||
bpf_reset_breakpoints();
|
||||
|
||||
ret = cmd_load_bpf(cont);
|
||||
if (!cont)
|
||||
ret = CMD_ERR;
|
||||
else
|
||||
ret = cmd_load_bpf(cont);
|
||||
} else if (matches(subcmd, "pcap") == 0) {
|
||||
ret = cmd_load_pcap(cont);
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue