1214501Srpaulo/* 2214501Srpaulo * hostapd / Hardware feature query and different modes 3214501Srpaulo * Copyright 2002-2003, Instant802 Networks, Inc. 4214501Srpaulo * Copyright 2005-2006, Devicescape Software, Inc. 5252726Srpaulo * Copyright (c) 2008-2011, Jouni Malinen <j@w1.fi> 6214501Srpaulo * 7214501Srpaulo * This program is free software; you can redistribute it and/or modify 8214501Srpaulo * it under the terms of the GNU General Public License version 2 as 9214501Srpaulo * published by the Free Software Foundation. 10214501Srpaulo * 11214501Srpaulo * Alternatively, this software may be distributed under the terms of BSD 12214501Srpaulo * license. 13214501Srpaulo * 14214501Srpaulo * See README and COPYING for more details. 15214501Srpaulo */ 16214501Srpaulo 17214501Srpaulo#ifndef HW_FEATURES_H 18214501Srpaulo#define HW_FEATURES_H 19214501Srpaulo 20214501Srpaulo#ifdef NEED_AP_MLME 21214501Srpaulovoid hostapd_free_hw_features(struct hostapd_hw_modes *hw_features, 22214501Srpaulo size_t num_hw_features); 23214501Srpauloint hostapd_get_hw_features(struct hostapd_iface *iface); 24214501Srpauloint hostapd_select_hw_mode(struct hostapd_iface *iface); 25214501Srpauloconst char * hostapd_hw_mode_txt(int mode); 26214501Srpauloint hostapd_hw_get_freq(struct hostapd_data *hapd, int chan); 27214501Srpauloint hostapd_hw_get_channel(struct hostapd_data *hapd, int freq); 28214501Srpauloint hostapd_check_ht_capab(struct hostapd_iface *iface); 29252726Srpauloint hostapd_prepare_rates(struct hostapd_iface *iface, 30252726Srpaulo struct hostapd_hw_modes *mode); 31214501Srpaulo#else /* NEED_AP_MLME */ 32214501Srpaulostatic inline void 33214501Srpaulohostapd_free_hw_features(struct hostapd_hw_modes *hw_features, 34214501Srpaulo size_t num_hw_features) 35214501Srpaulo{ 36214501Srpaulo} 37214501Srpaulo 38214501Srpaulostatic inline int hostapd_get_hw_features(struct hostapd_iface *iface) 39214501Srpaulo{ 40214501Srpaulo return -1; 41214501Srpaulo} 42214501Srpaulo 43214501Srpaulostatic inline int hostapd_select_hw_mode(struct hostapd_iface *iface) 44214501Srpaulo{ 45252726Srpaulo return -100; 46214501Srpaulo} 47214501Srpaulo 48214501Srpaulostatic inline const char * hostapd_hw_mode_txt(int mode) 49214501Srpaulo{ 50214501Srpaulo return NULL; 51214501Srpaulo} 52214501Srpaulo 53214501Srpaulostatic inline int hostapd_hw_get_freq(struct hostapd_data *hapd, int chan) 54214501Srpaulo{ 55214501Srpaulo return -1; 56214501Srpaulo} 57214501Srpaulo 58214501Srpaulostatic inline int hostapd_check_ht_capab(struct hostapd_iface *iface) 59214501Srpaulo{ 60214501Srpaulo return 0; 61214501Srpaulo} 62214501Srpaulo 63252726Srpaulostatic inline int hostapd_prepare_rates(struct hostapd_iface *iface, 64252726Srpaulo struct hostapd_hw_modes *mode) 65252726Srpaulo{ 66252726Srpaulo return 0; 67252726Srpaulo} 68252726Srpaulo 69214501Srpaulo#endif /* NEED_AP_MLME */ 70214501Srpaulo 71214501Srpaulo#endif /* HW_FEATURES_H */ 72