diff mbox

[3/3] mesh: Initialize SAE state machine on restarting

Message ID 1421904138-6385-3-git-send-email-masashi.honma@gmail.com
State Superseded
Headers show

Commit Message

Masashi Honma Jan. 22, 2015, 5:22 a.m. UTC
After STA exceeded the dot11MeshMaxRetries, STA could not continue SAE
authentication even if new peer notification came. Because SAE state shows the
authentication is in progress still. This initialize the SAE state on
restarting.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
---
 wpa_supplicant/mesh_mpm.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Bob Copeland Jan. 22, 2015, 2:29 p.m. UTC | #1
On Thu, Jan 22, 2015 at 02:22:18PM +0900, Masashi Honma wrote:
> After STA exceeded the dot11MeshMaxRetries, STA could not continue SAE
> authentication even if new peer notification came. Because SAE state shows the
> authentication is in progress still. This initialize the SAE state on
> restarting.

Hmm, this doesn't make sense to me -- SAE is already finished by the time
MPM (AMPE) state machine starts, why would it be in progress still?
Masashi Honma Jan. 27, 2015, 1:53 p.m. UTC | #2
2015-01-22 23:29 GMT+09:00 Bob Copeland <me@bobcopeland.com>:
> Hmm, this doesn't make sense to me -- SAE is already finished by the time
> MPM (AMPE) state machine starts, why would it be in progress still?

I will drop this patch because your new patch solves this problem.
http://lists.shmoo.com/pipermail/hostap/2015-January/thread.html
diff mbox

Patch

diff --git a/wpa_supplicant/mesh_mpm.c b/wpa_supplicant/mesh_mpm.c
index cddeb01..c660639 100644
--- a/wpa_supplicant/mesh_mpm.c
+++ b/wpa_supplicant/mesh_mpm.c
@@ -391,6 +391,8 @@  static void mesh_mpm_fsm_restart(struct wpa_supplicant *wpa_s,
 	wpa_mesh_set_plink_state(wpa_s, sta, PLINK_LISTEN);
 	sta->my_lid = sta->peer_lid = sta->mpm_close_reason = 0;
 	sta->mpm_retries = 0;
+	if (sta->sae)
+		sta->sae->state = SAE_NOTHING;
 }