diff options
author | bms <bms@FreeBSD.org> | 2004-06-16 08:28:54 +0000 |
---|---|---|
committer | bms <bms@FreeBSD.org> | 2004-06-16 08:28:54 +0000 |
commit | e8e6ce5e869d4d5e8b55a44ea6cbd2da50b943ae (patch) | |
tree | 5bcc0aa15049804c6ec1d627be1738245f8a10c0 /sys | |
parent | 67632d242d379fd7607a45f2aa9a850209ce2289 (diff) | |
download | FreeBSD-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')
-rw-r--r-- | sys/netinet/ip_input.c | 1 |
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)); } |