summaryrefslogtreecommitdiffstats
path: root/net/mac80211/mlme.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r--net/mac80211/mlme.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 6c9ebca02394..61604834b914 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -756,6 +756,34 @@ static void ieee80211_send_assoc(struct ieee80211_sub_if_data *sdata)
756 ieee80211_add_ht_ie(sdata, skb, assoc_data->ap_ht_param, 756 ieee80211_add_ht_ie(sdata, skb, assoc_data->ap_ht_param,
757 sband, chan, sdata->smps_mode); 757 sband, chan, sdata->smps_mode);
758 758
759 /* if present, add any custom IEs that go before VHT */
760 if (assoc_data->ie_len) {
761 static const u8 before_vht[] = {
762 WLAN_EID_SSID,
763 WLAN_EID_SUPP_RATES,
764 WLAN_EID_EXT_SUPP_RATES,
765 WLAN_EID_PWR_CAPABILITY,
766 WLAN_EID_SUPPORTED_CHANNELS,
767 WLAN_EID_RSN,
768 WLAN_EID_QOS_CAPA,
769 WLAN_EID_RRM_ENABLED_CAPABILITIES,
770 WLAN_EID_MOBILITY_DOMAIN,
771 WLAN_EID_SUPPORTED_REGULATORY_CLASSES,
772 WLAN_EID_HT_CAPABILITY,
773 WLAN_EID_BSS_COEX_2040,
774 WLAN_EID_EXT_CAPABILITY,
775 WLAN_EID_QOS_TRAFFIC_CAPA,
776 WLAN_EID_TIM_BCAST_REQ,
777 WLAN_EID_INTERWORKING,
778 };
779 noffset = ieee80211_ie_split(assoc_data->ie, assoc_data->ie_len,
780 before_vht, ARRAY_SIZE(before_vht),
781 offset);
782 pos = skb_put(skb, noffset - offset);
783 memcpy(pos, assoc_data->ie + offset, noffset - offset);
784 offset = noffset;
785 }
786
759 if (!(ifmgd->flags & IEEE80211_STA_DISABLE_VHT)) 787 if (!(ifmgd->flags & IEEE80211_STA_DISABLE_VHT))
760 ieee80211_add_vht_ie(sdata, skb, sband, 788 ieee80211_add_vht_ie(sdata, skb, sband,
761 &assoc_data->ap_vht_cap); 789 &assoc_data->ap_vht_cap);