Commit 151f7442 authored by Geliang Tang's avatar Geliang Tang Committed by Martin KaFai Lau

selftests/bpf: Fix a fd leak in error paths in open_netns

As Martin mentioned in review comment, there is an existing bug that
orig_netns_fd will be leaked in the later "goto fail;" case after
open("/proc/self/ns/net") in open_netns() in network_helpers.c. This
patch adds "close(token->orig_netns_fd);" before "free(token);" to
fix it.

Fixes: a3033884 ("selftests/bpf: Move open_netns() and close_netns() into network_helpers.c")
Signed-off-by: default avatarGeliang Tang <tanggeliang@kylinos.cn>
Link: https://lore.kernel.org/r/a104040b47c3c34c67f3f125cdfdde244a870d3c.1713868264.git.tanggeliang@kylinos.cnSigned-off-by: default avatarMartin KaFai Lau <martin.lau@kernel.org>
parent 55d30cc9
...@@ -478,6 +478,8 @@ struct nstoken *open_netns(const char *name) ...@@ -478,6 +478,8 @@ struct nstoken *open_netns(const char *name)
return token; return token;
fail: fail:
if (token->orig_netns_fd != -1)
close(token->orig_netns_fd);
free(token); free(token);
return NULL; return NULL;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment