ipv6: Fix incorrect disable_ipv6 behavior
authorBrian Haley <brian.haley@hp.com>
Thu, 19 Mar 2009 01:22:48 +0000 (18:22 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 19 Mar 2009 01:22:48 +0000 (18:22 -0700)
commit9bdd8d40c8c59435664af6049dabe24b7779b203
tree9487117b9c98bcab3b0884fffa10dfbb0b01292a
parentcedc1dba74f481a632c5d5aedad0068d6ad945d8
ipv6: Fix incorrect disable_ipv6 behavior

Fix the behavior of allowing both sysctl and addrconf_dad_failure()
to set the disable_ipv6 parameter without any bad side-effects.
If DAD fails and accept_dad > 1, we will still set disable_ipv6=1,
but then instead of allowing an RA to add an address then
immediately fail DAD, we simply don't allow the address to be
added in the first place.  This also lets the user set this flag
and disable all IPv6 addresses on the interface, or on the entire
system.

Signed-off-by: Brian Haley <brian.haley@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/networking/ip-sysctl.txt
net/ipv6/addrconf.c