mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-31 19:24:33 +02:00
Merge branch 'bugfix/pmf_softap_coex_issue_v4.0' into 'release/v4.0'
Fix issues related to PMF and WPA2-Enterprise (Backport v4.0) See merge request espressif/esp-idf!10698
This commit is contained in:
Submodule components/esp_wifi/lib_esp32 updated: 4bfb6b161d...f860ff7f88
@@ -234,5 +234,6 @@ esp_err_t esp_wifi_set_wps_start_flag_internal(bool start);
|
|||||||
uint16_t esp_wifi_sta_pmf_enabled(void);
|
uint16_t esp_wifi_sta_pmf_enabled(void);
|
||||||
wifi_cipher_type_t esp_wifi_sta_get_mgmt_group_cipher(void);
|
wifi_cipher_type_t esp_wifi_sta_get_mgmt_group_cipher(void);
|
||||||
int esp_wifi_set_igtk_internal(uint8_t if_index, const wifi_wpa_igtk_t *igtk);
|
int esp_wifi_set_igtk_internal(uint8_t if_index, const wifi_wpa_igtk_t *igtk);
|
||||||
|
bool esp_wifi_skip_supp_pmkcaching(void);
|
||||||
|
|
||||||
#endif /* _ESP_WIFI_DRIVER_H_ */
|
#endif /* _ESP_WIFI_DRIVER_H_ */
|
||||||
|
@@ -2119,8 +2119,19 @@ int wpa_set_bss(char *macddr, char * bssid, u8 pairwise_cipher, u8 group_cipher,
|
|||||||
if (sm->key_mgmt == WPA_KEY_MGMT_SAE ||
|
if (sm->key_mgmt == WPA_KEY_MGMT_SAE ||
|
||||||
(esp_wifi_sta_prof_is_wpa2_internal() &&
|
(esp_wifi_sta_prof_is_wpa2_internal() &&
|
||||||
esp_wifi_sta_get_prof_authmode_internal() == WPA2_AUTH_ENT)) {
|
esp_wifi_sta_get_prof_authmode_internal() == WPA2_AUTH_ENT)) {
|
||||||
|
if (!esp_wifi_skip_supp_pmkcaching()) {
|
||||||
pmksa_cache_set_current(sm, NULL, (const u8*) bssid, 0, 0);
|
pmksa_cache_set_current(sm, NULL, (const u8*) bssid, 0, 0);
|
||||||
wpa_sm_set_pmk_from_pmksa(sm);
|
wpa_sm_set_pmk_from_pmksa(sm);
|
||||||
|
} else {
|
||||||
|
struct rsn_pmksa_cache_entry *entry = NULL;
|
||||||
|
|
||||||
|
if (sm->pmksa) {
|
||||||
|
entry = pmksa_cache_get(sm->pmksa, (const u8 *)bssid, NULL, NULL);
|
||||||
|
}
|
||||||
|
if (entry) {
|
||||||
|
pmksa_cache_flush(sm->pmksa, NULL, entry->pmk, entry->pmk_len);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_IEEE80211W
|
#ifdef CONFIG_IEEE80211W
|
||||||
|
Reference in New Issue
Block a user