xref: /freebsd/contrib/wpa/src/ap/wps_hostapd.h (revision 884a2a699669ec61e2366e3e358342dbc94be24a)
1 /*
2  * hostapd / WPS integration
3  * Copyright (c) 2008-2010, 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_HOSTAPD_H
16 #define WPS_HOSTAPD_H
17 
18 #ifdef CONFIG_WPS
19 
20 int hostapd_init_wps(struct hostapd_data *hapd,
21 		     struct hostapd_bss_config *conf);
22 void hostapd_deinit_wps(struct hostapd_data *hapd);
23 void hostapd_update_wps(struct hostapd_data *hapd);
24 int hostapd_wps_add_pin(struct hostapd_data *hapd, const char *uuid,
25 			const char *pin, int timeout);
26 int hostapd_wps_button_pushed(struct hostapd_data *hapd);
27 int hostapd_wps_start_oob(struct hostapd_data *hapd, char *device_type,
28 			  char *path, char *method, char *name);
29 int hostapd_wps_get_mib_sta(struct hostapd_data *hapd, const u8 *addr,
30 			    char *buf, size_t buflen);
31 void hostapd_wps_ap_pin_disable(struct hostapd_data *hapd);
32 const char * hostapd_wps_ap_pin_random(struct hostapd_data *hapd, int timeout);
33 const char * hostapd_wps_ap_pin_get(struct hostapd_data *hapd);
34 int hostapd_wps_ap_pin_set(struct hostapd_data *hapd, const char *pin,
35 			   int timeout);
36 
37 #else /* CONFIG_WPS */
38 
39 static inline int hostapd_init_wps(struct hostapd_data *hapd,
40 				   struct hostapd_bss_config *conf)
41 {
42 	return 0;
43 }
44 
45 static inline void hostapd_deinit_wps(struct hostapd_data *hapd)
46 {
47 }
48 
49 static inline void hostapd_update_wps(struct hostapd_data *hapd)
50 {
51 }
52 
53 static inline int hostapd_wps_get_mib_sta(struct hostapd_data *hapd,
54 					  const u8 *addr,
55 					  char *buf, size_t buflen)
56 {
57 	return 0;
58 }
59 
60 static inline int hostapd_wps_button_pushed(struct hostapd_data *hapd)
61 {
62 	return 0;
63 }
64 
65 #endif /* CONFIG_WPS */
66 
67 #endif /* WPS_HOSTAPD_H */
68