Home | History | Annotate | Download | only in wpa_supplicant
      1 /*
      2  * WPA Supplicant - Client mode MLME
      3  * Copyright (c) 2003-2006, Jouni Malinen <j (at) w1.fi>
      4  * Copyright (c) 2004, Instant802 Networks, Inc.
      5  * Copyright (c) 2005-2006, Devicescape Software, Inc.
      6  *
      7  * This program is free software; you can redistribute it and/or modify
      8  * it under the terms of the GNU General Public License version 2 as
      9  * published by the Free Software Foundation.
     10  *
     11  * Alternatively, this software may be distributed under the terms of BSD
     12  * license.
     13  *
     14  * See README and COPYING for more details.
     15  */
     16 
     17 #ifndef MLME_H
     18 #define MLME_H
     19 
     20 #ifdef CONFIG_CLIENT_MLME
     21 
     22 int ieee80211_sta_init(struct wpa_supplicant *wpa_s);
     23 void ieee80211_sta_deinit(struct wpa_supplicant *wpa_s);
     24 int ieee80211_sta_req_scan(struct wpa_supplicant *wpa_s, const u8 *ssid,
     25 			   size_t ssid_len);
     26 int ieee80211_sta_deauthenticate(struct wpa_supplicant *wpa_s, u16 reason);
     27 int ieee80211_sta_disassociate(struct wpa_supplicant *wpa_s, u16 reason);
     28 int ieee80211_sta_associate(struct wpa_supplicant *wpa_s,
     29 			    struct wpa_driver_associate_params *params);
     30 int ieee80211_sta_get_ssid(struct wpa_supplicant *wpa_s, u8 *ssid,
     31 			   size_t *len);
     32 void ieee80211_sta_free_hw_features(struct wpa_hw_modes *hw_features,
     33 				    size_t num_hw_features);
     34 void ieee80211_sta_rx(struct wpa_supplicant *wpa_s, const u8 *buf, size_t len,
     35 		      struct ieee80211_rx_status *rx_status);
     36 int ieee80211_sta_get_scan_results(struct wpa_supplicant *wpa_s,
     37 				   struct wpa_scan_result *results,
     38 				   size_t max_size);
     39 
     40 #else /* CONFIG_CLIENT_MLME */
     41 
     42 static inline int ieee80211_sta_init(struct wpa_supplicant *wpa_s)
     43 {
     44 	return 0;
     45 }
     46 
     47 static inline void ieee80211_sta_deinit(struct wpa_supplicant *wpa_s)
     48 {
     49 }
     50 
     51 static inline int ieee80211_sta_req_scan(struct wpa_supplicant *wpa_s,
     52 					 const u8 *ssid, size_t ssid_len)
     53 {
     54 	return -1;
     55 }
     56 
     57 static inline int ieee80211_sta_deauthenticate(struct wpa_supplicant *wpa_s,
     58 					       u16 reason)
     59 {
     60 	return -1;
     61 }
     62 
     63 static inline int ieee80211_sta_disassociate(struct wpa_supplicant *wpa_s,
     64 					     u16 reason)
     65 {
     66 	return -1;
     67 }
     68 
     69 static inline int
     70 ieee80211_sta_associate(struct wpa_supplicant *wpa_s,
     71 			struct wpa_driver_associate_params *params)
     72 {
     73 	return -1;
     74 }
     75 
     76 static inline int ieee80211_sta_get_ssid(struct wpa_supplicant *wpa_s,
     77 					 u8 *ssid, size_t *len)
     78 {
     79 	return -1;
     80 }
     81 
     82 static inline void
     83 ieee80211_sta_free_hw_features(struct wpa_hw_modes *hw_features,
     84 			       size_t num_hw_features)
     85 {
     86 }
     87 
     88 static inline void
     89 ieee80211_sta_rx(struct wpa_supplicant *wpa_s, const u8 *buf, size_t len,
     90 		 struct ieee80211_rx_status *rx_status)
     91 {
     92 }
     93 
     94 static inline int
     95 ieee80211_sta_get_scan_results(struct wpa_supplicant *wpa_s,
     96 			       struct wpa_scan_result *results,
     97 			       size_t max_size)
     98 {
     99 	return -1;
    100 }
    101 
    102 #endif /* CONFIG_CLIENT_MLME */
    103 
    104 #endif /* MLME_H */
    105