From: Petar Koretic Date: Wed, 14 May 2014 13:51:04 +0000 (+0000) Subject: WPS: Fix return value when context is not valid X-Git-Tag: hostap_2_2~120 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c78c6b73fa318bb1ecd39b65a1e641f63eb4426c;p=thirdparty%2Fhostap.git 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 CC: Luka Perkov --- diff --git a/src/ap/wps_hostapd.c b/src/ap/wps_hostapd.c index f16567013..6f16f50ec 100644 --- a/src/ap/wps_hostapd.c +++ b/src/ap/wps_hostapd.c @@ -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);