aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2009-12-23 07:15:38 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-12-28 16:54:58 -0500
commit8e664fb3fd2b04e3ac5fad7f046000ba54e0e275 (patch)
treecf811ffed7d7643b72608a5eebd25baffd57fcb3 /net/mac80211/ieee80211_i.h
parent77c8144ad3ee7fae834e13cb7e83f5b7c8c5329e (diff)
mac80211: split up and insert custom IEs correctly
Currently, we insert all user-specified IEs before the HT IE for association, and after the HT IE for probe requests. For association, that's correct only if the user-specified IEs are RSN only, incorrect in all other cases including WPA. Change this to split apart the user-specified IEs in two places for association: before the HT IE (e.g. RSN), after the HT IE (generally empty right now I think?) and after WMM (all other vendor-specific IEs). For probes, split the IEs in different places to be correct according to the spec. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r--net/mac80211/ieee80211_i.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index 97b6076b492e..6ea4ffbf84d8 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -1148,6 +1148,10 @@ int __ieee80211_request_smps(struct ieee80211_sub_if_data *sdata,
1148void ieee80211_recalc_smps(struct ieee80211_local *local, 1148void ieee80211_recalc_smps(struct ieee80211_local *local,
1149 struct ieee80211_sub_if_data *forsdata); 1149 struct ieee80211_sub_if_data *forsdata);
1150 1150
1151size_t ieee80211_ie_split(const u8 *ies, size_t ielen,
1152 const u8 *ids, int n_ids, size_t offset);
1153size_t ieee80211_ie_split_vendor(const u8 *ies, size_t ielen, size_t offset);
1154
1151/* internal work items */ 1155/* internal work items */
1152void ieee80211_work_init(struct ieee80211_local *local); 1156void ieee80211_work_init(struct ieee80211_local *local);
1153void ieee80211_add_work(struct ieee80211_work *wk); 1157void ieee80211_add_work(struct ieee80211_work *wk);