Use wpa_radio data for wpas_p2p_search_delay()

This replaces the now unnecessary iteration of get_radio_name() calls.

Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2013-11-24 20:01:07 +02:00
parent c67e7e2a23
commit 5b81927d58

View file

@ -6265,7 +6265,6 @@ int wpas_p2p_scan_no_go_seen(struct wpa_supplicant *wpa_s)
unsigned int wpas_p2p_search_delay(struct wpa_supplicant *wpa_s) unsigned int wpas_p2p_search_delay(struct wpa_supplicant *wpa_s)
{ {
const char *rn, *rn2;
struct wpa_supplicant *ifs; struct wpa_supplicant *ifs;
if (wpa_s->wpa_state > WPA_SCANNING) { if (wpa_s->wpa_state > WPA_SCANNING) {
@ -6275,20 +6274,9 @@ unsigned int wpas_p2p_search_delay(struct wpa_supplicant *wpa_s)
return P2P_CONCURRENT_SEARCH_DELAY; return P2P_CONCURRENT_SEARCH_DELAY;
} }
if (!wpa_s->driver->get_radio_name) dl_list_for_each(ifs, &wpa_s->radio->ifaces, struct wpa_supplicant,
return 0; radio_list) {
rn = wpa_s->driver->get_radio_name(wpa_s->drv_priv); if (ifs != wpa_s && ifs->wpa_state > WPA_SCANNING) {
if (rn == NULL || rn[0] == '\0')
return 0;
for (ifs = wpa_s->global->ifaces; ifs; ifs = ifs->next) {
if (ifs == wpa_s || !ifs->driver->get_radio_name)
continue;
rn2 = ifs->driver->get_radio_name(ifs->drv_priv);
if (!rn2 || os_strcmp(rn, rn2) != 0)
continue;
if (ifs->wpa_state > WPA_SCANNING) {
wpa_dbg(wpa_s, MSG_DEBUG, "P2P: Use %u ms search " wpa_dbg(wpa_s, MSG_DEBUG, "P2P: Use %u ms search "
"delay due to concurrent operation on " "delay due to concurrent operation on "
"interface %s", "interface %s",