svn commit: r256676 - user/ae/inet6/sys/netinet6

Andrey V. Elsukov ae at FreeBSD.org
Thu Oct 17 11:43:56 UTC 2013


Author: ae
Date: Thu Oct 17 11:43:55 2013
New Revision: 256676
URL: http://svnweb.freebsd.org/changeset/base/256676

Log:
  Remove in6_clearscope() calls. Don't clear ifnet pointer, now we don't
  have enough scope information in the IP header.

Modified:
  user/ae/inet6/sys/netinet6/icmp6.c

Modified: user/ae/inet6/sys/netinet6/icmp6.c
==============================================================================
--- user/ae/inet6/sys/netinet6/icmp6.c	Thu Oct 17 11:40:08 2013	(r256675)
+++ user/ae/inet6/sys/netinet6/icmp6.c	Thu Oct 17 11:43:55 2013	(r256676)
@@ -360,26 +360,13 @@ icmp6_error(struct mbuf *m, int type, in
 	nip6->ip6_src  = oip6->ip6_src;
 	nip6->ip6_dst  = oip6->ip6_dst;
 
-	in6_clearscope(&oip6->ip6_src);
-	in6_clearscope(&oip6->ip6_dst);
-
 	icmp6 = (struct icmp6_hdr *)(nip6 + 1);
 	icmp6->icmp6_type = type;
 	icmp6->icmp6_code = code;
 	icmp6->icmp6_pptr = htonl((u_int32_t)param);
 
-	/*
-	 * icmp6_reflect() is designed to be in the input path.
-	 * icmp6_error() can be called from both input and output path,
-	 * and if we are in output path rcvif could contain bogus value.
-	 * clear m->m_pkthdr.rcvif for safety, we should have enough scope
-	 * information in ip header (nip6).
-	 */
-	m->m_pkthdr.rcvif = NULL;
-
 	ICMP6STAT_INC(icp6s_outhist[type]);
 	icmp6_reflect(m, sizeof(struct ip6_hdr)); /* header order: IPv6 - ICMPv6 */
-
 	return;
 
   freeit:


More information about the svn-src-user mailing list