]> git.ipfire.org Git - thirdparty/hostap.git/commit
mesh: Add support for PMKSA caching
authorMasashi Honma <masashi.honma@gmail.com>
Wed, 9 Mar 2016 09:16:14 +0000 (18:16 +0900)
committerJouni Malinen <j@w1.fi>
Sun, 20 Mar 2016 15:56:38 +0000 (17:56 +0200)
commit9f2cf23e2e0d8f5c28a403c44fad1f65705f884e
treef5c1126a33fcc3c59fc84edf9210ba22598ecdd6
parent4c522c7798d16cac0d59de8b23d8202fb9fa8a59
mesh: Add support for PMKSA caching

This patch add functionality of mesh SAE PMKSA caching. If the local STA
already has peer's PMKSA entry in the cache, skip SAE authentication and
start AMPE with the cached value.

If the peer does not support PMKSA caching or does not have the local
STA's PMKSA entry in the cache, AMPE will fail and the PMKSA cache entry
of the peer will be removed. Then STA retries with ordinary SAE
authentication.

If the peer does not support PMKSA caching and the local STA uses
no_auto_peer=1, the local STA can not retry SAE authentication because
NEW_PEER_CANDIDATE event cannot start SAE authentication when
no_auto_peer=1. So this patch extends MESH_PEER_ADD command to use
duration(sec). Throughout the duration, the local STA can start SAE
authentication triggered by NEW_PEER_CANDIDATE even though
no_auto_peer=1.

This commit requires commit 70c93963edefa37ef84b73efb9d04ea10268341c
('SAE: Fix PMKID calculation for PMKSA cache'). Without that commit,
chosen PMK comparison will fail.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
13 files changed:
src/ap/hostapd.h
src/ap/ieee802_11.c
src/ap/ieee802_11.h
src/ap/sta_info.h
src/ap/wpa_auth.c
src/ap/wpa_auth.h
wpa_supplicant/ctrl_iface.c
wpa_supplicant/mesh.c
wpa_supplicant/mesh.h
wpa_supplicant/mesh_mpm.c
wpa_supplicant/mesh_mpm.h
wpa_supplicant/mesh_rsn.c
wpa_supplicant/wpa_cli.c