diff options
author | Dmitry Shmidt <dimitrysh@google.com> | 2011-09-27 12:29:26 -0700 |
---|---|---|
committer | Arik Nemtsov <arik@wizery.com> | 2012-08-02 13:03:59 +0300 |
commit | c59acadec010d57c71b2d32bdea4b52a05265c55 (patch) | |
tree | 9a0e7a1579fb932c9313e621b5c937821f4f0bb6 /src/drivers | |
parent | 7b677953285ac02bab8ca9f8caf4a9d6555c0195 (diff) | |
download | external_wpa_supplicant_8_ti-c59acadec010d57c71b2d32bdea4b52a05265c55.zip external_wpa_supplicant_8_ti-c59acadec010d57c71b2d32bdea4b52a05265c55.tar.gz external_wpa_supplicant_8_ti-c59acadec010d57c71b2d32bdea4b52a05265c55.tar.bz2 |
nl80211: Add MLME events (BRCM)
Fix WFD and WPS certification problem for GO (BRCM)
Change-Id: I5bbac818aad7c0a14fddb3beb88a6a2d87c07ea0
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Diffstat (limited to 'src/drivers')
-rw-r--r-- | src/drivers/driver_nl80211.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c index 26a9466..ccf2d8b 100644 --- a/src/drivers/driver_nl80211.c +++ b/src/drivers/driver_nl80211.c @@ -309,6 +309,11 @@ static int android_pno_start(struct i802_bss *bss, struct wpa_driver_scan_params *params); static int android_pno_stop(struct i802_bss *bss); #endif /* ANDROID */ +#ifdef ANDROID_BRCM_P2P_PATCH +static void mlme_event_deauth_disassoc(struct wpa_driver_nl80211_data *drv, + enum wpa_event_type type, + const u8 *frame, size_t len); +#endif /* ANDROID_BRCM_P2P_PATCH */ #ifdef HOSTAPD static void add_ifidx(struct wpa_driver_nl80211_data *drv, int ifidx); @@ -1310,6 +1315,14 @@ static void mlme_event_mgmt(struct wpa_driver_nl80211_data *drv, event.rx_action.data = &mgmt->u.action.category + 1; event.rx_action.len = frame + len - event.rx_action.data; wpa_supplicant_event(drv->ctx, EVENT_RX_ACTION, &event); +#ifdef ANDROID_BRCM_P2P_PATCH + } else if (stype == WLAN_FC_STYPE_ASSOC_REQ) { + mlme_event_assoc(drv, frame, len); + } else if (stype == WLAN_FC_STYPE_DISASSOC) { + mlme_event_deauth_disassoc(drv, EVENT_DISASSOC, frame, len); + } else if (stype == WLAN_FC_STYPE_DEAUTH) { + mlme_event_deauth_disassoc(drv, EVENT_DEAUTH, frame, len); +#endif /* ANDROID_BRCM_P2P_PATCH */ } else { event.rx_mgmt.frame = frame; event.rx_mgmt.frame_len = len; |