svn commit: r226878 - stable/8/sys/netinet6

Qing Li qingli at FreeBSD.org
Fri Oct 28 04:04:22 UTC 2011


Author: qingli
Date: Fri Oct 28 04:04:21 2011
New Revision: 226878
URL: http://svn.freebsd.org/changeset/base/226878

Log:
  MFC 226451
  
  The IPv6 code was influx at the time of r196865 due to the L2/L3
  separation rewrite changes. r196865 was committed to fix a scope
  violation problem in the following test scenario:
  
    box-1# ifconfig em0 inet6 2001:db8:1:: prefixlen 64 anycast
    box-1# ifconfig em1 inet6 2001:db8:2::1 prefixlen 64
  
    box-2# ifconfig re0 inet6 2001:db8:1::6 prefixlen 64
  
    em0 and re0 are on the same link.
  
    box-2# ping6 2001:db8:1::
    PING6(56=40+8+8 bytes) 2001:db8:1::6 --> 2001:db8:1::
  
  the ICMPv6 response should have a source address of em1, which
  is 2001:db8:2::1, not the link-local address of em0.
  
  That code is no longer necessary and breaks the IPv6-Ready logo
  testing, so revert it now.
  
  Reviewed by:	hrs

Modified:
  stable/8/sys/netinet6/icmp6.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)

Modified: stable/8/sys/netinet6/icmp6.c
==============================================================================
--- stable/8/sys/netinet6/icmp6.c	Fri Oct 28 03:58:33 2011	(r226877)
+++ stable/8/sys/netinet6/icmp6.c	Fri Oct 28 04:04:21 2011	(r226878)
@@ -2161,10 +2161,6 @@ icmp6_reflect(struct mbuf *m, size_t off
 		}
 	}
 
-	if ((srcp != NULL) && 
-	    (in6_addrscope(srcp) != in6_addrscope(&ip6->ip6_src)))
-		srcp = NULL;
-
 	if (srcp == NULL) {
 		int e;
 		struct sockaddr_in6 sin6;


More information about the svn-src-all mailing list