]> git.neil.brown.name Git - history.git/commit
[IPV6]: Add and use new 'strict' parameter to ip6_chk_addr().
authorVille Nuorvala <vnourval@tcs.hut.fi>
Wed, 21 Jan 2004 14:38:52 +0000 (06:38 -0800)
committerLinus Torvalds <torvalds@home.osdl.org>
Wed, 21 Jan 2004 14:38:52 +0000 (06:38 -0800)
commitfd9f19346bcca2d68514c31aa0cf7428c4d6b39d
treeda86a4fba39005f02768d33f7487c287638a3b99
parent6716de099817112470bdcf5b689868ad167721cc
[IPV6]: Add and use new 'strict' parameter to ip6_chk_addr().

RFC 2461 requires that the source address of Neighbor Discovery messages
is an address assigned to the sending interface.

Duplicate Address Detection should also be interface specific. We don't,
for example, want a node to DoS itself just because it has two interfaces
on the same link and both happen to listen to the same multicast group. If
there is a true duplicate on the link, the interface doing DAD will notice
it anyway.

The attached patch adds a 'strict' parameter to ip6_chk_addr() and
ip6_get_ifaddr() to allow link-local protocols like ND and DAD to do
strict address checks even on addresses with greater scope than
link-local.
include/net/addrconf.h
net/ipv6/addrconf.c
net/ipv6/af_inet6.c
net/ipv6/anycast.c
net/ipv6/datagram.c
net/ipv6/icmp.c
net/ipv6/ip6_tunnel.c
net/ipv6/ndisc.c
net/ipv6/raw.c
net/sctp/ipv6.c