Merge branch 'bugfix/fix_wps_examples_issue_v4.0' into 'release/v4.0'

esp_wifi: Fix WPS examples issue (v4.0)

See merge request espressif/esp-idf!11730
This commit is contained in:
Jiang Jiang Jian
2020-12-24 12:34:39 +08:00
2 changed files with 5 additions and 4 deletions

View File

@@ -976,6 +976,7 @@ int wps_finish(void)
if (config == NULL) {
system_event_t evt;
evt.event_id = SYSTEM_EVENT_STA_WPS_ER_FAILED;
evt.event_info.sta_er_fail_reason = WPS_FAIL_REASON_NORMAL;
esp_wifi_send_event_internal(&evt);
return ESP_FAIL;
}
@@ -1253,6 +1254,7 @@ out:
system_event_t evt;
evt.event_id = SYSTEM_EVENT_STA_WPS_ER_FAILED;
evt.event_info.sta_er_fail_reason = WPS_FAIL_REASON_NORMAL;
esp_wifi_send_event_internal(&evt);
return ret;
@@ -1505,6 +1507,7 @@ void wifi_station_wps_success_internal(void)
{
system_event_t evt;
evt.event_id = SYSTEM_EVENT_STA_WPS_ER_SUCCESS;
evt.event_info.sta_er_success.ap_cred_cnt = 1;
struct wps_sm *sm = gWpsSm;
int i;
@@ -1520,10 +1523,8 @@ void wifi_station_wps_success_internal(void)
os_memcpy(evt.event_info.sta_er_success.ap_cred[i].passphrase,
sm->key[i], sm->key_len[i]);
}
esp_wifi_send_event_internal(&evt);
} else {
esp_wifi_send_event_internal(&evt);
}
esp_wifi_send_event_internal(&evt);
}
void wifi_station_wps_success(void)

View File

@@ -88,7 +88,7 @@ static void wifi_event_handler(void* arg, esp_event_base_t event_base,
(wifi_event_sta_wps_er_success_t *)event_data;
int i;
if (evt) {
if (evt && evt->ap_cred_cnt > 1) {
s_ap_creds_num = evt->ap_cred_cnt;
for (i = 0; i < s_ap_creds_num; i++) {
memcpy(wps_ap_creds[i].sta.ssid, evt->ap_cred[i].ssid,