aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/cfg80211.h
diff options
context:
space:
mode:
authorJouni Malinen <jouni.malinen@atheros.com>2008-08-07 13:07:01 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-08-29 16:23:55 -0400
commit9f1ba9062e032fb7b395cd27fc564754fe4e9867 (patch)
tree6610106cd769aa3cc144b7a4f1547e07eeba5c88 /include/net/cfg80211.h
parent7f93ea3e246db512c0c17b79847f57dd3a2891e1 (diff)
mac80211/cfg80211: Add BSS configuration options for AP mode
This change adds a new cfg80211 command, NL80211_CMD_SET_BSS, to allow AP mode BSS parameters to be changed from user space (e.g., hostapd). The drivers using mac80211 are expected to be modified with separate changes to use the new BSS info parameter for short slot time in the bss_info_changed() handler. 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 'include/net/cfg80211.h')
-rw-r--r--include/net/cfg80211.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index e00750836ba5..7afef14d5c5b 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -268,6 +268,23 @@ struct mpath_info {
268 u8 flags; 268 u8 flags;
269}; 269};
270 270
271/**
272 * struct bss_parameters - BSS parameters
273 *
274 * Used to change BSS parameters (mainly for AP mode).
275 *
276 * @use_cts_prot: Whether to use CTS protection
277 * (0 = no, 1 = yes, -1 = do not change)
278 * @use_short_preamble: Whether the use of short preambles is allowed
279 * (0 = no, 1 = yes, -1 = do not change)
280 * @use_short_slot_time: Whether the use of short slot time is allowed
281 * (0 = no, 1 = yes, -1 = do not change)
282 */
283struct bss_parameters {
284 int use_cts_prot;
285 int use_short_preamble;
286 int use_short_slot_time;
287};
271 288
272/* from net/wireless.h */ 289/* from net/wireless.h */
273struct wiphy; 290struct wiphy;
@@ -318,6 +335,8 @@ struct wiphy;
318 * @change_station: Modify a given station. 335 * @change_station: Modify a given station.
319 * 336 *
320 * @set_mesh_cfg: set mesh parameters (by now, just mesh id) 337 * @set_mesh_cfg: set mesh parameters (by now, just mesh id)
338 *
339 * @change_bss: Modify parameters for a given BSS.
321 */ 340 */
322struct cfg80211_ops { 341struct cfg80211_ops {
323 int (*add_virtual_intf)(struct wiphy *wiphy, char *name, 342 int (*add_virtual_intf)(struct wiphy *wiphy, char *name,
@@ -370,6 +389,9 @@ struct cfg80211_ops {
370 int (*dump_mpath)(struct wiphy *wiphy, struct net_device *dev, 389 int (*dump_mpath)(struct wiphy *wiphy, struct net_device *dev,
371 int idx, u8 *dst, u8 *next_hop, 390 int idx, u8 *dst, u8 *next_hop,
372 struct mpath_info *pinfo); 391 struct mpath_info *pinfo);
392
393 int (*change_bss)(struct wiphy *wiphy, struct net_device *dev,
394 struct bss_parameters *params);
373}; 395};
374 396
375#endif /* __NET_CFG80211_H */ 397#endif /* __NET_CFG80211_H */