diff options
author | Daniel Lezcano <dlezcano@fr.ibm.com> | 2008-03-04 16:47:14 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-03-04 16:47:14 -0500 |
commit | 7b4da53229bb61469bdab321384b9a13406e3485 (patch) | |
tree | e2d067ffbbcabaa511b092ac8a9abf7affc40b79 | |
parent | efa2cea0d97a91dbbc067463de702738f7e50748 (diff) |
[NETNS][IPV6] route6 - Pass the network namespace parameter to rt6_purge_dflt_routers
Add a network namespace parameter to rt6_purge_dflt_routers. This is
needed to call fib6_get_table with the appropriate network namespace.
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
Signed-off-by: Benjamin Thery <benjamin.thery@bull.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | include/net/ip6_route.h | 2 | ||||
-rw-r--r-- | net/ipv6/addrconf.c | 2 | ||||
-rw-r--r-- | net/ipv6/route.c | 4 |
3 files changed, 4 insertions, 4 deletions
diff --git a/include/net/ip6_route.h b/include/net/ip6_route.h index 92004c5160c7..1444d358836d 100644 --- a/include/net/ip6_route.h +++ b/include/net/ip6_route.h | |||
@@ -95,7 +95,7 @@ extern struct rt6_info * rt6_add_dflt_router(struct in6_addr *gwaddr, | |||
95 | struct net_device *dev, | 95 | struct net_device *dev, |
96 | unsigned int pref); | 96 | unsigned int pref); |
97 | 97 | ||
98 | extern void rt6_purge_dflt_routers(void); | 98 | extern void rt6_purge_dflt_routers(struct net *net); |
99 | 99 | ||
100 | extern int rt6_route_rcv(struct net_device *dev, | 100 | extern int rt6_route_rcv(struct net_device *dev, |
101 | u8 *opt, int len, | 101 | u8 *opt, int len, |
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 9d894e8c7b72..b37ae421b61b 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
@@ -493,7 +493,7 @@ static void addrconf_fixup_forwarding(struct ctl_table *table, int *p, int old) | |||
493 | dev_forward_change((struct inet6_dev *)table->extra1); | 493 | dev_forward_change((struct inet6_dev *)table->extra1); |
494 | 494 | ||
495 | if (*p) | 495 | if (*p) |
496 | rt6_purge_dflt_routers(); | 496 | rt6_purge_dflt_routers(net); |
497 | } | 497 | } |
498 | #endif | 498 | #endif |
499 | 499 | ||
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index 4278cec522c5..ad3d684e544a 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c | |||
@@ -1697,13 +1697,13 @@ struct rt6_info *rt6_add_dflt_router(struct in6_addr *gwaddr, | |||
1697 | return rt6_get_dflt_router(gwaddr, dev); | 1697 | return rt6_get_dflt_router(gwaddr, dev); |
1698 | } | 1698 | } |
1699 | 1699 | ||
1700 | void rt6_purge_dflt_routers(void) | 1700 | void rt6_purge_dflt_routers(struct net *net) |
1701 | { | 1701 | { |
1702 | struct rt6_info *rt; | 1702 | struct rt6_info *rt; |
1703 | struct fib6_table *table; | 1703 | struct fib6_table *table; |
1704 | 1704 | ||
1705 | /* NOTE: Keep consistent with rt6_get_dflt_router */ | 1705 | /* NOTE: Keep consistent with rt6_get_dflt_router */ |
1706 | table = fib6_get_table(&init_net, RT6_TABLE_DFLT); | 1706 | table = fib6_get_table(net, RT6_TABLE_DFLT); |
1707 | if (table == NULL) | 1707 | if (table == NULL) |
1708 | return; | 1708 | return; |
1709 | 1709 | ||