Author: hrs
Date: Thu Jul 23 19:58:56 2015
New Revision: 285825
URL: https://svnweb.freebsd.org/changeset/base/285825

Log:
  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)

Modified:
  stable/10/sbin/ifconfig/af_inet6.c
  stable/10/sbin/ifconfig/ifconfig.8
  stable/10/sys/netinet6/nd6.h
  stable/10/sys/netinet6/nd6_nbr.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sbin/ifconfig/af_inet6.c
==============================================================================
--- stable/10/sbin/ifconfig/af_inet6.c  Thu Jul 23 19:57:47 2015        
(r285824)
+++ stable/10/sbin/ifconfig/af_inet6.c  Thu Jul 23 19:58:56 2015        
(r285825)
@@ -485,8 +485,6 @@ static struct cmd inet6_cmds[] = {
        DEF_CMD("-no_prefer_iface",-ND6_IFF_NO_PREFER_IFACE,setnd6flags),
        DEF_CMD("no_dad",       ND6_IFF_NO_DAD,         setnd6flags),
        DEF_CMD("-no_dad",      -ND6_IFF_NO_DAD,        setnd6flags),
-       DEF_CMD("ignoreloop",   ND6_IFF_IGNORELOOP,     setnd6flags),
-       DEF_CMD("-ignoreloop",  -ND6_IFF_IGNORELOOP,    setnd6flags),
        DEF_CMD_ARG("pltime",                           setip6pltime),
        DEF_CMD_ARG("vltime",                           setip6vltime),
        DEF_CMD("eui64",        0,                      setip6eui64),

Modified: stable/10/sbin/ifconfig/ifconfig.8
==============================================================================
--- stable/10/sbin/ifconfig/ifconfig.8  Thu Jul 23 19:57:47 2015        
(r285824)
+++ stable/10/sbin/ifconfig/ifconfig.8  Thu Jul 23 19:58:56 2015        
(r285825)
@@ -28,7 +28,7 @@
 .\"     From: @(#)ifconfig.8   8.3 (Berkeley) 1/5/94
 .\" $FreeBSD$
 .\"
-.Dd May 15, 2015
+.Dd July 24, 2015
 .Dt IFCONFIG 8
 .Os
 .Sh NAME
@@ -749,15 +749,6 @@ Set a flag to disable Duplicate Address 
 .It Cm -no_dad
 Clear a flag
 .Cm no_dad .
-.It Cm ignoreloop
-Set a flag to disable loopback detection in Enhanced Duplicate Address
-Detection Algorithm.
-When this flag is set,
-Duplicate Address Detection will stop in a finite number of probings
-even if a loopback configuration is detected.
-.It Cm -ignoreloop
-Clear a flag
-.Cm ignoreloop .
 .El
 .Pp
 The following parameters are specific for IPv6 addresses.

Modified: stable/10/sys/netinet6/nd6.h
==============================================================================
--- stable/10/sys/netinet6/nd6.h        Thu Jul 23 19:57:47 2015        
(r285824)
+++ stable/10/sys/netinet6/nd6.h        Thu Jul 23 19:58:56 2015        
(r285825)
@@ -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

Modified: stable/10/sys/netinet6/nd6_nbr.c
==============================================================================
--- stable/10/sys/netinet6/nd6_nbr.c    Thu Jul 23 19:57:47 2015        
(r285824)
+++ stable/10/sys/netinet6/nd6_nbr.c    Thu Jul 23 19:58:56 2015        
(r285825)
@@ -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.
                         */
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to