Merge branch 'bugfix/install_keys_after_successful_4_of_4_tx' into 'master'

esp_wifi: Install keys after successful transmission of EAPOL 4/4 Message

Closes WIFI-5678

See merge request espressif/esp-idf!23141
This commit is contained in:
Jiang Jiang Jian
2023-04-13 19:02:20 +08:00
3 changed files with 8 additions and 1 deletions

View File

@@ -294,5 +294,6 @@ uint8_t esp_wifi_get_config_sae_pwe_h2e_internal(uint8_t ifx);
bool esp_wifi_ap_notify_node_sae_auth_done(uint8_t *mac);
bool esp_wifi_ap_is_sta_sae_reauth_node(uint8_t *mac);
uint8_t* esp_wifi_sta_get_sae_identifier_internal(void);
bool esp_wifi_eb_tx_status_success_internal(void *eb);
#endif /* _ESP_WIFI_DRIVER_H_ */

View File

@@ -2621,6 +2621,12 @@ void eapol_txcb(void *eb)
case WPA_FIRST_HALF_4WAY_HANDSHAKE:
break;
case WPA_LAST_HALF_4WAY_HANDSHAKE:
if (esp_wifi_eb_tx_status_success_internal(eb) != true) {
wpa_printf(MSG_ERROR, "Eapol message 4/4 tx failure, not installing keys");
return;
}
if (sm->txcb_flags & WPA_4_4_HANDSHAKE_BIT) {
sm->txcb_flags &= ~WPA_4_4_HANDSHAKE_BIT;
isdeauth = wpa_supplicant_send_4_of_4_txcallback(sm);