Message ID | 20230511144224.26975-1-nicolas.dichtel@6wind.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 465e87a89c134d28a7fae540d26b27e6a2e1d6c0 |
Delegated to: | Stephen Hemminger |
Headers | show |
Series | [iproute2] ipnetns: fix fd leak with 'ip netns set' | expand |
Context | Check | Description |
---|---|---|
netdev/tree_selection | success | Not a local patch |
Hello: This patch was applied to iproute2/iproute2.git (main) by Stephen Hemminger <stephen@networkplumber.org>: On Thu, 11 May 2023 16:42:24 +0200 you wrote: > There is no reason to open this netns file. set_netnsid_from_name() uses > netns_get_fd() for this purpose and uses the returned fd. > > Reported-by: Stephen Hemminger <stephen@networkplumber.org> > Fixes: d182ee1307c7 ("ipnetns: allow to get and set netns ids") > Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> > > [...] Here is the summary with links: - [iproute2] ipnetns: fix fd leak with 'ip netns set' https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?id=465e87a89c13 You are awesome, thank you!
diff --git a/ip/ipnetns.c b/ip/ipnetns.c index 1203534914fe..9d996832aef8 100644 --- a/ip/ipnetns.c +++ b/ip/ipnetns.c @@ -967,9 +967,8 @@ int set_netnsid_from_name(const char *name, int nsid) static int netns_set(int argc, char **argv) { - char netns_path[PATH_MAX]; const char *name; - int netns, nsid; + int nsid; if (argc < 1) { fprintf(stderr, "No netns name specified\n"); @@ -988,14 +987,6 @@ static int netns_set(int argc, char **argv) else if (nsid < 0) invarg("\"netnsid\" value should be >= 0", argv[1]); - snprintf(netns_path, sizeof(netns_path), "%s/%s", NETNS_RUN_DIR, name); - netns = open(netns_path, O_RDONLY | O_CLOEXEC); - if (netns < 0) { - fprintf(stderr, "Cannot open network namespace \"%s\": %s\n", - name, strerror(errno)); - return -1; - } - return set_netnsid_from_name(name, nsid); }
There is no reason to open this netns file. set_netnsid_from_name() uses netns_get_fd() for this purpose and uses the returned fd. Reported-by: Stephen Hemminger <stephen@networkplumber.org> Fixes: d182ee1307c7 ("ipnetns: allow to get and set netns ids") Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> --- ip/ipnetns.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-)