WPS 2.0: Disable WPS if ignore_broadcast_ssid or WEP is used
[libeap.git] / hostapd / config_file.c
index 5ff6add..a6a3e5c 100644 (file)
@@ -1098,6 +1098,20 @@ static int hostapd_config_check_bss(struct hostapd_bss_config *bss,
        }
 #endif /* CONFIG_IEEE80211N */
 
+#ifdef CONFIG_WPS2
+       if (bss->wps_state && bss->ignore_broadcast_ssid) {
+               wpa_printf(MSG_INFO, "WPS: ignore_broadcast_ssid "
+                          "configuration forced WPS to be disabled");
+               bss->wps_state = 0;
+       }
+
+       if (bss->wps_state && bss->ssid.wep.keys_set && bss->wpa == 0) {
+               wpa_printf(MSG_INFO, "WPS: WEP configuration forced WPS to be "
+                          "disabled");
+               bss->wps_state = 0;
+       }
+#endif /* CONFIG_WPS2 */
+
        return 0;
 }