D-Bus: Add Signal to notify WPS PBC Overlap event

Signed-off-by: Saurav Babu <saurav.babu@samsung.com>
This commit is contained in:
Saurav Babu 2015-05-28 09:23:07 +05:30 committed by Jouni Malinen
parent 893e2cf961
commit 0a7b2a02eb
3 changed files with 18 additions and 0 deletions

View file

@ -1201,6 +1201,7 @@ int wpa_supplicant_connect(struct wpa_supplicant *wpa_s,
#endif /* CONFIG_P2P */ #endif /* CONFIG_P2P */
#ifdef CONFIG_WPS #ifdef CONFIG_WPS
wpas_wps_pbc_overlap(wpa_s);
wpas_wps_cancel(wpa_s); wpas_wps_cancel(wpa_s);
#endif /* CONFIG_WPS */ #endif /* CONFIG_WPS */
return -1; return -1;

View file

@ -1248,6 +1248,22 @@ int wpas_wps_start_pin(struct wpa_supplicant *wpa_s, const u8 *bssid,
} }
void wpas_wps_pbc_overlap(struct wpa_supplicant *wpa_s)
{
union wps_event_data data;
os_memset(&data, 0, sizeof(data));
data.fail.config_error = WPS_CFG_MULTIPLE_PBC_DETECTED;
data.fail.error_indication = WPS_EI_NO_ERROR;
/*
* Call wpas_notify_wps_event_fail() directly instead of through
* wpa_supplicant_wps_event() which would end up registering unnecessary
* timeouts (those are only for the case where the failure happens
* during an EAP-WSC exchange).
*/
wpas_notify_wps_event_fail(wpa_s, &data.fail);
}
/* Cancel the wps pbc/pin requests */ /* Cancel the wps pbc/pin requests */
int wpas_wps_cancel(struct wpa_supplicant *wpa_s) int wpas_wps_cancel(struct wpa_supplicant *wpa_s)
{ {

View file

@ -33,6 +33,7 @@ int wpas_wps_start_pbc(struct wpa_supplicant *wpa_s, const u8 *bssid,
int p2p_group); int p2p_group);
int wpas_wps_start_pin(struct wpa_supplicant *wpa_s, const u8 *bssid, int wpas_wps_start_pin(struct wpa_supplicant *wpa_s, const u8 *bssid,
const char *pin, int p2p_group, u16 dev_pw_id); const char *pin, int p2p_group, u16 dev_pw_id);
void wpas_wps_pbc_overlap(struct wpa_supplicant *wpa_s);
int wpas_wps_cancel(struct wpa_supplicant *wpa_s); int wpas_wps_cancel(struct wpa_supplicant *wpa_s);
int wpas_wps_start_reg(struct wpa_supplicant *wpa_s, const u8 *bssid, int wpas_wps_start_reg(struct wpa_supplicant *wpa_s, const u8 *bssid,
const char *pin, struct wps_new_ap_settings *settings); const char *pin, struct wps_new_ap_settings *settings);