EAP: Clear ClientTimeout back to default value in INITIALIZE
authorJouni Malinen <jouni@qca.qualcomm.com>
Tue, 18 Oct 2011 15:44:35 +0000 (18:44 +0300)
committerJouni Malinen <j@w1.fi>
Tue, 18 Oct 2011 15:44:35 +0000 (18:44 +0300)
This fixes an issue where WPS run leaves a small ClientTimeout
value (2) configured and the next EAPOL authentication is started
with that small value even for Identity exchange. This can cause
problems when an EAPOL packet gets dropped immediately after
association and a retry of that packet is needed (which may take
more than two seconds).

src/eap_peer/eap.c

index 39513d6..17d3574 100644 (file)
@@ -147,6 +147,7 @@ SM_STATE(EAP, INITIALIZE)
        sm->methodState = METHOD_NONE;
        sm->allowNotifications = TRUE;
        sm->decision = DECISION_FAIL;
+       sm->ClientTimeout = EAP_CLIENT_TIMEOUT_DEFAULT;
        eapol_set_int(sm, EAPOL_idleWhile, sm->ClientTimeout);
        eapol_set_bool(sm, EAPOL_eapSuccess, FALSE);
        eapol_set_bool(sm, EAPOL_eapFail, FALSE);