aboutsummaryrefslogtreecommitdiff
path: root/sys/netpfil
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netpfil')
-rw-r--r--sys/netpfil/ipfw/ip_fw2.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/netpfil/ipfw/ip_fw2.c b/sys/netpfil/ipfw/ip_fw2.c
index 6dfe58911955..f55329f54ce4 100644
--- a/sys/netpfil/ipfw/ip_fw2.c
+++ b/sys/netpfil/ipfw/ip_fw2.c
@@ -1448,7 +1448,10 @@ ipfw_chk(struct ip_fw_args *args)
do { \
int x = (_len) + T + EHLEN; \
if (mem) { \
- MPASS(pktlen >= x); \
+ if (__predict_false(pktlen < x)) { \
+ unlock; \
+ goto pullup_failed; \
+ } \
p = (char *)args->mem + (_len) + EHLEN; \
} else { \
if (__predict_false((m)->m_len < x)) { \