aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/nl80211.h
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2011-08-10 16:53:31 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-08-12 13:45:03 -0400
commit32e9de846be885444358b67267f837088c05e0c2 (patch)
tree181a4b23ab44337fdb72e7e0f5f1c0874154f21f /include/linux/nl80211.h
parent0879fa44b54101c9955123582018cb511047a2b6 (diff)
nl80211/cfg80211: Allow SSID to be specified in new beacon command
This makes it easier for drivers that generate Beacon and Probe Response frames internally (in firmware most likely) in AP mode. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/linux/nl80211.h')
-rw-r--r--include/linux/nl80211.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h
index 8ad70dcac3f9..227ee9a0ff1a 100644
--- a/include/linux/nl80211.h
+++ b/include/linux/nl80211.h
@@ -161,6 +161,9 @@
161 * @NL80211_CMD_SET_BEACON: set the beacon on an access point interface 161 * @NL80211_CMD_SET_BEACON: set the beacon on an access point interface
162 * using the %NL80211_ATTR_BEACON_INTERVAL, %NL80211_ATTR_DTIM_PERIOD, 162 * using the %NL80211_ATTR_BEACON_INTERVAL, %NL80211_ATTR_DTIM_PERIOD,
163 * %NL80211_ATTR_BEACON_HEAD and %NL80211_ATTR_BEACON_TAIL attributes. 163 * %NL80211_ATTR_BEACON_HEAD and %NL80211_ATTR_BEACON_TAIL attributes.
164 * Following attributes are provided for drivers that generate full Beacon
165 * and Probe Response frames internally: %NL80211_ATTR_SSID,
166 * %NL80211_ATTR_HIDDEN_SSID.
164 * @NL80211_CMD_NEW_BEACON: add a new beacon to an access point interface, 167 * @NL80211_CMD_NEW_BEACON: add a new beacon to an access point interface,
165 * parameters are like for %NL80211_CMD_SET_BEACON. 168 * parameters are like for %NL80211_CMD_SET_BEACON.
166 * @NL80211_CMD_DEL_BEACON: remove the beacon, stop sending it 169 * @NL80211_CMD_DEL_BEACON: remove the beacon, stop sending it
@@ -1019,6 +1022,10 @@ enum nl80211_commands {
1019 * being a list of supported rates as defined by IEEE 802.11 7.3.2.2 but 1022 * being a list of supported rates as defined by IEEE 802.11 7.3.2.2 but
1020 * without the length restriction (at most %NL80211_MAX_SUPP_RATES). 1023 * without the length restriction (at most %NL80211_MAX_SUPP_RATES).
1021 * 1024 *
1025 * @NL80211_ATTR_HIDDEN_SSID: indicates whether SSID is to be hidden from Beacon
1026 * and Probe Response (when response to wildcard Probe Request); see
1027 * &enum nl80211_hidden_ssid, represented as a u32
1028 *
1022 * @NL80211_ATTR_MAX: highest attribute number currently defined 1029 * @NL80211_ATTR_MAX: highest attribute number currently defined
1023 * @__NL80211_ATTR_AFTER_LAST: internal use 1030 * @__NL80211_ATTR_AFTER_LAST: internal use
1024 */ 1031 */
@@ -1224,6 +1231,8 @@ enum nl80211_attrs {
1224 1231
1225 NL80211_ATTR_SCAN_SUPP_RATES, 1232 NL80211_ATTR_SCAN_SUPP_RATES,
1226 1233
1234 NL80211_ATTR_HIDDEN_SSID,
1235
1227 /* add attributes here, update the policy in nl80211.c */ 1236 /* add attributes here, update the policy in nl80211.c */
1228 1237
1229 __NL80211_ATTR_AFTER_LAST, 1238 __NL80211_ATTR_AFTER_LAST,
@@ -2430,4 +2439,19 @@ enum nl80211_rekey_data {
2430 MAX_NL80211_REKEY_DATA = NUM_NL80211_REKEY_DATA - 1 2439 MAX_NL80211_REKEY_DATA = NUM_NL80211_REKEY_DATA - 1
2431}; 2440};
2432 2441
2442/**
2443 * enum nl80211_hidden_ssid - values for %NL80211_ATTR_HIDDEN_SSID
2444 * @NL80211_HIDDEN_SSID_NOT_IN_USE: do not hide SSID (i.e., broadcast it in
2445 * Beacon frames)
2446 * @NL80211_HIDDEN_SSID_ZERO_LEN: hide SSID by using zero-length SSID element
2447 * in Beacon frames
2448 * @NL80211_HIDDEN_SSID_ZERO_CONTENTS: hide SSID by using correct length of SSID
2449 * element in Beacon frames but zero out each byte in the SSID
2450 */
2451enum nl80211_hidden_ssid {
2452 NL80211_HIDDEN_SSID_NOT_IN_USE,
2453 NL80211_HIDDEN_SSID_ZERO_LEN,
2454 NL80211_HIDDEN_SSID_ZERO_CONTENTS
2455};
2456
2433#endif /* __LINUX_NL80211_H */ 2457#endif /* __LINUX_NL80211_H */