summaryrefslogtreecommitdiffstats
path: root/sys/netinet/tcp_input.c
diff options
context:
space:
mode:
authorae <ae@FreeBSD.org>2012-12-17 20:55:33 +0000
committerae <ae@FreeBSD.org>2012-12-17 20:55:33 +0000
commit4fee09376aecb0d9603378ebb372b1771f7e5714 (patch)
tree5a3b8b0f2abfd4b6b7a44420bdaba6d6bbdd9902 /sys/netinet/tcp_input.c
parenta825511a0fec7c1006ea0fa8612d31c374251617 (diff)
downloadFreeBSD-src-4fee09376aecb0d9603378ebb372b1771f7e5714.zip
FreeBSD-src-4fee09376aecb0d9603378ebb372b1771f7e5714.tar.gz
Since we use different flags to detect tcp forwarding, and we share the
same code for IPv4 and IPv6 in tcp_input, we should check both M_IP_NEXTHOP and M_IP6_NEXTHOP flags. MFC after: 3 days
Diffstat (limited to 'sys/netinet/tcp_input.c')
-rw-r--r--sys/netinet/tcp_input.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c
index 65a2ed5..d53fd4b 100644
--- a/sys/netinet/tcp_input.c
+++ b/sys/netinet/tcp_input.c
@@ -780,7 +780,8 @@ findpcb:
/*
* Grab info from PACKET_TAG_IPFORWARD tag prepended to the chain.
*/
- if (m->m_flags & M_IP_NEXTHOP)
+ if ((isipv6 && (m->m_flags & M_IP6_NEXTHOP)) ||
+ (!isipv6 && (m->m_flags & M_IP_NEXTHOP)))
fwd_tag = m_tag_find(m, PACKET_TAG_IPFORWARD, NULL);
#ifdef INET6
OpenPOWER on IntegriCloud