aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/mlme.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2009-12-23 07:15:37 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-12-28 16:54:57 -0500
commit77c8144ad3ee7fae834e13cb7e83f5b7c8c5329e (patch)
treef62aa278669ea2f4db5b93af1f40edb06324bff4 /net/mac80211/mlme.c
parent7d3a1c3b03c3a571a2c8c393b75558a5f4a7532a (diff)
mac80211: refactor association
Refactor the code to reserve an skb of the right size (instead of hoping 200 bytes are enough forever), and also put HT IE generation into an own function. Additionally, put the HT IE before the vendor-specific WMM IE. This still leaves things not quite ordered correctly, due to user-specified IEs, add a note about that for now. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r--net/mac80211/mlme.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 7c1f91bcc834..ea434b5a779e 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -1884,6 +1884,13 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata,
1884 ifmgd->ap_smps = ifmgd->req_smps; 1884 ifmgd->ap_smps = ifmgd->req_smps;
1885 1885
1886 wk->assoc.smps = ifmgd->ap_smps; 1886 wk->assoc.smps = ifmgd->ap_smps;
1887 /*
1888 * IEEE802.11n does not allow TKIP/WEP as pairwise ciphers in HT mode.
1889 * We still associate in non-HT mode (11a/b/g) if any one of these
1890 * ciphers is configured as pairwise.
1891 * We can set this to true for non-11n hardware, that'll be checked
1892 * separately along with the peer capabilities.
1893 */
1887 wk->assoc.use_11n = !(ifmgd->flags & IEEE80211_STA_DISABLE_11N); 1894 wk->assoc.use_11n = !(ifmgd->flags & IEEE80211_STA_DISABLE_11N);
1888 wk->assoc.capability = req->bss->capability; 1895 wk->assoc.capability = req->bss->capability;
1889 wk->assoc.wmm_used = wk->assoc.bss->wmm_used; 1896 wk->assoc.wmm_used = wk->assoc.bss->wmm_used;