]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
atheros: Process SAE authentication frames using EVENT_RX_MGMT
authorAshok Kumar Ponnaiah <aponnaia@qti.qualcomm.com>
Tue, 14 Nov 2017 16:47:07 +0000 (18:47 +0200)
committerJouni Malinen <j@w1.fi>
Tue, 14 Nov 2017 16:47:07 +0000 (18:47 +0200)
This adds support for SAE in AP mode with the atheros driver interface.
EVENT_RX_MGMT includes SAE processing while EVENT_AUTH would require
more changes to make this work.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
src/drivers/driver_atheros.c

index 9dd235028d6ef17e4d503d4d44e7f385af409bf2..d4812461f41a2e67186f4e4cb3658b0bc92cdf79 100644 (file)
@@ -931,6 +931,12 @@ static void atheros_raw_receive(void *ctx, const u8 *src_addr, const u8 *buf,
                if (len < IEEE80211_HDRLEN + sizeof(mgmt->u.auth))
                        break;
                os_memset(&event, 0, sizeof(event));
+               if (le_to_host16(mgmt->u.auth.auth_alg) == WLAN_AUTH_SAE) {
+                       event.rx_mgmt.frame = buf;
+                       event.rx_mgmt.frame_len = len;
+                       wpa_supplicant_event(drv->hapd, EVENT_RX_MGMT, &event);
+                       break;
+               }
                os_memcpy(event.auth.peer, mgmt->sa, ETH_ALEN);
                os_memcpy(event.auth.bssid, mgmt->bssid, ETH_ALEN);
                event.auth.auth_type = le_to_host16(mgmt->u.auth.auth_alg);