From 175f0dec6c6ebd1f2264ce452650a1b796722cb3 Mon Sep 17 00:00:00 2001 From: zhangyanjiao Date: Wed, 3 Aug 2022 17:26:33 +0800 Subject: [PATCH 1/9] Modify maximum softap conn num and espnow encryption peer num --- components/esp_wifi/Kconfig | 15 ++++++++++++ .../esp_wifi/include/esp_mesh_internal.h | 23 ++++++++----------- components/esp_wifi/include/esp_wifi.h | 2 ++ components/esp_wifi/include/esp_wifi_types.h | 2 +- tools/ci/check_copyright_ignore.txt | 1 - 5 files changed, 27 insertions(+), 16 deletions(-) diff --git a/components/esp_wifi/Kconfig b/components/esp_wifi/Kconfig index 679086a004..136075bc70 100644 --- a/components/esp_wifi/Kconfig +++ b/components/esp_wifi/Kconfig @@ -385,4 +385,19 @@ menu "Wi-Fi" Delta timeout time for rf phy off, When the beacon is lost, the next rf phy off will be delayed for the time specified by the configuration item. Unit: 1024 microsecond. + config ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM + int "Maximum espnow encrypt peers number" + range 0 4 if IDF_TARGET_ESP32C2 + range 0 16 if (!IDF_TARGET_ESP32C2) + default 2 if IDF_TARGET_ESP32C2 + default 6 if !IDF_TARGET_ESP32C2 + help + Maximum number of encrypted peers supported by espnow. + The number of hardware keys for encryption is fixed. And the espnow and SoftAP share the same + hardware keys. So this configuration will affect the maximum connection number of SoftAP. + Maximum espnow encrypted peers number + maximum number of connections of SoftAP = Max hardware keys number. + + When using ESP mesh, this value should be set to a maximum of 6. + + endmenu # Wi-Fi diff --git a/components/esp_wifi/include/esp_mesh_internal.h b/components/esp_wifi/include/esp_mesh_internal.h index e967dbaafb..af602bb548 100644 --- a/components/esp_wifi/include/esp_mesh_internal.h +++ b/components/esp_wifi/include/esp_mesh_internal.h @@ -1,16 +1,8 @@ -// Copyright 2017-2018 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at - -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. +/* + * SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ #ifndef __ESP_MESH_INTERNAL_H__ #define __ESP_MESH_INTERNAL_H__ @@ -107,6 +99,9 @@ typedef struct { mesh_chain_layer_t chain; } __attribute__((packed)) mesh_chain_assoc_t; +/* mesh max connections */ +#define MESH_MAX_CONNECTIONS (10) + /** * @brief Mesh PS duties */ @@ -117,7 +112,7 @@ typedef struct { bool used; uint8_t duty; uint8_t mac[6]; - } child[ESP_WIFI_MAX_CONN_NUM]; + } child[MESH_MAX_CONNECTIONS]; } esp_mesh_ps_duties_t; /******************************************************* diff --git a/components/esp_wifi/include/esp_wifi.h b/components/esp_wifi/include/esp_wifi.h index abb403be44..f065bc50e9 100644 --- a/components/esp_wifi/include/esp_wifi.h +++ b/components/esp_wifi/include/esp_wifi.h @@ -107,6 +107,7 @@ typedef struct { int mgmt_sbuf_num; /**< WiFi management short buffer number, the minimum value is 6, the maximum value is 32 */ uint64_t feature_caps; /**< Enables additional WiFi features and capabilities */ bool sta_disconnected_pm; /**< WiFi Power Management for station at disconnected status */ + int espnow_max_encrypt_num; /**< Maximum encrypt number of peers supported by espnow */ int magic; /**< WiFi init magic number, it should be the last field */ } wifi_init_config_t; @@ -225,6 +226,7 @@ extern uint64_t g_wifi_feature_caps; .mgmt_sbuf_num = WIFI_MGMT_SBUF_NUM, \ .feature_caps = g_wifi_feature_caps, \ .sta_disconnected_pm = WIFI_STA_DISCONNECTED_PM_ENABLED, \ + .espnow_max_encrypt_num = CONFIG_ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM, \ .magic = WIFI_INIT_CONFIG_MAGIC\ } diff --git a/components/esp_wifi/include/esp_wifi_types.h b/components/esp_wifi/include/esp_wifi_types.h index 239a66e1f6..3c010a6ce3 100644 --- a/components/esp_wifi/include/esp_wifi_types.h +++ b/components/esp_wifi/include/esp_wifi_types.h @@ -315,7 +315,7 @@ typedef struct { #if CONFIG_IDF_TARGET_ESP32C2 #define ESP_WIFI_MAX_CONN_NUM (4) /**< max number of stations which can connect to ESP32C2 soft-AP */ #else -#define ESP_WIFI_MAX_CONN_NUM (10) /**< max number of stations which can connect to ESP32 soft-AP */ +#define ESP_WIFI_MAX_CONN_NUM (16) /**< max number of stations which can connect to ESP32/ESP32S3/ESP32S2/ESP32C3 soft-AP */ #endif /** @brief List of stations associated with the ESP32 Soft-AP */ diff --git a/tools/ci/check_copyright_ignore.txt b/tools/ci/check_copyright_ignore.txt index 0385b369f4..bae401bae0 100644 --- a/tools/ci/check_copyright_ignore.txt +++ b/tools/ci/check_copyright_ignore.txt @@ -656,7 +656,6 @@ components/esp_system/test_eh_frame_parser/eh_frame_parser_impl.h components/esp_system/test_eh_frame_parser/esp_private/panic_internal.h components/esp_system/test_eh_frame_parser/linker.ld components/esp_system/ubsan.c -components/esp_wifi/include/esp_mesh_internal.h components/esp_wifi/include/esp_private/esp_wifi_types_private.h components/esp_wifi/include/esp_private/wifi_types.h components/esp_wifi/include/esp_smartconfig.h From fe4efc0df694ce8f6c45ef6c28aaa1998d907a84 Mon Sep 17 00:00:00 2001 From: zhangyanjiao Date: Wed, 3 Aug 2022 17:50:21 +0800 Subject: [PATCH 2/9] update doc for espnow max encryped connection --- docs/en/api-reference/network/esp_now.rst | 10 +++------- docs/zh_CN/api-reference/network/esp_now.rst | 10 +++------- 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/docs/en/api-reference/network/esp_now.rst b/docs/en/api-reference/network/esp_now.rst index a5bbd0dad4..fcd09393b2 100644 --- a/docs/en/api-reference/network/esp_now.rst +++ b/docs/en/api-reference/network/esp_now.rst @@ -68,15 +68,11 @@ Call :cpp:func:`esp_now_add_peer()` to add the device to the paired device list .. only:: esp32c2 - The maximum number of paired devices is 20, and the paired encryption devices are no more than 4, the default is 2. + The maximum number of paired devices is 20, and the paired encryption devices are no more than 4, the default is 2. If you want to change the number of paired encryption devices, set :ref:`CONFIG_ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM` in WiFi component configuration menu. -.. only:: esp32c3 +.. only:: esp32 or esp32s2 or esp32s3 or esp32c3 - The maximum number of paired devices is 20, and the paired encryption devices are no more than 10, the default is 6. - -.. only:: esp32 or esp32s2 or esp32s3 - - The maximum number of paired devices is 20, and the paired encryption devices are no more than 16, the default is 6. + The maximum number of paired devices is 20, and the paired encryption devices are no more than 16, the default is 6. If you want to change the number of paired encryption devices, set :ref:`CONFIG_ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM` in WiFi component configuration menu. A device with a broadcast MAC address must be added before sending broadcast data. The range of the channel of paired devices is from 0 to 14. If the channel is set to 0, data will be sent on the current channel. Otherwise, the channel must be set as the channel that the local device is on. diff --git a/docs/zh_CN/api-reference/network/esp_now.rst b/docs/zh_CN/api-reference/network/esp_now.rst index cffc9438e9..0be251dc36 100644 --- a/docs/zh_CN/api-reference/network/esp_now.rst +++ b/docs/zh_CN/api-reference/network/esp_now.rst @@ -68,15 +68,11 @@ ESP-NOW 采用 CCMP 方法保护供应商特定动作帧的安全,具体可参 .. only:: esp32c2 - 配对设备的最大数量是 20,其中加密设备的数量不超过 4,默认值是 2。 + 配对设备的最大数量是 20,其中加密设备的数量不超过 4,默认值是 2。如果想要修改加密设备的数量,在 WiFi menuconfig 设置 :ref:`CONFIG_ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM`。 -.. only:: esp32c3 +.. only:: esp32 or esp32s2 or esp32s3 or esp32c3 - 配对设备的最大数量是 20,其中加密设备的数量不超过 10,默认值是 6。 - -.. only:: esp32 or esp32s2 or esp32s3 - - 配对设备的最大数量是 20,其中加密设备的数量不超过 16,默认值是 6。 + 配对设备的最大数量是 20,其中加密设备的数量不超过 16,默认值是 6。如果想要修改加密设备的数量,在 WiFi menuconfig 设置 :ref:`CONFIG_ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM`。 在发送广播数据之前必须添加具有广播 MAC 地址的设备。配对设备的信道范围是从 0 ~14。如果信道设置为 0,数据将在当前信道上发送。否则,必须使用本地设备所在的通道。 From 8afd990e71e78d729450db5bde84048737e35b10 Mon Sep 17 00:00:00 2001 From: zhangyanjiao Date: Thu, 17 Nov 2022 16:03:25 +0800 Subject: [PATCH 3/9] update wifi lib: 1. Modify wifi max connection num 2. Fix the ESPNOW senf fail after changing opmode Closes IDFGH-7960 Closes WIFI-4176 Closes WIFI-5004 --- components/esp_wifi/lib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index b10fa11471..f6339efe87 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit b10fa11471b69b82f9599aa2941e1c353bd517c1 +Subproject commit f6339efe87a713de50b998cb7483d5c5fb72c6f8 From 91804983b7fccee7659cc12ed17faf6751b3d107 Mon Sep 17 00:00:00 2001 From: zhangyanjiao Date: Mon, 28 Nov 2022 16:09:24 +0800 Subject: [PATCH 4/9] esp_wifi: fix esp32c3 connect fail Closes IDFCI-1524 --- components/esp_rom/esp32c3/ld/esp32c3.rom.ld | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/esp_rom/esp32c3/ld/esp32c3.rom.ld b/components/esp_rom/esp32c3/ld/esp32c3.rom.ld index b9178924af..a72a13c162 100644 --- a/components/esp_rom/esp32c3/ld/esp32c3.rom.ld +++ b/components/esp_rom/esp32c3/ld/esp32c3.rom.ld @@ -1716,7 +1716,7 @@ ic_reset_rx_ba = 0x4000184c; ieee80211_align_eb = 0x40001850; ieee80211_ampdu_reorder = 0x40001854; ieee80211_ampdu_start_age_timer = 0x40001858; -ieee80211_encap_esfbuf = 0x4000185c; +/*ieee80211_encap_esfbuf = 0x4000185c;*/ ieee80211_is_tx_allowed = 0x40001860; ieee80211_output_pending_eb = 0x40001864; ieee80211_output_process = 0x40001868; From 0db6920b8c6967a17e79a3e12a27fe4101081c10 Mon Sep 17 00:00:00 2001 From: Nachiket Kukade Date: Wed, 23 Nov 2022 17:33:51 +0530 Subject: [PATCH 5/9] esp_wifi: Update wifi libs Fix unprotected SA Query issue and scan regression --- components/esp_wifi/lib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index f6339efe87..d5577671af 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit f6339efe87a713de50b998cb7483d5c5fb72c6f8 +Subproject commit d5577671afea75a3b3f9375c78b3a49e8ce56589 From 8136f98ddc4124a37b4045043c18d472f55c2923 Mon Sep 17 00:00:00 2001 From: Kapil Gupta Date: Fri, 9 Sep 2022 15:59:14 +0530 Subject: [PATCH 6/9] esp_wifi: Update wifi libs Add changes to prevent security overwritten in full scan Co-authored-by: Nachiket Kukade --- components/esp_wifi/lib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index d5577671af..ccb8fbbeb4 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit d5577671afea75a3b3f9375c78b3a49e8ce56589 +Subproject commit ccb8fbbeb4e61f1fc54b6eae80d42532dbc8ece3 From 38bb7c2a6038d4829d47296e5c6ad3611397cfd8 Mon Sep 17 00:00:00 2001 From: Shreyas Sheth Date: Wed, 30 Nov 2022 13:01:40 +0800 Subject: [PATCH 7/9] esp_wifi:Mandate stations to have minimum security wpa3 --- components/esp_wifi/include/esp_wifi_types.h | 3 ++- components/esp_wifi/lib | 2 +- .../wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h | 1 + .../wpa_supplicant/esp_supplicant/src/esp_wpas_glue.c | 9 +++++++++ .../wpa_supplicant/esp_supplicant/src/esp_wpas_glue.h | 2 ++ components/wpa_supplicant/src/common/wpa_common.h | 5 +++++ components/wpa_supplicant/src/rsn_supp/wpa.c | 4 ++++ components/wpa_supplicant/src/rsn_supp/wpa_ie.c | 9 +++++++++ components/wpa_supplicant/src/rsn_supp/wpa_ie.h | 2 ++ 9 files changed, 35 insertions(+), 2 deletions(-) diff --git a/components/esp_wifi/include/esp_wifi_types.h b/components/esp_wifi/include/esp_wifi_types.h index 3c010a6ce3..67ea558d6d 100644 --- a/components/esp_wifi/include/esp_wifi_types.h +++ b/components/esp_wifi/include/esp_wifi_types.h @@ -284,7 +284,8 @@ typedef struct { uint32_t mbo_enabled:1; /**< Whether MBO is enabled for the connection */ uint32_t ft_enabled:1; /**< Whether FT is enabled for the connection */ uint32_t owe_enabled:1; /**< Whether OWE is enabled for the connection */ - uint32_t reserved:27; /**< Reserved for future feature set */ + uint32_t transition_disable:1; /**< Whether to enable transition disable feature */ + uint32_t reserved:26; /**< Reserved for future feature set */ wifi_sae_pwe_method_t sae_pwe_h2e; /**< Whether SAE hash to element is enabled */ uint8_t failure_retry_cnt; /**< Number of connection retries station will do before moving to next AP. scan_method should be set as WIFI_ALL_CHANNEL_SCAN to use this config. Note: Enabling this may cause connection time to increase incase best AP doesn't behave properly. */ } wifi_sta_config_t; diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index ccb8fbbeb4..2bf3370730 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit ccb8fbbeb4e61f1fc54b6eae80d42532dbc8ece3 +Subproject commit 2bf33707304806dde88aafe2780b2f233a100604 diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h b/components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h index 856d40d5c5..e0b2b5de22 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h @@ -281,5 +281,6 @@ void esp_wifi_get_pmf_config_internal(wifi_pmf_config_t *pmf_cfg, uint8_t ifx); bool esp_wifi_is_ft_enabled_internal(uint8_t if_index); uint8_t esp_wifi_sta_get_config_sae_pwe_h2e_internal(void); uint8_t esp_wifi_sta_get_use_h2e_internal(void); +void esp_wifi_sta_disable_wpa2_authmode_internal(void); #endif /* _ESP_WIFI_DRIVER_H_ */ diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.c b/components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.c index a250db8672..9cb75ba086 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.c +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.c @@ -93,6 +93,15 @@ int hostapd_send_eapol(const u8 *source, const u8 *sta_addr, } +void wpa_supplicant_transition_disable(void *sm, u8 bitmap) +{ + wpa_printf(MSG_INFO, "TRANSITION_DISABLE %02x", bitmap); + + if (bitmap & TRANSITION_DISABLE_WPA3_PERSONAL) { + esp_wifi_sta_disable_wpa2_authmode_internal(); + } +} + u8 *wpa_sm_alloc_eapol(struct wpa_sm *sm, u8 type, const void *data, u16 data_len, size_t *msg_len, void **data_pos) diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.h b/components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.h index 220a01c633..11f5b3ddff 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.h +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.h @@ -31,6 +31,8 @@ void wpa_free_eapol(u8 *buffer); int wpa_ether_send(void *ctx, const u8 *dest, u16 proto, const u8 *data, size_t data_len); +void wpa_supplicant_transition_disable(void *sm, u8 bitmap); + int hostapd_send_eapol(const u8 *source, const u8 *sta_addr, const u8 *data, size_t data_len); #endif /* WPAS_GLUE_H */ diff --git a/components/wpa_supplicant/src/common/wpa_common.h b/components/wpa_supplicant/src/common/wpa_common.h index 86e158505c..b827c36fe0 100644 --- a/components/wpa_supplicant/src/common/wpa_common.h +++ b/components/wpa_supplicant/src/common/wpa_common.h @@ -94,6 +94,8 @@ RSN_SELECTOR(0x00, 0x0f, 0xac, 13) #define RSN_KEY_DATA_IGTK RSN_SELECTOR(0x00, 0x0f, 0xac, 9) #endif /* CONFIG_IEEE80211W */ +#define WFA_KEY_DATA_TRANSITION_DISABLE RSN_SELECTOR(0x50, 0x6f, 0x9a, 0x20) + #define WPA_OUI_TYPE RSN_SELECTOR(0x00, 0x50, 0xf2, 1) #define RSN_SELECTOR_PUT(a, val) WPA_PUT_BE32((u8 *) (a), (val)) @@ -305,6 +307,9 @@ struct rsn_rdie { #endif /* CONFIG_IEEE80211R */ +/* WFA Transition Disable KDE (using OUI_WFA) */ +/* Transition Disable Bitmap bits */ +#define TRANSITION_DISABLE_WPA3_PERSONAL BIT(0) #ifdef CONFIG_IEEE80211R int wpa_ft_mic(const u8 *kck, size_t kck_len, const u8 *sta_addr, diff --git a/components/wpa_supplicant/src/rsn_supp/wpa.c b/components/wpa_supplicant/src/rsn_supp/wpa.c index f8449360a5..acfecb5c8e 100644 --- a/components/wpa_supplicant/src/rsn_supp/wpa.c +++ b/components/wpa_supplicant/src/rsn_supp/wpa.c @@ -1305,6 +1305,10 @@ static void wpa_supplicant_process_3_of_4(struct wpa_sm *sm, goto failed; } + if (ie.transition_disable) { + wpa_supplicant_transition_disable(sm, ie.transition_disable[0]); + } + if (sm->key_install && sm->key_info & WPA_KEY_INFO_INSTALL && sm->use_ext_key_id) { wpa_supplicant_install_ptk(sm, KEY_FLAG_RX); } diff --git a/components/wpa_supplicant/src/rsn_supp/wpa_ie.c b/components/wpa_supplicant/src/rsn_supp/wpa_ie.c index 7e4102addd..021f79a8af 100644 --- a/components/wpa_supplicant/src/rsn_supp/wpa_ie.c +++ b/components/wpa_supplicant/src/rsn_supp/wpa_ie.c @@ -383,6 +383,15 @@ static int wpa_parse_generic(const u8 *pos, const u8 *end, return 0; } #endif + if (pos[1] >= RSN_SELECTOR_LEN + 1 && + RSN_SELECTOR_GET(pos + 2) == WFA_KEY_DATA_TRANSITION_DISABLE) { + ie->transition_disable = pos + 2 + RSN_SELECTOR_LEN; + ie->transition_disable_len = pos[1] - RSN_SELECTOR_LEN; + wpa_hexdump(MSG_DEBUG, + "WPA: Transition Disable KDE in EAPOL-Key", + pos, pos[1] + 2); + return 0; + } return 0; } diff --git a/components/wpa_supplicant/src/rsn_supp/wpa_ie.h b/components/wpa_supplicant/src/rsn_supp/wpa_ie.h index 5a9b77de0e..b799064635 100644 --- a/components/wpa_supplicant/src/rsn_supp/wpa_ie.h +++ b/components/wpa_supplicant/src/rsn_supp/wpa_ie.h @@ -37,6 +37,8 @@ struct wpa_eapol_ie_parse { const u8 *reassoc_deadline; const u8 *key_lifetime; #endif /* CONFIG_IEEE80211R */ + const u8 *transition_disable; + size_t transition_disable_len; const u8 *rsnxe; size_t rsnxe_len; }; From ffadd88af482dcdb9220f517b533dbb596f99e06 Mon Sep 17 00:00:00 2001 From: Nachiket Kukade Date: Wed, 23 Nov 2022 17:33:51 +0530 Subject: [PATCH 8/9] esp_wifi: Update wifi libs - Fixed regression caused in commit ef80cf0b65adaf59d985c0e8467871cf9020be8e - Fixed unprotected SA Query issue --- components/esp_wifi/lib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index 2bf3370730..298095149d 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit 2bf33707304806dde88aafe2780b2f233a100604 +Subproject commit 298095149daafb9f9723093d577d55bdf273b5ec From 7aa2b032049d0f3126144148ab059d4c027fbe3a Mon Sep 17 00:00:00 2001 From: zhangyanjiao Date: Thu, 1 Dec 2022 11:13:10 +0800 Subject: [PATCH 9/9] esp_wifi: fix the ESPNOW crash when modify the interface of the peer Closes WIFI-5046 Closes WIFI-5047 --- components/esp_wifi/lib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index 298095149d..f3e2f7fac3 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit 298095149daafb9f9723093d577d55bdf273b5ec +Subproject commit f3e2f7fac3b27671f45ef368b49264d1477efbd9