On Tue, Feb 12, 2019 at 03:35:25PM +0100, Arnout Vandecappelle (Essensium/Mind) wrote: > v4: > - use argument to wps_pbc instead of a global configuration option > (requested by Jouni). The main reason for that was to make this specific to the single WPS protocol exchange and not use any of the global structs for this, so this part here is not exactly ideal: > diff --git a/src/wps/wps.h b/src/wps/wps.h > @@ -612,6 +612,12 @@ struct wps_context { > + /** > + * multi_ap_backhaul_sta - Whether this is a Multi-AP backhaul STA > + * enrollee > + */ > + int multi_ap_backhaul_sta; That should not be in struct wps_context and it would have been trivial to fill this from core wpa_supplicant code without the EAP-WSC change. Anyway, this belongs in struct wps_config and struct wps_data which is where I moved it. In other words, this parameter needs to be in per-WPS-exchange data structures, not long term data structures like struct wps_context (or that previously used configuration parameter). > diff --git a/wpa_supplicant/ctrl_iface.c b/wpa_supplicant/ctrl_iface.c > @@ -1168,6 +1168,7 @@ static int wpa_supplicant_ctrl_iface_wps_pbc(struct wpa_supplicant *wpa_s, > @@ -1181,6 +1182,9 @@ static int wpa_supplicant_ctrl_iface_wps_pbc(struct wpa_supplicant *wpa_s, > } > _p2p_dev_addr = p2p_dev_addr; > #endif /* CONFIG_P2P */ > + } else if (os_strncmp(cmd, "multi_ap=", 9) == 0) { > + _bssid = NULL; > + multi_ap = atoi(cmd + 9); > } else if (hwaddr_aton(cmd, bssid)) { > wpa_printf(MSG_DEBUG, "CTRL_IFACE WPS_PBC: invalid BSSID '%s'", > cmd); This would mean that the BSSID argument could not be used with the optional multi_ap parameter. That does not sound ideal, so I changes this to allow multi_ap option to be specified with the BSSID parameter as well as this wildcard case. -- Jouni Malinen PGP id EFC895FA _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap