dbus: Use current_bss to get correct group BSSID and frequency on client
When the P2P persistent group is provisioned out-of-band, i.e., add persistent group with a known BSSID, SSID, passphrase, and frequency, and start the group with GroupAdd dbus command, the group info fetched on the cliend side has zero MAC address for BSSID and no value for frequency. Fix this issue by getting that information from wpa_s->current_bss instead of wpa_s->go_params. Signed-off-by: Jintao Lin <jintaolin@chromium.org>
This commit is contained in:
parent
b91113e05f
commit
e3570f5e1c
1 changed files with 5 additions and 4 deletions
|
@ -14,6 +14,7 @@
|
|||
#include "../wpa_supplicant_i.h"
|
||||
#include "../wps_supplicant.h"
|
||||
#include "../notify.h"
|
||||
#include "../bss.h"
|
||||
#include "dbus_new_helpers.h"
|
||||
#include "dbus_new.h"
|
||||
#include "dbus_new_handlers.h"
|
||||
|
@ -2427,9 +2428,9 @@ dbus_bool_t wpas_dbus_getter_p2p_group_bssid(
|
|||
u8 *p_bssid;
|
||||
|
||||
if (role == WPAS_P2P_ROLE_CLIENT) {
|
||||
if (wpa_s->current_ssid == NULL)
|
||||
if (!wpa_s->current_bss)
|
||||
return FALSE;
|
||||
p_bssid = wpa_s->current_ssid->bssid;
|
||||
p_bssid = wpa_s->current_bss->bssid;
|
||||
} else {
|
||||
if (wpa_s->ap_iface == NULL)
|
||||
return FALSE;
|
||||
|
@ -2451,9 +2452,9 @@ dbus_bool_t wpas_dbus_getter_p2p_group_frequency(
|
|||
u8 role = wpas_get_p2p_role(wpa_s);
|
||||
|
||||
if (role == WPAS_P2P_ROLE_CLIENT) {
|
||||
if (wpa_s->go_params == NULL)
|
||||
if (!wpa_s->current_bss)
|
||||
return FALSE;
|
||||
op_freq = wpa_s->go_params->freq;
|
||||
op_freq = wpa_s->current_bss->freq;
|
||||
} else {
|
||||
if (wpa_s->ap_iface == NULL)
|
||||
return FALSE;
|
||||
|
|
Loading…
Reference in a new issue