diff options
author | hrs <hrs@FreeBSD.org> | 2015-07-23 19:58:56 +0000 |
---|---|---|
committer | hrs <hrs@FreeBSD.org> | 2015-07-23 19:58:56 +0000 |
commit | b037e0b55c16f636335c9ca9e8b9c8eccff3becf (patch) | |
tree | 05fef495ac36b386126333d0eaf5d796af098e0d /sys/netinet6 | |
parent | 123cf5c769836859569e81e835ffd3506691c4b4 (diff) | |
download | FreeBSD-src-b037e0b55c16f636335c9ca9e8b9c8eccff3becf.zip FreeBSD-src-b037e0b55c16f636335c9ca9e8b9c8eccff3becf.tar.gz |
MFC r282805:
- Remove ND6_IFF_IGNORELOOP. This functionality was useless in practice
because a link where looped back NS messages are permanently observed
does not work with either NDP or ARP for IPv4.
- draft-ietf-6man-enhanced-dad is now RFC 7527.
Approved by: re (gjb)
Diffstat (limited to 'sys/netinet6')
-rw-r--r-- | sys/netinet6/nd6.h | 3 | ||||
-rw-r--r-- | sys/netinet6/nd6_nbr.c | 17 |
2 files changed, 4 insertions, 16 deletions
diff --git a/sys/netinet6/nd6.h b/sys/netinet6/nd6.h index d664a94..7a83681 100644 --- a/sys/netinet6/nd6.h +++ b/sys/netinet6/nd6.h @@ -87,8 +87,7 @@ struct nd_ifinfo { #define ND6_IFF_AUTO_LINKLOCAL 0x20 #define ND6_IFF_NO_RADR 0x40 #define ND6_IFF_NO_PREFER_IFACE 0x80 /* XXX: not related to ND. */ -#define ND6_IFF_IGNORELOOP 0x100 -#define ND6_IFF_NO_DAD 0x200 +#define ND6_IFF_NO_DAD 0x100 #define ND6_CREATE LLE_CREATE #define ND6_EXCLUSIVE LLE_EXCLUSIVE diff --git a/sys/netinet6/nd6_nbr.c b/sys/netinet6/nd6_nbr.c index d5f40f9..2272cd0 100644 --- a/sys/netinet6/nd6_nbr.c +++ b/sys/netinet6/nd6_nbr.c @@ -1450,10 +1450,9 @@ nd6_dad_timer(struct dadq *dp) dp->dad_ns_lcount > 0 && dp->dad_ns_lcount > dp->dad_loopbackprobe) { /* - * A looped back probe is detected, - * Sec. 4.1 in draft-ietf-6man-enhanced-dad-13 - * requires transmission of additional probes until - * the loopback condition becomes clear. + * Sec. 4.1 in RFC 7527 requires transmission of + * additional probes until the loopback condition + * becomes clear when a looped back probe is detected. */ log(LOG_ERR, "%s: a looped back NS message is " "detected during DAD for %s. " @@ -1462,16 +1461,6 @@ nd6_dad_timer(struct dadq *dp) ip6_sprintf(ip6buf, IFA_IN6(ifa))); dp->dad_loopbackprobe = dp->dad_ns_lcount; /* - * An interface with IGNORELOOP is one which a - * loopback is permanently expected while regular - * traffic works. In that case, stop DAD after - * MAX_MULTICAST_SOLICIT number of NS messages - * regardless of the number of received loopback NS - * by increasing dad_loopbackprobe in advance. - */ - if (ND_IFINFO(ifa->ifa_ifp)->flags & ND6_IFF_IGNORELOOP) - dp->dad_loopbackprobe += V_nd6_mmaxtries; - /* * Send an NS immediately and increase dad_count by * V_nd6_mmaxtries - 1. */ |