aboutsummaryrefslogtreecommitdiffstats
path: root/wpa_supplicant
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2014-01-23 09:15:28 (GMT)
committerJouni Malinen <j@w1.fi>2014-01-23 09:19:55 (GMT)
commit5ce00d09c0b65999c27e4a7dbf5544d452447d2a (patch)
treeabb952244e72c3fc11bc36f3471a1e91e36bf82b /wpa_supplicant
parente24fe941265d8d3908688dcba995957c89c1e1d7 (diff)
downloadhostap-5ce00d09c0b65999c27e4a7dbf5544d452447d2a.zip
hostap-5ce00d09c0b65999c27e4a7dbf5544d452447d2a.tar.gz
hostap-5ce00d09c0b65999c27e4a7dbf5544d452447d2a.tar.bz2
GAS server: Add support for Protected Dual of Public Action frames
When GAS is used with PMF negotiated, Protected Dual of Public Action frames are expected to be used instead of Public Action frames, i.e., the GAS/ANQP frames are expected to be encrypted. Add support for this different category of Action frames being used for GAS. The payload after the Category field is identical, so the only change is in using the Category field based on what was received in the request frames. For backwards compatibility, do not enforce protected dual to be used on the AP side, i.e., follow what the station does. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
Diffstat (limited to 'wpa_supplicant')
-rw-r--r--wpa_supplicant/ap.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/wpa_supplicant/ap.c b/wpa_supplicant/ap.c
index ea4e6bb..5f69389 100644
--- a/wpa_supplicant/ap.c
+++ b/wpa_supplicant/ap.c
@@ -360,6 +360,8 @@ static void ap_public_action_rx(void *ctx, const u8 *buf, size_t len, int freq)
hdr_len = (const u8 *) &mgmt->u.action.u.vs_public_action.action - buf;
if (hdr_len > len)
return;
+ if (mgmt->u.action.category != WLAN_ACTION_PUBLIC)
+ return;
wpas_p2p_rx_action(wpa_s, mgmt->da, mgmt->sa, mgmt->bssid,
mgmt->u.action.category,
&mgmt->u.action.u.vs_public_action.action,