]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
rtnetlink: Fail dump if target netnsid is invalid
authorDavid Ahern <dsahern@gmail.com>
Fri, 28 Sep 2018 19:28:41 +0000 (12:28 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 2 Oct 2018 06:22:04 +0000 (23:22 -0700)
Link dumps can return results from a target namespace. If the namespace id
is invalid, then the dump request should fail if get_target_net fails
rather than continuing with a dump of the current namespace.

Fixes: 79e1ad148c844 ("rtnetlink: use netnsid to query interface")
Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/rtnetlink.c

index 63ce2283a456a4aeabf3c10b681fe63195209101..7f37fe9c65a5490c621874607f6a1c2fc32e36dd 100644 (file)
@@ -1898,10 +1898,8 @@ static int rtnl_dump_ifinfo(struct sk_buff *skb, struct netlink_callback *cb)
                if (tb[IFLA_IF_NETNSID]) {
                        netnsid = nla_get_s32(tb[IFLA_IF_NETNSID]);
                        tgt_net = get_target_net(skb->sk, netnsid);
-                       if (IS_ERR(tgt_net)) {
-                               tgt_net = net;
-                               netnsid = -1;
-                       }
+                       if (IS_ERR(tgt_net))
+                               return PTR_ERR(tgt_net);
                }
 
                if (tb[IFLA_EXT_MASK])