diff options
author | andre <andre@FreeBSD.org> | 2004-11-09 09:40:32 +0000 |
---|---|---|
committer | andre <andre@FreeBSD.org> | 2004-11-09 09:40:32 +0000 |
commit | 173ef4db9740ebfb9354f9d7fb956680520f0b62 (patch) | |
tree | d6aca87aae6d9b7b2ccca577b407682a48821460 /sys/netinet/ip_fastfwd.c | |
parent | 1e3f012b89c3714461e3f0c493e6f98d12229a34 (diff) | |
download | FreeBSD-src-173ef4db9740ebfb9354f9d7fb956680520f0b62.zip FreeBSD-src-173ef4db9740ebfb9354f9d7fb956680520f0b62.tar.gz |
Fix a double-free in the 'hlen > m->m_len' sanity check.
Bug report by: <james@towardex.com>
MFC after: 2 weeks
Diffstat (limited to 'sys/netinet/ip_fastfwd.c')
-rw-r--r-- | sys/netinet/ip_fastfwd.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/ip_fastfwd.c b/sys/netinet/ip_fastfwd.c index f0add29..4acb594 100644 --- a/sys/netinet/ip_fastfwd.c +++ b/sys/netinet/ip_fastfwd.c @@ -221,7 +221,7 @@ ip_fastforward(struct mbuf *m) if (hlen > m->m_len) { if ((m = m_pullup(m, hlen)) == 0) { ipstat.ips_badhlen++; - goto drop; + return 1; } ip = mtod(m, struct ip *); } |