diff options
author | Sara Sharon <sara.sharon@intel.com> | 2019-01-16 16:03:25 -0500 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2019-02-08 07:56:37 -0500 |
commit | caf56338c22f00098bf2acd646b0ddc691c80c24 (patch) | |
tree | b86354b7e9976e1cfbaa0e269176af1515ba8f4d /net/mac80211/mlme.c | |
parent | 78ac51f81532c1e361a31ac112c1fea470ea9036 (diff) |
mac80211: indicate support for multiple BSSID
Set multi-bssid support flags according to driver support.
Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r-- | net/mac80211/mlme.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 64b6ddb67456..a49fbb3f3ed7 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -813,6 +813,21 @@ static void ieee80211_send_assoc(struct ieee80211_sub_if_data *sdata) | |||
813 | } | 813 | } |
814 | } | 814 | } |
815 | 815 | ||
816 | /* Set MBSSID support for HE AP if needed */ | ||
817 | if (ieee80211_hw_check(&local->hw, SUPPORTS_ONLY_HE_MULTI_BSSID) && | ||
818 | !(ifmgd->flags & IEEE80211_STA_DISABLE_HE) && assoc_data->ie_len) { | ||
819 | struct element *elem; | ||
820 | |||
821 | /* we know it's writable, cast away the const */ | ||
822 | elem = (void *)cfg80211_find_elem(WLAN_EID_EXT_CAPABILITY, | ||
823 | assoc_data->ie, | ||
824 | assoc_data->ie_len); | ||
825 | |||
826 | /* We can probably assume both always true */ | ||
827 | if (elem && elem->datalen >= 3) | ||
828 | elem->data[2] |= WLAN_EXT_CAPA3_MULTI_BSSID_SUPPORT; | ||
829 | } | ||
830 | |||
816 | /* if present, add any custom IEs that go before HT */ | 831 | /* if present, add any custom IEs that go before HT */ |
817 | if (assoc_data->ie_len) { | 832 | if (assoc_data->ie_len) { |
818 | static const u8 before_ht[] = { | 833 | static const u8 before_ht[] = { |