Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 30 Aug 2009 02:07:23 +0000 (UTC)
From:      Qing Li <qingli@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r196649 - head/sys/netinet6
Message-ID:  <200908300207.n7U27Nxc080434@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: qingli
Date: Sun Aug 30 02:07:23 2009
New Revision: 196649
URL: http://svn.freebsd.org/changeset/base/196649

Log:
  Prefix on-link verification is being performed on statically
  configured prefixes. Since these statically configured prefixes
  do not have any associated advertising routers, these prefixes
  are treated as unreachable and those prefix routes are deleted
  from the routing table. Therefore bypass prefixes that are not
  learned from router advertisements during prefix on-link check.
  
  Reviewed by:	hrs

Modified:
  head/sys/netinet6/nd6_rtr.c

Modified: head/sys/netinet6/nd6_rtr.c
==============================================================================
--- head/sys/netinet6/nd6_rtr.c	Sat Aug 29 21:53:08 2009	(r196648)
+++ head/sys/netinet6/nd6_rtr.c	Sun Aug 30 02:07:23 2009	(r196649)
@@ -1415,6 +1415,9 @@ pfxlist_onlink_check()
 			if (pr->ndpr_raf_onlink == 0)
 				continue;
 
+			if (pr->ndpr_raf_auto == 0)
+				continue;
+
 			if ((pr->ndpr_stateflags & NDPRF_DETACHED) == 0 &&
 			    find_pfxlist_reachable_router(pr) == NULL)
 				pr->ndpr_stateflags |= NDPRF_DETACHED;
@@ -1431,6 +1434,9 @@ pfxlist_onlink_check()
 			if (pr->ndpr_raf_onlink == 0)
 				continue;
 
+			if (pr->ndpr_raf_auto == 0)
+				continue;
+
 			if ((pr->ndpr_stateflags & NDPRF_DETACHED) != 0)
 				pr->ndpr_stateflags &= ~NDPRF_DETACHED;
 		}
@@ -1454,6 +1460,9 @@ pfxlist_onlink_check()
 		if (pr->ndpr_raf_onlink == 0)
 			continue;
 
+		if (pr->ndpr_raf_auto == 0)
+			continue;
+
 		if ((pr->ndpr_stateflags & NDPRF_DETACHED) != 0 &&
 		    (pr->ndpr_stateflags & NDPRF_ONLINK) != 0) {
 			if ((e = nd6_prefix_offlink(pr)) != 0) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200908300207.n7U27Nxc080434>