mac80211: protect non-HT BSS when HT TDLS traffic exists
HT TDLS traffic should be protected in a non-HT BSS to avoid collisions. Therefore, when TDLS peers join/leave, check if protection is (now) needed and set the ht_operation_mode of the virtual interface according to the HT capabilities of the TDLS peer(s). This works because a non-HT BSS connection never sets (or otherwise uses) the ht_operation_mode; it just means that drivers must be aware that this field applies to all HT traffic for this virtual interface, not just the traffic within the BSS. Document that. Signed-off-by: Avri Altman <avri.altman@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:

committed by
Johannes Berg

parent
98a1f8282b
commit
22f66895e6
@@ -477,7 +477,9 @@ struct ieee80211_event {
|
||||
* @chandef: Channel definition for this BSS -- the hardware might be
|
||||
* configured a higher bandwidth than this BSS uses, for example.
|
||||
* @ht_operation_mode: HT operation mode like in &struct ieee80211_ht_operation.
|
||||
* This field is only valid when the channel type is one of the HT types.
|
||||
* This field is only valid when the channel is a wide HT/VHT channel.
|
||||
* Note that with TDLS this can be the case (channel is HT, protection must
|
||||
* be used from this field) even when the BSS association isn't using HT.
|
||||
* @cqm_rssi_thold: Connection quality monitor RSSI threshold, a zero value
|
||||
* implies disabled
|
||||
* @cqm_rssi_hyst: Connection quality monitor RSSI hysteresis
|
||||
|
Reference in New Issue
Block a user