Message ID | 20201027233646.3434896-1-irogers@google.com |
---|---|
State | Not Applicable |
Delegated to: | BPF Maintainers |
Headers | show |
Series | [1/2] tools, bpftool: Avoid array index warnings. | expand |
Context | Check | Description |
---|---|---|
jkicinski/cover_letter | success | Link |
jkicinski/fixes_present | success | Link |
jkicinski/patch_count | success | Link |
jkicinski/tree_selection | success | Guessed tree name to be net-next |
jkicinski/subject_prefix | success | Link |
jkicinski/source_inline | success | Was 0 now: 0 |
jkicinski/verify_signedoff | success | Link |
jkicinski/module_param | success | Was 0 now: 0 |
jkicinski/build_32bit | fail | Errors and warnings before: 4 this patch: 4 |
jkicinski/kdoc | success | Errors and warnings before: 0 this patch: 0 |
jkicinski/verify_fixes | success | Link |
jkicinski/checkpatch | fail | Link |
jkicinski/build_allmodconfig_warn | success | Errors and warnings before: 0 this patch: 0 |
jkicinski/header_inline | success | Link |
jkicinski/stable | success | Stable not CCed |
On Tue, Oct 27, 2020 at 4:37 PM Ian Rogers <irogers@google.com> wrote: > > The bpf_caps array is shorter without CAP_BPF, avoid out of bounds reads > if this isn't defined. Working around this avoids -Wno-array-bounds with > clang. > > Signed-off-by: Ian Rogers <irogers@google.com> > --- Acked-by: Andrii Nakryiko <andrii@kernel.org> > tools/bpf/bpftool/feature.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/tools/bpf/bpftool/feature.c b/tools/bpf/bpftool/feature.c > index a43a6f10b564..359960a8f1de 100644 > --- a/tools/bpf/bpftool/feature.c > +++ b/tools/bpf/bpftool/feature.c > @@ -843,9 +843,14 @@ static int handle_perms(void) > else > p_err("missing %s%s%s%s%s%s%s%srequired for full feature probing; run as root or use 'unprivileged'", > capability_msg(bpf_caps, 0), > +#ifdef CAP_BPF > capability_msg(bpf_caps, 1), > capability_msg(bpf_caps, 2), > - capability_msg(bpf_caps, 3)); > + capability_msg(bpf_caps, 3) > +#else > + "", "", "", "", "", "" > +#endif /* CAP_BPF */ > + ); > goto exit_free; > } > > -- > 2.29.0.rc2.309.g374f81d7ae-goog >
On 2020-10-28 at 00:36:45 +0100, Ian Rogers <irogers@google.com> wrote: > The bpf_caps array is shorter without CAP_BPF, avoid out of bounds reads > if this isn't defined. Working around this avoids -Wno-array-bounds with > clang. > > Signed-off-by: Ian Rogers <irogers@google.com> Reviewed-by: Tobias Klauser <tklauser@distanz.ch>
diff --git a/tools/bpf/bpftool/feature.c b/tools/bpf/bpftool/feature.c index a43a6f10b564..359960a8f1de 100644 --- a/tools/bpf/bpftool/feature.c +++ b/tools/bpf/bpftool/feature.c @@ -843,9 +843,14 @@ static int handle_perms(void) else p_err("missing %s%s%s%s%s%s%s%srequired for full feature probing; run as root or use 'unprivileged'", capability_msg(bpf_caps, 0), +#ifdef CAP_BPF capability_msg(bpf_caps, 1), capability_msg(bpf_caps, 2), - capability_msg(bpf_caps, 3)); + capability_msg(bpf_caps, 3) +#else + "", "", "", "", "", "" +#endif /* CAP_BPF */ + ); goto exit_free; }
The bpf_caps array is shorter without CAP_BPF, avoid out of bounds reads if this isn't defined. Working around this avoids -Wno-array-bounds with clang. Signed-off-by: Ian Rogers <irogers@google.com> --- tools/bpf/bpftool/feature.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)