summaryrefslogtreecommitdiffstats
path: root/tools/bpf
diff options
context:
space:
mode:
authorMiaoqian Lin <linmq006@gmail.com>2022-12-06 11:19:06 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-12-31 13:32:23 +0100
commit12e6772017774c46088099ce045d6bbea0da854c (patch)
tree00b535b88c0d93d78609960f03e6c86f400b8212 /tools/bpf
parentadebac5995c9f75f24ee0c32bcd5f32749ce707e (diff)
downloadlinux-stable-12e6772017774c46088099ce045d6bbea0da854c.tar.gz
linux-stable-12e6772017774c46088099ce045d6bbea0da854c.tar.bz2
linux-stable-12e6772017774c46088099ce045d6bbea0da854c.zip
bpftool: Fix memory leak in do_build_table_cb
[ Upstream commit fa55ef14ef4fe06198c0ce811b603aec24134bc2 ] strdup() allocates memory for path. We need to release the memory in the following error path. Add free() to avoid memory leak. Fixes: 8f184732b60b ("bpftool: Switch to libbpf's hashmap for pinned paths of BPF objects") Signed-off-by: Miaoqian Lin <linmq006@gmail.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Link: https://lore.kernel.org/bpf/20221206071906.806384-1-linmq006@gmail.com Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'tools/bpf')
-rw-r--r--tools/bpf/bpftool/common.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/bpf/bpftool/common.c b/tools/bpf/bpftool/common.c
index 0cdb4f711510..e7a11cff7245 100644
--- a/tools/bpf/bpftool/common.c
+++ b/tools/bpf/bpftool/common.c
@@ -499,6 +499,7 @@ static int do_build_table_cb(const char *fpath, const struct stat *sb,
if (err) {
p_err("failed to append entry to hashmap for ID %u, path '%s': %s",
pinned_info.id, path, strerror(errno));
+ free(path);
goto out_close;
}