svn commit: r273860 - in stable/9/sys: net netinet

Andrey V. Elsukov ae at FreeBSD.org
Thu Oct 30 13:59:30 UTC 2014


Author: ae
Date: Thu Oct 30 13:59:28 2014
New Revision: 273860
URL: https://svnweb.freebsd.org/changeset/base/273860

Log:
  MFC r272770 (modified version):
    When tunneling interface is going to insert mbuf into netisr queue after stripping
    outer header, consider it as new packet and clear the protocols flags.
  
    This fixes problems when IPSEC traffic goes through various tunnels and router
    doesn't send ICMP/ICMPv6 errors.
  
  PR:		174602
  Sponsored by:	Yandex LLC

Modified:
  stable/9/sys/net/if_gif.c
  stable/9/sys/netinet/ip_gre.c
Directory Properties:
  stable/9/sys/   (props changed)
  stable/9/sys/net/   (props changed)

Modified: stable/9/sys/net/if_gif.c
==============================================================================
--- stable/9/sys/net/if_gif.c	Thu Oct 30 13:53:57 2014	(r273859)
+++ stable/9/sys/net/if_gif.c	Thu Oct 30 13:59:28 2014	(r273860)
@@ -500,6 +500,7 @@ gif_input(m, af, ifp)
 	}
 	sc = ifp->if_softc;
 	m->m_pkthdr.rcvif = ifp;
+	m->m_flags &= ~(M_PROTOFLAGS);
 
 #ifdef MAC
 	mac_ifnet_create_mbuf(ifp, m);

Modified: stable/9/sys/netinet/ip_gre.c
==============================================================================
--- stable/9/sys/netinet/ip_gre.c	Thu Oct 30 13:53:57 2014	(r273859)
+++ stable/9/sys/netinet/ip_gre.c	Thu Oct 30 13:59:28 2014	(r273860)
@@ -211,7 +211,7 @@ gre_input2(struct mbuf *m ,int hlen, u_c
 	}
 
 	m->m_pkthdr.rcvif = GRE2IFP(sc);
-
+	m->m_flags &= ~(M_PROTOFLAGS);
 	netisr_queue(isr, m);
 
 	/* Packet is done, no further processing needed. */


More information about the svn-src-all mailing list