mac80211: do not overwrite the sequence number if requested
authorMathy Vanhoef <Mathy.Vanhoef@kuleuven.be>
Thu, 23 Jul 2020 10:01:50 +0000 (14:01 +0400)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 31 Jul 2020 07:27:01 +0000 (09:27 +0200)
Check if the Tx control flag is set to prevent sequence number overwrites,
and if so, do not assign a new sequence number to the transmitted frame.

Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@kuleuven.be>
Link: https://lore.kernel.org/r/20200723100153.31631-3-Mathy.Vanhoef@kuleuven.be
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/tx.c

index 4133450..e1e915e 100644 (file)
@@ -825,6 +825,9 @@ ieee80211_tx_h_sequence(struct ieee80211_tx_data *tx)
        if (ieee80211_is_qos_nullfunc(hdr->frame_control))
                return TX_CONTINUE;
 
+       if (info->control.flags & IEEE80211_TX_CTRL_NO_SEQNO)
+               return TX_CONTINUE;
+
        /*
         * Anything but QoS data that has a sequence number field
         * (is long enough) gets a sequence number from the global