From 8b0895e7ef098822e2f48c95894f51aeb0078ce3 Mon Sep 17 00:00:00 2001 From: Shyamal Khachane Date: Fri, 21 Jun 2024 11:24:09 +0530 Subject: [PATCH] fix(esp_wifi): Fix a memory leak that occurs when SAE connection is interrupted 1. Free temporary data used by SAE before memsetting the same 2. Drop any received auth response that uses a different algorithm than the one currently in use --- components/esp_wifi/lib | 2 +- components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index 9ddbd6cb0a..1a39fdc745 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit 9ddbd6cb0a46a96b475e1d8eaee6e43427ea2371 +Subproject commit 1a39fdc745ad61cd119ca3fcd2c9e016b3c815d6 diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c b/components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c index 4983d6e74f..0df36a9fcc 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c @@ -258,7 +258,6 @@ static void wpa_sta_disconnected_cb(uint8_t reason_code) case WIFI_REASON_ASSOC_FAIL: case WIFI_REASON_CONNECTION_FAIL: case WIFI_REASON_HANDSHAKE_TIMEOUT: - esp_wpa3_free_sae_data(); wpa_sta_clear_curr_pmksa(); wpa_sm_notify_disassoc(&gWpaSm); break; @@ -272,6 +271,7 @@ static void wpa_sta_disconnected_cb(uint8_t reason_code) owe_deinit(); #endif /* CONFIG_OWE_STA */ + esp_wpa3_free_sae_data(); supplicant_sta_disconn_handler(); }