summaryrefslogtreecommitdiffstats
path: root/sys/netinet/ip_gre.c
diff options
context:
space:
mode:
authorae <ae@FreeBSD.org>2014-10-30 13:53:57 +0000
committerae <ae@FreeBSD.org>2014-10-30 13:53:57 +0000
commit33d2961d9afe58f2ae3f480ed0e9b9860aec5f36 (patch)
tree6706dc290b9adb3f67becd2c035261a6946c1a9d /sys/netinet/ip_gre.c
parent1d17f744c7fc351c6163d4e1a9862bef78a632d5 (diff)
downloadFreeBSD-src-33d2961d9afe58f2ae3f480ed0e9b9860aec5f36.zip
FreeBSD-src-33d2961d9afe58f2ae3f480ed0e9b9860aec5f36.tar.gz
MFC r272770:
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
Diffstat (limited to 'sys/netinet/ip_gre.c')
-rw-r--r--sys/netinet/ip_gre.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/ip_gre.c b/sys/netinet/ip_gre.c
index 776820f..a36a486 100644
--- a/sys/netinet/ip_gre.c
+++ b/sys/netinet/ip_gre.c
@@ -211,7 +211,7 @@ gre_input2(struct mbuf *m ,int hlen, u_char proto)
}
m->m_pkthdr.rcvif = GRE2IFP(sc);
-
+ m_clrprotoflags(m);
netisr_queue(isr, m);
/* Packet is done, no further processing needed. */
OpenPOWER on IntegriCloud