diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wpa3.c b/components/wpa_supplicant/esp_supplicant/src/esp_wpa3.c index fa5b27402f..344257e00e 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wpa3.c +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wpa3.c @@ -147,6 +147,10 @@ static u8 *wpa3_build_sae_msg(u8 *bssid, u32 sae_msg_type, size_t *sae_msg_len) switch (sae_msg_type) { case SAE_MSG_COMMIT: + /* Do not go for SAE when WPS is ongoing */ + if (esp_wifi_get_wps_status_internal() != WPS_STATUS_DISABLE) { + return NULL; + } if (ESP_OK != wpa3_build_sae_commit(bssid)) return NULL; *sae_msg_len = wpabuf_len(g_sae_commit); diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wps.c b/components/wpa_supplicant/esp_supplicant/src/esp_wps.c index ed4c23fa7b..1f069c8b1a 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wps.c +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wps.c @@ -2145,7 +2145,7 @@ int wifi_wps_enable_internal(const esp_wps_config_t *config) ret = wifi_station_wps_init(); if (ret != 0) { - wps_set_type(WPS_STATUS_DISABLE); + wps_set_type(WPS_TYPE_DISABLE); wps_set_status(WPS_STATUS_DISABLE); return ESP_FAIL; }