blob: c797d2e9e796eac5050c96f0ebf60334121ba250 [file] [log] [blame]
lh9ed821d2023-04-07 01:36:19 -07001/*
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 *da, 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 */