1214501Srpaulo/* 2214501Srpaulo * hostapd / WPS integration 3214501Srpaulo * Copyright (c) 2008-2010, Jouni Malinen <j@w1.fi> 4214501Srpaulo * 5214501Srpaulo * This program is free software; you can redistribute it and/or modify 6214501Srpaulo * it under the terms of the GNU General Public License version 2 as 7214501Srpaulo * published by the Free Software Foundation. 8214501Srpaulo * 9214501Srpaulo * Alternatively, this software may be distributed under the terms of BSD 10214501Srpaulo * license. 11214501Srpaulo * 12214501Srpaulo * See README and COPYING for more details. 13214501Srpaulo */ 14214501Srpaulo 15214501Srpaulo#ifndef WPS_HOSTAPD_H 16214501Srpaulo#define WPS_HOSTAPD_H 17214501Srpaulo 18214501Srpaulo#ifdef CONFIG_WPS 19214501Srpaulo 20214501Srpauloint hostapd_init_wps(struct hostapd_data *hapd, 21214501Srpaulo struct hostapd_bss_config *conf); 22214501Srpaulovoid hostapd_deinit_wps(struct hostapd_data *hapd); 23214501Srpaulovoid hostapd_update_wps(struct hostapd_data *hapd); 24214501Srpauloint hostapd_wps_add_pin(struct hostapd_data *hapd, const char *uuid, 25214501Srpaulo const char *pin, int timeout); 26214501Srpauloint hostapd_wps_button_pushed(struct hostapd_data *hapd); 27214501Srpauloint hostapd_wps_start_oob(struct hostapd_data *hapd, char *device_type, 28214501Srpaulo char *path, char *method, char *name); 29214501Srpauloint hostapd_wps_get_mib_sta(struct hostapd_data *hapd, const u8 *addr, 30214501Srpaulo char *buf, size_t buflen); 31214501Srpaulovoid hostapd_wps_ap_pin_disable(struct hostapd_data *hapd); 32214501Srpauloconst char * hostapd_wps_ap_pin_random(struct hostapd_data *hapd, int timeout); 33214501Srpauloconst char * hostapd_wps_ap_pin_get(struct hostapd_data *hapd); 34214501Srpauloint hostapd_wps_ap_pin_set(struct hostapd_data *hapd, const char *pin, 35214501Srpaulo int timeout); 36214501Srpaulo 37214501Srpaulo#else /* CONFIG_WPS */ 38214501Srpaulo 39214501Srpaulostatic inline int hostapd_init_wps(struct hostapd_data *hapd, 40214501Srpaulo struct hostapd_bss_config *conf) 41214501Srpaulo{ 42214501Srpaulo return 0; 43214501Srpaulo} 44214501Srpaulo 45214501Srpaulostatic inline void hostapd_deinit_wps(struct hostapd_data *hapd) 46214501Srpaulo{ 47214501Srpaulo} 48214501Srpaulo 49214501Srpaulostatic inline void hostapd_update_wps(struct hostapd_data *hapd) 50214501Srpaulo{ 51214501Srpaulo} 52214501Srpaulo 53214501Srpaulostatic inline int hostapd_wps_get_mib_sta(struct hostapd_data *hapd, 54214501Srpaulo const u8 *addr, 55214501Srpaulo char *buf, size_t buflen) 56214501Srpaulo{ 57214501Srpaulo return 0; 58214501Srpaulo} 59214501Srpaulo 60214501Srpaulostatic inline int hostapd_wps_button_pushed(struct hostapd_data *hapd) 61214501Srpaulo{ 62214501Srpaulo return 0; 63214501Srpaulo} 64214501Srpaulo 65214501Srpaulo#endif /* CONFIG_WPS */ 66214501Srpaulo 67214501Srpaulo#endif /* WPS_HOSTAPD_H */ 68