diff options
author | Hannes Frederic Sowa <hannes@stressinduktion.org> | 2013-06-23 18:22:20 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-06-25 19:23:03 -0400 |
commit | 876fd05ddbae03166e7037fca957b55bb3be6594 (patch) | |
tree | 2af566a9eff0251a814aa23c0ba854e2f1a8754e /net/ipv6/addrconf.c | |
parent | b7b1bfce0bb68bd8f6e62a28295922785cc63781 (diff) |
ipv6: don't disable interface if last ipv6 address is removed
The reason behind this change is that as soon as we delete
the last ipv6 address of an interface we also lose the
/proc/sys/net/ipv6/conf/<interface> directory. This seems to be a
usability problem for me.
I don't see any reason why we should shutdown ipv6 on that interface in
such cases.
Cc: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/addrconf.c')
-rw-r--r-- | net/ipv6/addrconf.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index c06bc76280b2..e799a8838ed0 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
@@ -2507,12 +2507,6 @@ static int inet6_addr_del(struct net *net, int ifindex, const struct in6_addr *p | |||
2507 | read_unlock_bh(&idev->lock); | 2507 | read_unlock_bh(&idev->lock); |
2508 | 2508 | ||
2509 | ipv6_del_addr(ifp); | 2509 | ipv6_del_addr(ifp); |
2510 | |||
2511 | /* If the last address is deleted administratively, | ||
2512 | disable IPv6 on this interface. | ||
2513 | */ | ||
2514 | if (list_empty(&idev->addr_list)) | ||
2515 | addrconf_ifdown(idev->dev, 1); | ||
2516 | return 0; | 2510 | return 0; |
2517 | } | 2511 | } |
2518 | } | 2512 | } |