1/* 2 * wpa_supplicant / WPS integration 3 * Copyright (c) 2008, Jouni Malinen <j@w1.fi> 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License version 2 as 7 * published by the Free Software Foundation. 8 * 9 * Alternatively, this software may be distributed under the terms of BSD 10 * license. 11 * 12 * See README and COPYING for more details. 13 */ 14 15#ifndef WPS_SUPPLICANT_H 16#define WPS_SUPPLICANT_H 17 18#ifdef CONFIG_WPS 19 20#include "wps/wps.h" 21#include "wps/wps_defs.h" 22 23int wpas_wps_init(struct wpa_supplicant *wpa_s); 24void wpas_wps_deinit(struct wpa_supplicant *wpa_s); 25int wpas_wps_eapol_cb(struct wpa_supplicant *wpa_s); 26enum wps_request_type wpas_wps_get_req_type(struct wpa_ssid *ssid); 27int wpas_wps_start_pbc(struct wpa_supplicant *wpa_s, const u8 *bssid); 28int wpas_wps_start_pin(struct wpa_supplicant *wpa_s, const u8 *bssid, 29 const char *pin); 30int wpas_wps_start_reg(struct wpa_supplicant *wpa_s, const u8 *bssid, 31 const char *pin); 32int wpas_wps_ssid_bss_match(struct wpa_supplicant *wpa_s, 33 struct wpa_ssid *ssid, struct wpa_scan_res *bss); 34int wpas_wps_ssid_wildcard_ok(struct wpa_supplicant *wpa_s, 35 struct wpa_ssid *ssid, struct wpa_scan_res *bss); 36int wpas_wps_scan_pbc_overlap(struct wpa_supplicant *wpa_s, 37 struct wpa_scan_res *selected, 38 struct wpa_ssid *ssid); 39void wpas_wps_notify_scan_results(struct wpa_supplicant *wpa_s); 40int wpas_wps_searching(struct wpa_supplicant *wpa_s); 41 42#else /* CONFIG_WPS */ 43 44static inline int wpas_wps_init(struct wpa_supplicant *wpa_s) 45{ 46 return 0; 47} 48 49static inline void wpas_wps_deinit(struct wpa_supplicant *wpa_s) 50{ 51} 52 53static inline int wpas_wps_eapol_cb(struct wpa_supplicant *wpa_s) 54{ 55 return 0; 56} 57 58static inline u8 wpas_wps_get_req_type(struct wpa_ssid *ssid) 59{ 60 return 0; 61} 62 63static inline int wpas_wps_ssid_bss_match(struct wpa_supplicant *wpa_s, 64 struct wpa_ssid *ssid, 65 struct wpa_scan_res *bss) 66{ 67 return -1; 68} 69 70static inline int wpas_wps_ssid_wildcard_ok(struct wpa_supplicant *wpa_s, 71 struct wpa_ssid *ssid, 72 struct wpa_scan_res *bss) 73{ 74 return 0; 75} 76 77static inline int wpas_wps_scan_pbc_overlap(struct wpa_supplicant *wpa_s, 78 struct wpa_scan_res *selected, 79 struct wpa_ssid *ssid) 80{ 81 return 0; 82} 83 84static inline void wpas_wps_notify_scan_results(struct wpa_supplicant *wpa_s) 85{ 86} 87 88static inline int wpas_wps_searching(struct wpa_supplicant *wpa_s) 89{ 90 return 0; 91} 92 93#endif /* CONFIG_WPS */ 94 95#endif /* WPS_SUPPLICANT_H */ 96