3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-11-26 02:19:26 +01:00

eapol: On success, reset EAP state

Instead of destroying the EAP object, just reset its state in case the
EAP process completed successfully.  This allows EAP Reauthentication to
work.
This commit is contained in:
Denis Kenzior 2018-05-30 15:08:08 -05:00
parent 2722990e61
commit 9bcb2b75ac

View File

@ -1487,11 +1487,14 @@ static void eapol_eap_complete_cb(enum eap_result result, void *user_data)
"eapSuccess" : (result == EAP_RESULT_FAIL ? "eapSuccess" : (result == EAP_RESULT_FAIL ?
"eapFail" : "eapTimeout")); "eapFail" : "eapTimeout"));
eap_free(sm->eap); if (result != EAP_RESULT_SUCCESS) {
sm->eap = NULL; eap_free(sm->eap);
sm->eap = NULL;
if (result != EAP_RESULT_SUCCESS)
handshake_failed(sm, MMPDU_REASON_CODE_IEEE8021X_FAILED); handshake_failed(sm, MMPDU_REASON_CODE_IEEE8021X_FAILED);
return;
}
eap_reset(sm->eap);
} }
/* This respresentes the eapResults message */ /* This respresentes the eapResults message */