diff options
author | Jouni Malinen <jouni.malinen@atheros.com> | 2009-01-13 09:03:29 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-01-29 16:00:35 -0500 |
commit | 9aed3cc124343d92be6697e9af3928bdfe8eb03e (patch) | |
tree | 6a49a68422656790f944f37e3f34379b753d1dab /net/mac80211/ieee80211_i.h | |
parent | 0c1aa495961f03c964b3287cf5800217cf6f2cee (diff) |
nl80211: New command for adding extra IE(s) into management frames
A new nl80211 command, NL80211_CMD_SET_MGMT_EXTRA_IE, can be used to
add arbitrary IE data into the end of management frames. The interface
allows extra IEs to be configured for each management frame subtype, but
only some of them (ProbeReq, ProbeResp, Auth, (Re)AssocReq, Deauth,
Disassoc) are currently accepted in mac80211 implementation.
This makes it easier to implement IEEE 802.11 extensions like WPS and
FT that add IE(s) into some management frames. In addition, this can
be useful for testing and experimentation purposes.
Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>
Acked-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.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index c9ffadb55d36..5eafd3affe27 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -331,6 +331,22 @@ struct ieee80211_if_sta { | |||
331 | u32 supp_rates_bits[IEEE80211_NUM_BANDS]; | 331 | u32 supp_rates_bits[IEEE80211_NUM_BANDS]; |
332 | 332 | ||
333 | int wmm_last_param_set; | 333 | int wmm_last_param_set; |
334 | |||
335 | /* Extra IE data for management frames */ | ||
336 | u8 *ie_probereq; | ||
337 | size_t ie_probereq_len; | ||
338 | u8 *ie_proberesp; | ||
339 | size_t ie_proberesp_len; | ||
340 | u8 *ie_auth; | ||
341 | size_t ie_auth_len; | ||
342 | u8 *ie_assocreq; | ||
343 | size_t ie_assocreq_len; | ||
344 | u8 *ie_reassocreq; | ||
345 | size_t ie_reassocreq_len; | ||
346 | u8 *ie_deauth; | ||
347 | size_t ie_deauth_len; | ||
348 | u8 *ie_disassoc; | ||
349 | size_t ie_disassoc_len; | ||
334 | }; | 350 | }; |
335 | 351 | ||
336 | struct ieee80211_if_mesh { | 352 | struct ieee80211_if_mesh { |