Messages in this thread | | | Date | Mon, 14 Nov 2022 09:25:21 -0800 | Subject | Re: [PATCH bpf-next 1/2] bpftool: Use strcmp() instead of is_prefix() to check parameters | From | sdf@google ... |
| |
On 11/14, Tiezhu Yang wrote: > In the current code, the parameters check of bpftool seems not correct, > for example, "bpftool batch file FILE" is the expected command format, > but "bpftool b f FILE" is recognized as valid, so use strcmp() instead > of is_prefix() to check parameters.
That's by design and is similar to what iproute2 commands are doing.
> Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> > --- > tools/bpf/bpftool/main.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-)
> diff --git a/tools/bpf/bpftool/main.c b/tools/bpf/bpftool/main.c > index 741e50e..4ef87c2 100644 > --- a/tools/bpf/bpftool/main.c > +++ b/tools/bpf/bpftool/main.c > @@ -200,7 +200,7 @@ int cmd_select(const struct cmd *cmds, int argc, char > **argv, > return cmds[0].func(argc, argv);
> for (i = 0; cmds[i].cmd; i++) { > - if (is_prefix(*argv, cmds[i].cmd)) { > + if (!strcmp(*argv, cmds[i].cmd)) { > if (!cmds[i].func) { > p_err("command '%s' is not supported in bootstrap mode", > cmds[i].cmd); > @@ -337,7 +337,7 @@ static int do_batch(int argc, char **argv) > if (argc < 2) { > p_err("too few parameters for batch"); > return -1; > - } else if (!is_prefix(*argv, "file")) { > + } else if (strcmp(*argv, "file")) { > p_err("expected 'file', got: %s", *argv); > return -1; > } else if (argc > 2) { > -- > 2.1.0
| |