mac80211: fixup radiotap tx flags for RTS/CTS
When using RTS/CTS, the CTS-to-Self bit in radiotap TX flags is getting set instead of the RTS bit. Set the correct one. Reported-by: Larry Maxwell <larrymaxwell@agilemesh.com> Signed-off-by: Bob Copeland <bob@cozybit.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
062f1d6de0
commit
311ab8e1c2
1 changed files with 2 additions and 3 deletions
|
@ -314,10 +314,9 @@ ieee80211_add_tx_radiotap_header(struct ieee80211_local *local,
|
||||||
!is_multicast_ether_addr(hdr->addr1))
|
!is_multicast_ether_addr(hdr->addr1))
|
||||||
txflags |= IEEE80211_RADIOTAP_F_TX_FAIL;
|
txflags |= IEEE80211_RADIOTAP_F_TX_FAIL;
|
||||||
|
|
||||||
if ((info->status.rates[0].flags & IEEE80211_TX_RC_USE_RTS_CTS) ||
|
if (info->status.rates[0].flags & IEEE80211_TX_RC_USE_CTS_PROTECT)
|
||||||
(info->status.rates[0].flags & IEEE80211_TX_RC_USE_CTS_PROTECT))
|
|
||||||
txflags |= IEEE80211_RADIOTAP_F_TX_CTS;
|
txflags |= IEEE80211_RADIOTAP_F_TX_CTS;
|
||||||
else if (info->status.rates[0].flags & IEEE80211_TX_RC_USE_RTS_CTS)
|
if (info->status.rates[0].flags & IEEE80211_TX_RC_USE_RTS_CTS)
|
||||||
txflags |= IEEE80211_RADIOTAP_F_TX_RTS;
|
txflags |= IEEE80211_RADIOTAP_F_TX_RTS;
|
||||||
|
|
||||||
put_unaligned_le16(txflags, pos);
|
put_unaligned_le16(txflags, pos);
|
||||||
|
|
Loading…
Add table
Reference in a new issue