diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c index 2b912cf..aaa086f 100644 --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c @@ -636,6 +636,11 @@ ieee80211_tx_h_sequence(struct ieee80211_tx_data *tx) if (ieee80211_hdrlen(hdr->frame_control) < 24) return TX_CONTINUE; + if (unlikely((info->flags & IEEE80211_TX_CTL_INJECTED) && + (tx->sdata->vif.type == IEEE80211_IF_TYPE_MNTR) && + !(tx->sdata->u.mntr_flags & MONITOR_FLAG_COOK_FRAMES))) + return TX_CONTINUE; + if (!ieee80211_is_data_qos(hdr->frame_control)) { info->flags |= IEEE80211_TX_CTL_ASSIGN_SEQ; return TX_CONTINUE;