forked from espressif/esp-idf
fix(wifi): Fix memory leak caused by assoc IE and retry timer
This commit is contained in:
Submodule components/esp_wifi/lib updated: da0306da9b...115268a977
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2020-2022 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2020-2023 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@@ -245,6 +245,14 @@ static int handle_assoc_frame(u8 *frame, size_t len,
|
|||||||
#endif /* CONFIG_IEEE80211R */
|
#endif /* CONFIG_IEEE80211R */
|
||||||
#endif /* defined(CONFIG_IEEE80211KV) || defined(CONFIG_IEEE80211R) */
|
#endif /* defined(CONFIG_IEEE80211KV) || defined(CONFIG_IEEE80211R) */
|
||||||
|
|
||||||
|
void esp_supplicant_unset_all_appie(void)
|
||||||
|
{
|
||||||
|
uint8_t appie;
|
||||||
|
for (appie = WIFI_APPIE_PROBEREQ; appie < WIFI_APPIE_RAM_MAX; appie++) {
|
||||||
|
esp_wifi_unset_appie_internal(appie);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static int ieee80211_handle_rx_frm(u8 type, u8 *frame, size_t len, u8 *sender,
|
static int ieee80211_handle_rx_frm(u8 type, u8 *frame, size_t len, u8 *sender,
|
||||||
u32 rssi, u8 channel, u64 current_tsf)
|
u32 rssi, u8 channel, u64 current_tsf)
|
||||||
{
|
{
|
||||||
|
@@ -42,6 +42,7 @@ bool mbo_bss_profile_match(u8 *bssid);
|
|||||||
#endif
|
#endif
|
||||||
int esp_supplicant_common_init(struct wpa_funcs *wpa_cb);
|
int esp_supplicant_common_init(struct wpa_funcs *wpa_cb);
|
||||||
void esp_supplicant_common_deinit(void);
|
void esp_supplicant_common_deinit(void);
|
||||||
|
void esp_supplicant_unset_all_appie(void);
|
||||||
void esp_set_scan_ie(void);
|
void esp_set_scan_ie(void);
|
||||||
void esp_set_assoc_ie(uint8_t *bssid, const u8 *ies, size_t ies_len, bool add_mdie);
|
void esp_set_assoc_ie(uint8_t *bssid, const u8 *ies, size_t ies_len, bool add_mdie);
|
||||||
void supplicant_sta_conn_handler(uint8_t* bssid);
|
void supplicant_sta_conn_handler(uint8_t* bssid);
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2019-2022 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2019-2023 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@@ -416,6 +416,7 @@ int esp_supplicant_init(void)
|
|||||||
int esp_supplicant_deinit(void)
|
int esp_supplicant_deinit(void)
|
||||||
{
|
{
|
||||||
esp_supplicant_common_deinit();
|
esp_supplicant_common_deinit();
|
||||||
|
esp_supplicant_unset_all_appie();
|
||||||
eloop_destroy();
|
eloop_destroy();
|
||||||
wpa_cb = NULL;
|
wpa_cb = NULL;
|
||||||
return esp_wifi_unregister_wpa_cb_internal();
|
return esp_wifi_unregister_wpa_cb_internal();
|
||||||
|
Reference in New Issue
Block a user