[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>
This commit is contained in:
committed by
David S. Miller
parent
b854272b3c
commit
97c53cacf0
@ -2230,7 +2230,7 @@ static int inet6_rtm_getroute(struct sk_buff *in_skb, struct nlmsghdr* nlh, void
|
||||
goto errout;
|
||||
}
|
||||
|
||||
err = rtnl_unicast(skb, NETLINK_CB(in_skb).pid);
|
||||
err = rtnl_unicast(skb, &init_net, NETLINK_CB(in_skb).pid);
|
||||
errout:
|
||||
return err;
|
||||
}
|
||||
@ -2260,10 +2260,10 @@ void inet6_rt_notify(int event, struct rt6_info *rt, struct nl_info *info)
|
||||
kfree_skb(skb);
|
||||
goto errout;
|
||||
}
|
||||
err = rtnl_notify(skb, pid, RTNLGRP_IPV6_ROUTE, nlh, gfp_any());
|
||||
err = rtnl_notify(skb, &init_net, pid, RTNLGRP_IPV6_ROUTE, nlh, gfp_any());
|
||||
errout:
|
||||
if (err < 0)
|
||||
rtnl_set_sk_err(RTNLGRP_IPV6_ROUTE, err);
|
||||
rtnl_set_sk_err(&init_net, RTNLGRP_IPV6_ROUTE, err);
|
||||
}
|
||||
|
||||
/*
|
||||
|
Reference in New Issue
Block a user