aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/ip_gre.c
diff options
context:
space:
mode:
authorAndrey V. Elsukov <ae@FreeBSD.org>2014-10-08 21:23:34 +0000
committerAndrey V. Elsukov <ae@FreeBSD.org>2014-10-08 21:23:34 +0000
commit5b7a43f5465a1a73f07c2c86b562985ad326e070 (patch)
treea0aa9bda6e2bb529162004d4c326002b55403bf7 /sys/netinet/ip_gre.c
parent315e69cb63e5d559511cf736781b7dc458c3a222 (diff)
downloadsrc-5b7a43f5465a1a73f07c2c86b562985ad326e070.tar.gz
src-5b7a43f5465a1a73f07c2c86b562985ad326e070.zip
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 Obtained from: Yandex LLC MFC after: 2 weeks Sponsored by: Yandex LLC
Notes
Notes: svn path=/head/; revision=272770
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 897adac41b33..fc8732770077 100644
--- a/sys/netinet/ip_gre.c
+++ b/sys/netinet/ip_gre.c
@@ -205,7 +205,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. */