aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv6/ndisc.c
diff options
context:
space:
mode:
authorDenis V. Lunev <den@openvz.org>2007-11-20 01:26:51 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 17:54:25 -0500
commit97c53cacf00d1f5aa04adabfebcc806ca8b22b10 (patch)
tree6b7223df312aa27a5017c4d7c4d1e500a33ed8d8 /net/ipv6/ndisc.c
parentb854272b3c732316676e9128f7b9e6f1e1ff88b0 (diff)
[NET]: Make rtnetlink infrastructure network namespace aware (v3)
After this patch none of the netlink callback support anything except the initial network namespace but the rtnetlink infrastructure now handles multiple network namespaces. Changes from v2: - IPv6 addrlabel processing Changes from v1: - no need for special rtnl_unlock handling - fixed IPv6 ndisc Signed-off-by: Denis V. Lunev <den@openvz.org> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/ndisc.c')
-rw-r--r--net/ipv6/ndisc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
index b2531f80317e..b87f9d245e2e 100644
--- a/net/ipv6/ndisc.c
+++ b/net/ipv6/ndisc.c
@@ -1049,7 +1049,8 @@ static void ndisc_ra_useropt(struct sk_buff *ra, struct nd_opt_hdr *opt)
1049 &ipv6_hdr(ra)->saddr); 1049 &ipv6_hdr(ra)->saddr);
1050 nlmsg_end(skb, nlh); 1050 nlmsg_end(skb, nlh);
1051 1051
1052 err = rtnl_notify(skb, 0, RTNLGRP_ND_USEROPT, NULL, GFP_ATOMIC); 1052 err = rtnl_notify(skb, &init_net, 0, RTNLGRP_ND_USEROPT, NULL,
1053 GFP_ATOMIC);
1053 if (err < 0) 1054 if (err < 0)
1054 goto errout; 1055 goto errout;
1055 1056
@@ -1059,7 +1060,7 @@ nla_put_failure:
1059 nlmsg_free(skb); 1060 nlmsg_free(skb);
1060 err = -EMSGSIZE; 1061 err = -EMSGSIZE;
1061errout: 1062errout:
1062 rtnl_set_sk_err(RTNLGRP_ND_USEROPT, err); 1063 rtnl_set_sk_err(&init_net, RTNLGRP_ND_USEROPT, err);
1063} 1064}
1064 1065
1065static void ndisc_router_discovery(struct sk_buff *skb) 1066static void ndisc_router_discovery(struct sk_buff *skb)