DragonFlyBSD Kernel Audit
DF-0435 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/net/bpf.c b/sys/net/bpf.c
--- a/sys/net/bpf.c
+++ b/sys/net/bpf.c
@@ -263,7 +263,7 @@
 			 */
 			p = mtod(m, const struct ieee80211_bpf_params *);
 			hlen = p->ibp_len;
-			if (hlen > sizeof(sockp->sa_data)) {
+			if (hlen > m->m_len || hlen > (int)sizeof(sockp->sa_data)) {
 				error = EINVAL;
 				goto bad;
 			}