--- /dev/null
+--- a/net80211/ieee80211_input.c
++++ b/net80211/ieee80211_input.c
+@@ -238,6 +238,9 @@
+       if (vap->iv_opmode == IEEE80211_M_MONITOR)
+               goto out;
+ 
++      if (!skb->data)
++              goto out;
++
+       if (skb->len < sizeof(struct ieee80211_frame_min)) {
+               IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_ANY,
+                       ni->ni_macaddr, NULL,
 
  #define       IEEE80211_QOS_TXOP                      0x00ff
 --- a/net80211/ieee80211_input.c
 +++ b/net80211/ieee80211_input.c
-@@ -414,7 +414,7 @@
+@@ -417,7 +417,7 @@
                                tid = 0;
                        rxseq = le16toh(*(__le16 *)wh->i_seq);
                        if ((wh->i_fc[1] & IEEE80211_FC1_RETRY) &&