[PATCH v2] bpftool: Fix memory leak in do_build_table_cb

From: Miaoqian Lin
Date: Tue Dec 06 2022 - 02:19:22 EST


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@xxxxxxxxx>
---
changes in v2:
- move free(path); into error branch.
---
tools/bpf/bpftool/common.c | 1 +
1 file changed, 1 insertion(+)

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;
}

--
2.25.1