1/* 2 * wpa_supplicant - SME 3 * Copyright (c) 2009-2010, Jouni Malinen <j@w1.fi> 4 * 5 * This software may be distributed under the terms of the BSD license. 6 * See README for more details. 7 */ 8 9#ifndef SME_H 10#define SME_H 11 12#ifdef CONFIG_SME 13 14void sme_authenticate(struct wpa_supplicant *wpa_s, 15 struct wpa_bss *bss, struct wpa_ssid *ssid); 16void sme_associate(struct wpa_supplicant *wpa_s, enum wpas_mode mode, 17 const u8 *bssid, u16 auth_type); 18void sme_event_auth(struct wpa_supplicant *wpa_s, union wpa_event_data *data); 19int sme_update_ft_ies(struct wpa_supplicant *wpa_s, const u8 *md, 20 const u8 *ies, size_t ies_len); 21void sme_event_assoc_reject(struct wpa_supplicant *wpa_s, 22 union wpa_event_data *data); 23void sme_event_auth_timed_out(struct wpa_supplicant *wpa_s, 24 union wpa_event_data *data); 25void sme_event_assoc_timed_out(struct wpa_supplicant *wpa_s, 26 union wpa_event_data *data); 27void sme_event_disassoc(struct wpa_supplicant *wpa_s, 28 struct disassoc_info *info); 29void sme_event_unprot_disconnect(struct wpa_supplicant *wpa_s, const u8 *sa, 30 const u8 *da, u16 reason_code); 31void sme_event_ch_switch(struct wpa_supplicant *wpa_s); 32void sme_sa_query_rx(struct wpa_supplicant *wpa_s, const u8 *sa, 33 const u8 *data, size_t len); 34void sme_state_changed(struct wpa_supplicant *wpa_s); 35void sme_disassoc_while_authenticating(struct wpa_supplicant *wpa_s, 36 const u8 *prev_pending_bssid); 37void sme_clear_on_disassoc(struct wpa_supplicant *wpa_s); 38void sme_deinit(struct wpa_supplicant *wpa_s); 39 40int sme_proc_obss_scan(struct wpa_supplicant *wpa_s); 41void sme_sched_obss_scan(struct wpa_supplicant *wpa_s, int enable); 42void sme_external_auth_trigger(struct wpa_supplicant *wpa_s, 43 union wpa_event_data *data); 44void sme_external_auth_mgmt_rx(struct wpa_supplicant *wpa_s, 45 const u8 *auth_frame, size_t len); 46 47#else /* CONFIG_SME */ 48 49static inline void sme_authenticate(struct wpa_supplicant *wpa_s, 50 struct wpa_bss *bss, 51 struct wpa_ssid *ssid) 52{ 53} 54 55static inline void sme_event_auth(struct wpa_supplicant *wpa_s, 56 union wpa_event_data *data) 57{ 58} 59 60static inline int sme_update_ft_ies(struct wpa_supplicant *wpa_s, const u8 *md, 61 const u8 *ies, size_t ies_len) 62{ 63 return -1; 64} 65 66 67static inline void sme_event_assoc_reject(struct wpa_supplicant *wpa_s, 68 union wpa_event_data *data) 69{ 70} 71 72static inline void sme_event_auth_timed_out(struct wpa_supplicant *wpa_s, 73 union wpa_event_data *data) 74{ 75} 76 77static inline void sme_event_assoc_timed_out(struct wpa_supplicant *wpa_s, 78 union wpa_event_data *data) 79{ 80} 81 82static inline void sme_event_disassoc(struct wpa_supplicant *wpa_s, 83 struct disassoc_info *info) 84{ 85} 86 87static inline void sme_event_unprot_disconnect(struct wpa_supplicant *wpa_s, 88 const u8 *sa, const u8 *da, 89 u16 reason_code) 90{ 91} 92 93static inline void sme_event_ch_switch(struct wpa_supplicant *wpa_s) 94{ 95} 96 97static inline void sme_state_changed(struct wpa_supplicant *wpa_s) 98{ 99} 100 101static inline void 102sme_disassoc_while_authenticating(struct wpa_supplicant *wpa_s, 103 const u8 *prev_pending_bssid) 104{ 105} 106 107static inline void sme_clear_on_disassoc(struct wpa_supplicant *wpa_s) 108{ 109} 110 111static inline void sme_deinit(struct wpa_supplicant *wpa_s) 112{ 113} 114 115static inline int sme_proc_obss_scan(struct wpa_supplicant *wpa_s) 116{ 117 return 0; 118} 119 120static inline void sme_sched_obss_scan(struct wpa_supplicant *wpa_s, 121 int enable) 122{ 123} 124 125static inline void sme_external_auth_trigger(struct wpa_supplicant *wpa_s, 126 union wpa_event_data *data) 127{ 128} 129 130static inline void sme_external_auth_mgmt_rx(struct wpa_supplicant *wpa_s, 131 const u8 *auth_frame, size_t len) 132{ 133} 134 135#endif /* CONFIG_SME */ 136 137#endif /* SME_H */ 138