aboutsummaryrefslogtreecommitdiffstats
path: root/wpa_supplicant
diff options
context:
space:
mode:
authorVictor Goldenshtein <victorg@ti.com>2011-11-21 15:19:52 +0200
committerArik Nemtsov <arik@wizery.com>2012-09-13 14:53:28 +0300
commitff0a677405533513777ed413abff97483f5fda6d (patch)
tree345897e5425f8e1aa37f39ce603163a3deec7998 /wpa_supplicant
parent7b65de18e8276ed3b5d2cbb64dc06c347f3b0e78 (diff)
downloadexternal_wpa_supplicant_8_ti-ff0a677405533513777ed413abff97483f5fda6d.zip
external_wpa_supplicant_8_ti-ff0a677405533513777ed413abff97483f5fda6d.tar.gz
external_wpa_supplicant_8_ti-ff0a677405533513777ed413abff97483f5fda6d.tar.bz2
hostap: add channel switch ability to AP & GO (INTERNAL)
Add channel switch command and handle channel switch request/complete events. New hostapd_eid_csa() which builds the channel switch announcement IE. Add this CSA to the beacon frame prior performing a channel switch and remove it once it's completed. New EVENT_REQ_CH_SW which indicates that the driver has requested to perform a channel switch. Signed-hostap: Victor Goldenshtein <victorg@ti.com>
Diffstat (limited to 'wpa_supplicant')
-rw-r--r--wpa_supplicant/events.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c
index 56ae94c..c3e9ed6 100644
--- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c
@@ -2556,6 +2556,12 @@ void wpa_supplicant_event(void *ctx, enum wpa_event_type event,
data->ch_switch.ch_offset);
#endif /* CONFIG_AP */
break;
+ case EVENT_REQ_CH_SW:
+ if (!data)
+ break;
+ ieee802_11_start_channel_switch(wpa_s->ap_iface->bss[0],
+ data->ch_switch.freq, FALSE);
+ break;
case EVENT_RX_MGMT: {
u16 fc, stype;
const struct ieee80211_mgmt *mgmt;