File tree Expand file tree Collapse file tree 1 file changed +8
-6
lines changed
components/wpa_supplicant/esp_supplicant/src Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Original file line number Diff line number Diff line change @@ -349,7 +349,7 @@ is_wps_pbc_overlap(struct wps_sm *sm, const u8 *sel_uuid)
349349{
350350 if (!sel_uuid ) {
351351 wpa_printf (MSG_DEBUG , "WPS: null uuid field" );
352- return false ;
352+ return true ;
353353 }
354354
355355 if (os_memcmp (sel_uuid , sm -> uuid_r , WPS_UUID_LEN ) != 0 ) {
@@ -370,7 +370,7 @@ wps_parse_scan_result(struct wps_scan_ie *scan)
370370 struct wps_sm * sm = gWpsSm ;
371371 wifi_mode_t op_mode = 0 ;
372372
373- if (sm -> wps_pbc_overlap ) {
373+ if (sm -> wps_pbc_overlap ) {
374374 return false;
375375 }
376376
@@ -445,11 +445,13 @@ wps_parse_scan_result(struct wps_scan_ie *scan)
445445 os_memcpy (sm -> bssid , scan -> bssid , ETH_ALEN );
446446
447447 scan_uuid = wps_get_uuid_e (buf );
448+ if (sm -> discover_ssid_cnt > 1 && wps_get_type () == WPS_TYPE_PBC && is_wps_pbc_overlap (sm , scan_uuid ) == true) {
449+ wpa_printf (MSG_INFO , "pbc_overlap flag is true" );
450+ sm -> wps_pbc_overlap = true;
451+ wpabuf_free (buf );
452+ return false;
453+ }
448454 if (scan_uuid ) {
449- if (sm -> discover_ssid_cnt > 1 && wps_get_type () == WPS_TYPE_PBC && is_wps_pbc_overlap (sm , scan_uuid ) == true) {
450- wpa_printf (MSG_INFO , "pbc_overlap flag is true" );
451- sm -> wps_pbc_overlap = true;
452- }
453455 os_memcpy (sm -> uuid_r , scan_uuid , WPS_UUID_LEN );
454456 }
455457
You can’t perform that action at this time.
0 commit comments