bianbu-linux-6.6/tools/bpf/bpftool
Manu Bretelle d55dfe587b bpftool: Remove BPF_OBJ_NAME_LEN restriction when looking up bpf program by name
bpftool was limiting the length of names to BPF_OBJ_NAME_LEN in prog_parse
fds.

Since commit b662000aff ("bpftool: Adding support for BTF program names")
we can get the full program name from BTF.

This patch removes the restriction of name length when running `bpftool
prog show name ${name}`.

Test:
Tested against some internal program names that were longer than
`BPF_OBJ_NAME_LEN`, here a redacted example of what was ran to test.

    # previous behaviour
    $ sudo bpftool prog show name some_long_program_name
    Error: can't parse name
    # with the patch
    $ sudo ./bpftool prog show name some_long_program_name
    123456789: tracing  name some_long_program_name  tag taghexa  gpl ....
    ...
    ...
    ...
    # too long
    sudo ./bpftool prog show name $(python3 -c 'print("A"*128)')
    Error: can't parse name
    # not too long but no match
    $ sudo ./bpftool prog show name $(python3 -c 'print("A"*127)')

Signed-off-by: Manu Bretelle <chantr4@gmail.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Tested-by: Jiri Olsa <jolsa@kernel.org>
Reviewed-by: Quentin Monnet <quentin@isovalent.com>
Link: https://lore.kernel.org/bpf/20220801132409.4147849-1-chantr4@gmail.com
2022-08-04 14:41:13 -07:00
..
bash-completion bpftool: Rename "bpftool feature list" into "... feature list_builtins" 2022-07-05 11:53:54 +02:00
Documentation bpftool: Rename "bpftool feature list" into "... feature list_builtins" 2022-07-05 11:53:54 +02:00
skeleton bpftool: Add bpf_cookie to link output 2022-03-15 15:07:27 -07:00
.gitignore bpftool: Fix SPDX tag for Makefiles and .gitignore 2021-11-10 09:00:52 -08:00
btf.c bpftool: Add btf enum64 support 2022-06-07 10:20:43 -07:00
btf_dumper.c bpftool: Add btf enum64 support 2022-06-07 10:20:43 -07:00
cfg.c tools, bpftool: Poison and replace kernel integer typedefs 2020-05-11 21:20:46 +02:00
cfg.h tools: bpftool: replace Netronome boilerplate with SPDX license headers 2018-12-13 12:08:44 +01:00
cgroup.c bpftool: implement cgroup tree for BPF_LSM_CGROUP 2022-06-29 13:21:52 -07:00
common.c bpftool: Remove BPF_OBJ_NAME_LEN restriction when looking up bpf program by name 2022-08-04 14:41:13 -07:00
feature.c bpftool: Rename "bpftool feature list" into "... feature list_builtins" 2022-07-05 11:53:54 +02:00
gen.c bpftool: Don't try to return value from void function in skeleton 2022-07-29 10:43:14 -07:00
iter.c bpftool: Use libbpf_get_error() to check error 2021-11-14 18:38:13 -08:00
jit_disasm.c bpftool: Properly close va_list 'ap' by va_end() on error 2021-07-06 09:19:23 +02:00
json_writer.c bpftool: Support dumping metadata 2020-09-15 18:28:27 -07:00
json_writer.h bpftool: Support dumping metadata 2020-09-15 18:28:27 -07:00
link.c bpftool: Use libbpf_bpf_link_type_str 2022-06-02 16:26:38 -07:00
main.c bpftool: Do not check return value from libbpf_set_strict_mode() 2022-06-14 22:18:56 +02:00
main.h bpftool: Remove attach_type_name forward declaration 2022-06-30 16:11:20 +02:00
Makefile bpftool: Remove zlib feature test from Makefile 2022-07-05 22:31:17 -07:00
map.c Revert "bpftool: Use libbpf 1.0 API mode instead of RLIMIT_MEMLOCK" 2022-06-14 22:18:06 +02:00
map_perf_ring.c bpftool: Update btf_dump__new() and perf_buffer__new_raw() calls 2021-11-11 16:54:06 -08:00
net.c bpftool: use new API for attaching XDP program 2022-01-20 21:22:02 -08:00
netlink_dumper.c bpftool: Use consistent include paths for libbpf 2020-01-20 16:37:45 -08:00
netlink_dumper.h tools: bpftool: dual license all files 2018-12-13 12:08:44 +01:00
perf.c bpftool, musl compat: Replace nftw with FTW_ACTIONRETVAL 2022-04-25 23:24:16 +02:00
pids.c Revert "bpftool: Use libbpf 1.0 API mode instead of RLIMIT_MEMLOCK" 2022-06-14 22:18:06 +02:00
prog.c bpftool: Replace sizeof(arr)/sizeof(arr[0]) with ARRAY_SIZE macro 2022-07-29 10:40:51 -07:00
struct_ops.c Revert "bpftool: Use libbpf 1.0 API mode instead of RLIMIT_MEMLOCK" 2022-06-14 22:18:06 +02:00
tracelog.c bpftool, musl compat: Replace sys/fcntl.h by fcntl.h 2022-04-25 23:24:28 +02:00
xlated_dumper.c bpftool: Remove usage of reallocarray() 2022-02-23 13:55:01 -08:00
xlated_dumper.h tools: bpftool: replace Netronome boilerplate with SPDX license headers 2018-12-13 12:08:44 +01:00