diff options
author | Mathy Vanhoef <Mathy.Vanhoef@kuleuven.be> | 2020-07-23 13:01:50 +0300 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2020-07-31 10:27:01 +0300 |
commit | 29c3e95f79adcef9d7999ec643639033585dba08 (patch) | |
tree | 204e72dd1f8697a0306c61be2fe8ff305146c230 /net/mac80211/tx.c | |
parent | e02281e7a5c524aaf6a52bb01afc4cc49addb908 (diff) | |
download | linux-29c3e95f79adcef9d7999ec643639033585dba08.tar.xz |
mac80211: do not overwrite the sequence number if requested
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>
Diffstat (limited to 'net/mac80211/tx.c')
-rw-r--r-- | net/mac80211/tx.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c index 413345056445..e1e915e7cc8e 100644 --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c @@ -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 |