]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
P2P: Fix wpas_p2p_set_own_freq_preference() to use P2P mgmt interface
authorIlan Peer <ilan.peer@intel.com>
Tue, 12 May 2015 14:39:59 +0000 (17:39 +0300)
committerJouni Malinen <j@w1.fi>
Mon, 25 May 2015 15:31:09 +0000 (18:31 +0300)
wpas_p2p_set_own_freq_preference() accessed wpa_s->parent->conf to test
if p2p_ignore_shared_freq is set, but wpa_s->parent is not necessarily
the interface used to manage the P2P Device operations.

Fix this by accessing the configuration file of the interface
initialized to manage the P2P Device operations.

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
wpa_supplicant/p2p_supplicant.c

index d4ff3e33d178a8faa051b254957e33d4e3d17c7b..004d84d69a77d32308ec62d8137c68ff939dd445 100644 (file)
@@ -191,7 +191,11 @@ static void wpas_p2p_set_own_freq_preference(struct wpa_supplicant *wpa_s,
 {
        if (wpa_s->global->p2p_disabled || wpa_s->global->p2p == NULL)
                return;
-       if (wpa_s->parent->conf->p2p_ignore_shared_freq &&
+
+       /* Use the wpa_s used to control the P2P Device operation */
+       wpa_s = wpa_s->global->p2p_init_wpa_s;
+
+       if (wpa_s->conf->p2p_ignore_shared_freq &&
            freq > 0 && wpa_s->num_multichan_concurrent > 1 &&
            wpas_p2p_num_unused_channels(wpa_s) > 0) {
                wpa_printf(MSG_DEBUG, "P2P: Ignore own channel preference %d MHz due to p2p_ignore_shared_freq=1 configuration",