ipv6: Do not assign non-valid address on interface.
authorYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Wed, 25 Jun 2008 07:26:47 +0000 (16:26 +0900)
committerYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Thu, 3 Jul 2008 08:51:55 +0000 (17:51 +0900)
commitd68b82705a4a754e5773f412c6b8f1e65259bc8b
tree3bd32bb16b1e462d9c8be37f3b60ca2ec346d003
parentb4653e99450693b75a3c6c8ff4f070164f12815e
ipv6: Do not assign non-valid address on interface.

Check the type of the address when adding a new one on interface.
- the unspecified address (::) is always disallowed (RFC4291 2.5.2)
- the loopback address is disallowed unless the interface is (one of)
  loopback (RFC4291 2.5.3).
- multicast addresses are disallowed.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
net/ipv6/addrconf.c