summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuslan Semchenko <uncleruc2075@gmail.com>2025-06-12 16:18:16 +0300
committerAlexei Starovoitov <ast@kernel.org>2025-06-12 19:11:13 -0700
commitaf91af33c16853c569ca814124781b849886f007 (patch)
tree3f99e1682d84180271af75b953db6a4727b2dcd6
parent0e93df45c7b45e0dd35668019ceb32cd25371715 (diff)
tools/bpf_jit_disasm: Fix potential negative tpath index in get_exec_path()
If readlink() fails, len will be -1, which can cause negative indexing and undefined behavior. This patch ensures that len is set to 0 on readlink failure, preventing such issues. Signed-off-by: Ruslan Semchenko <uncleruc2075@gmail.com> Acked-by: Daniel Borkmann <daniel@iogearbox.net> Link: https://lore.kernel.org/r/20250612131816.1870-1-uncleruc2075@gmail.com Signed-off-by: Alexei Starovoitov <ast@kernel.org>
-rw-r--r--tools/bpf/bpf_jit_disasm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/bpf/bpf_jit_disasm.c b/tools/bpf/bpf_jit_disasm.c
index 1baee9e2aba9..5ab8f80e2834 100644
--- a/tools/bpf/bpf_jit_disasm.c
+++ b/tools/bpf/bpf_jit_disasm.c
@@ -45,6 +45,8 @@ static void get_exec_path(char *tpath, size_t size)
assert(path);
len = readlink(path, tpath, size);
+ if (len < 0)
+ len = 0;
tpath[len] = 0;
free(path);