On 08/06/16 00:00, Stuart Henderson wrote:
> An update on this.
> 
> Looking at flags after a hint from phrased - they're not setting the
> on-link flag (intentionally, to prevent flooding multicast NDs over the
> wlan, which makes sense) so it's hitting the XXX case in nd6_rtr.c which
> replaces lifetimes with 0.

But since Nov 2000, IPv6 autoconf address deletion is independent from
prefix lifetimes.  So I believe this check can go.


Index: netinet6/nd6_rtr.c
===================================================================
RCS file: /cvs/src/sys/netinet6/nd6_rtr.c,v
retrieving revision 1.140
diff -u -p -r1.140 nd6_rtr.c
--- netinet6/nd6_rtr.c	5 Jul 2016 10:17:14 -0000	1.140
+++ netinet6/nd6_rtr.c	8 Aug 2016 10:33:02 -0000
@@ -1249,19 +1249,6 @@ prelist_update(struct nd_prefix *new, st
 			goto end; /* we should just give up in this case. */
 		}
 
-		/*
-		 * XXX: from the ND point of view, we can ignore a prefix
-		 * with the on-link bit being zero.  However, we need a
-		 * prefix structure for references from autoconfigured
-		 * addresses.  Thus, we explicitly make sure that the prefix
-		 * itself expires now.
-		 */
-		if (newpr->ndpr_raf_onlink == 0) {
-			newpr->ndpr_vltime = 0;
-			newpr->ndpr_pltime = 0;
-			in6_init_prefix_ltimes(newpr);
-		}
-
 		pr = newpr;
 	}
 

Reply via email to