WPS: Fix return value when context is not valid

If WPS isn't enabled, hostapd_cli returns 'OK' even though WPS doesn't
get activated because WPS context is not valid:

$ hostapd_cli wps_pbc
Selected interface 'wlan0'
OK

$ hostapd_cli wps_cancel
Selected interface 'wlan0'
OK

Fix this by returning appropriate error when WPS fails to activate:

$ hostapd_cli wps_pbc
Selected interface 'wlan0'
FAIL

$ hostapd_cli wps_cancel
Selected interface 'wlan0'
FAIL

Signed-off-by: Petar Koretic <petar.koretic@sartura.hr>
CC: Luka Perkov <luka.perkov@sartura.hr>
This commit is contained in:
Petar Koretic 2014-05-14 13:51:04 +00:00 committed by Jouni Malinen
parent 4ef7053119
commit c78c6b73fa
1 changed files with 2 additions and 2 deletions

View File

@ -1290,7 +1290,7 @@ static int wps_button_pushed(struct hostapd_data *hapd, void *ctx)
{
const u8 *p2p_dev_addr = ctx;
if (hapd->wps == NULL)
return 0;
return -1;
return wps_registrar_button_pushed(hapd->wps->registrar, p2p_dev_addr);
}
@ -1306,7 +1306,7 @@ int hostapd_wps_button_pushed(struct hostapd_data *hapd,
static int wps_cancel(struct hostapd_data *hapd, void *ctx)
{
if (hapd->wps == NULL)
return 0;
return -1;
wps_registrar_wps_cancel(hapd->wps->registrar);
ap_for_each_sta(hapd, ap_sta_wps_cancel, NULL);