mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
fix(wpa_supplicant): Handle case when WPS registrar misses WSC_DONE sent by station
When registrar somehow misses the WSC_DONE sent by station and station goes for next connection after sending deauth, make sure that softAP disables the registrar.
This commit is contained in:
parent
ed12574848
commit
e2c47edafa
@ -221,7 +221,7 @@ int esp_wifi_ap_wps_enable(const esp_wps_config_t *config)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int wifi_ap_wps_disable_internal(void)
|
int wifi_ap_wps_disable_internal(void)
|
||||||
{
|
{
|
||||||
struct wps_sm *sm = gWpsSm;
|
struct wps_sm *sm = gWpsSm;
|
||||||
|
|
||||||
|
@ -103,6 +103,13 @@ static void eap_wsc_reset(struct eap_sm *sm, void *priv)
|
|||||||
wpabuf_free(data->out_buf);
|
wpabuf_free(data->out_buf);
|
||||||
//wps_deinit(data->wps);
|
//wps_deinit(data->wps);
|
||||||
os_free(data);
|
os_free(data);
|
||||||
|
#ifdef ESP_SUPPLICANT
|
||||||
|
/* TODO: When wps-registrar is shifted in a separate task other than wifi task,
|
||||||
|
* call esp_wifi_ap_wps_disable() here instead of wifi_ap_wps_disable_internal()
|
||||||
|
* */
|
||||||
|
extern int wifi_ap_wps_disable_internal(void);
|
||||||
|
wifi_ap_wps_disable_internal();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user