diff options
author | darrenr <darrenr@FreeBSD.org> | 2000-08-13 04:28:25 +0000 |
---|---|---|
committer | darrenr <darrenr@FreeBSD.org> | 2000-08-13 04:28:25 +0000 |
commit | 180786054221f855ed812b6e0aad1df8ef0ebe5e (patch) | |
tree | 059d81384d9dc8039dafc0ae0dec499bc65ded08 /sys/netinet/ip_fil.c | |
parent | a757122c4b3532cb08b9d84b742e8702f872c78f (diff) | |
download | FreeBSD-src-180786054221f855ed812b6e0aad1df8ef0ebe5e.zip FreeBSD-src-180786054221f855ed812b6e0aad1df8ef0ebe5e.tar.gz |
Import IP Filter 3.4.9 bits into the kernel
Diffstat (limited to 'sys/netinet/ip_fil.c')
-rw-r--r-- | sys/netinet/ip_fil.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/netinet/ip_fil.c b/sys/netinet/ip_fil.c index fe6af66..2e8af26 100644 --- a/sys/netinet/ip_fil.c +++ b/sys/netinet/ip_fil.c @@ -7,7 +7,7 @@ */ #if !defined(lint) static const char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-2000 Darren Reed"; -static const char rcsid[] = "@(#)$Id: ip_fil.c,v 2.42.2.14 2000/07/18 13:57:55 darrenr Exp $"; +static const char rcsid[] = "@(#)$Id: ip_fil.c,v 2.42.2.15 2000/08/05 14:49:08 darrenr Exp $"; #endif #ifndef SOLARIS @@ -1139,8 +1139,10 @@ int dst; return ENOBUFS; MCLGET(m, M_DONTWAIT); - if (!m) + if ((m->m_flags & M_EXT) == 0) { + m_freem(m); return ENOBUFS; + } avail = (m->m_flags & M_EXT) ? MCLBYTES : MHLEN; xtra = MIN(ntohs(oip6->ip6_plen) + sizeof(ip6_t), avail - hlen - sizeof(*icmp) - max_linkhdr); |