summaryrefslogtreecommitdiffstats
path: root/sys/netinet/ip_input.c
diff options
context:
space:
mode:
authorbms <bms@FreeBSD.org>2004-06-16 08:28:54 +0000
committerbms <bms@FreeBSD.org>2004-06-16 08:28:54 +0000
commite8e6ce5e869d4d5e8b55a44ea6cbd2da50b943ae (patch)
tree5bcc0aa15049804c6ec1d627be1738245f8a10c0 /sys/netinet/ip_input.c
parent67632d242d379fd7607a45f2aa9a850209ce2289 (diff)
downloadFreeBSD-src-e8e6ce5e869d4d5e8b55a44ea6cbd2da50b943ae.zip
FreeBSD-src-e8e6ce5e869d4d5e8b55a44ea6cbd2da50b943ae.tar.gz
In ip_forward(), set m->m_pkthdr.len correctly such that the mbuf chain
is sane, and ipsec4_getpolicybyaddr() will therefore complete. PR: kern/42727 Obtained from: KAME (kame/freebsd4/sys/netinet/ip_input.c rev 1.42)
Diffstat (limited to 'sys/netinet/ip_input.c')
-rw-r--r--sys/netinet/ip_input.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/netinet/ip_input.c b/sys/netinet/ip_input.c
index 25501aa..0d18482 100644
--- a/sys/netinet/ip_input.c
+++ b/sys/netinet/ip_input.c
@@ -1806,6 +1806,7 @@ ip_forward(struct mbuf *m, int srcrt, struct sockaddr_in *next_hop)
if (mcopy != NULL) {
mcopy->m_len = imin((ip->ip_hl << 2) + 8,
(int)ip->ip_len);
+ mcopy->m_pkthdr.len = mcopy->m_len;
m_copydata(m, 0, mcopy->m_len, mtod(mcopy, caddr_t));
}
OpenPOWER on IntegriCloud