mirror of
https://github.com/espressif/esp-idf.git
synced 2026-04-27 19:13:21 +00:00
Merge branch 'bugfix/wps_disable_at_timeout_v6.0' into 'release/v6.0'
fix(wifi): Disable wps in eloop context during wps abort (v6.0) See merge request espressif/esp-idf!45840
This commit is contained in:
@@ -327,6 +327,13 @@ SM_STATE(AUTH_PAE, AUTHENTICATING)
|
|||||||
sm->keyDone = false;
|
sm->keyDone = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef ESP_SUPPLICANT
|
||||||
|
static void wifi_ap_wps_disable_timeout_handler(void *eloop_ctx, void *user_ctx)
|
||||||
|
{
|
||||||
|
extern int wifi_ap_wps_disable_internal(void);
|
||||||
|
wifi_ap_wps_disable_internal();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
SM_STATE(AUTH_PAE, ABORTING)
|
SM_STATE(AUTH_PAE, ABORTING)
|
||||||
{
|
{
|
||||||
@@ -344,6 +351,10 @@ SM_STATE(AUTH_PAE, ABORTING)
|
|||||||
sm->authAbort = true;
|
sm->authAbort = true;
|
||||||
sm->keyRun = false;
|
sm->keyRun = false;
|
||||||
sm->keyDone = false;
|
sm->keyDone = false;
|
||||||
|
#ifdef ESP_SUPPLICANT
|
||||||
|
sm->exit_sm_step_run = true;
|
||||||
|
eloop_register_timeout(0, 0, wifi_ap_wps_disable_timeout_handler, NULL, NULL);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -921,6 +932,12 @@ restart:
|
|||||||
if (sm->initializing || eapol_sm_sta_entry_alive(eapol, addr))
|
if (sm->initializing || eapol_sm_sta_entry_alive(eapol, addr))
|
||||||
SM_STEP_RUN(CTRL_DIR);
|
SM_STEP_RUN(CTRL_DIR);
|
||||||
|
|
||||||
|
#ifdef ESP_SUPPLICANT
|
||||||
|
if (sm->exit_sm_step_run) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (prev_auth_pae != sm->auth_pae_state ||
|
if (prev_auth_pae != sm->auth_pae_state ||
|
||||||
prev_be_auth != sm->be_auth_state ||
|
prev_be_auth != sm->be_auth_state ||
|
||||||
prev_reauth_timer != sm->reauth_timer_state ||
|
prev_reauth_timer != sm->reauth_timer_state ||
|
||||||
|
|||||||
@@ -171,6 +171,9 @@ struct eapol_state_machine {
|
|||||||
int remediation;
|
int remediation;
|
||||||
|
|
||||||
u64 acct_multi_session_id;
|
u64 acct_multi_session_id;
|
||||||
|
#ifdef ESP_SUPPLICANT
|
||||||
|
bool exit_sm_step_run;
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* EAPOL_AUTH_SM_I_H */
|
#endif /* EAPOL_AUTH_SM_I_H */
|
||||||
|
|||||||
Reference in New Issue
Block a user