1/*
2 * WPA Supplicant / dbus-based control interface
3 * Copyright (c) 2006, Dan Williams <dcbw@redhat.com> and Red Hat, Inc.
4 * Copyright (c) 2009-2010, Witold Sowa <witold.sowa@gmail.com>
5 *
6 * This software may be distributed under the terms of the BSD license.
7 * See README for more details.
8 */
9
10#ifndef CTRL_IFACE_DBUS_NEW_HANDLERS_H
11#define CTRL_IFACE_DBUS_NEW_HANDLERS_H
12
13struct network_handler_args {
14	struct wpa_supplicant *wpa_s;
15	struct wpa_ssid *ssid;
16};
17
18struct bss_handler_args {
19	struct wpa_supplicant *wpa_s;
20	unsigned int id;
21};
22
23dbus_bool_t wpas_dbus_simple_property_getter(DBusMessageIter *iter,
24					     const int type,
25					     const void *val,
26					     DBusError *error);
27
28dbus_bool_t wpas_dbus_simple_property_setter(DBusMessageIter *iter,
29					     DBusError *error,
30					     const int type, void *val);
31
32dbus_bool_t wpas_dbus_simple_array_property_getter(DBusMessageIter *iter,
33						   const int type,
34						   const void *array,
35						   size_t array_len,
36						   DBusError *error);
37
38dbus_bool_t wpas_dbus_simple_array_array_property_getter(DBusMessageIter *iter,
39							 const int type,
40							 struct wpabuf **array,
41							 size_t array_len,
42							 DBusError *error);
43
44DBusMessage * wpas_dbus_handler_create_interface(DBusMessage *message,
45						 struct wpa_global *global);
46
47DBusMessage * wpas_dbus_handler_remove_interface(DBusMessage *message,
48						 struct wpa_global *global);
49
50DBusMessage * wpas_dbus_handler_get_interface(DBusMessage *message,
51					      struct wpa_global *global);
52
53dbus_bool_t wpas_dbus_getter_debug_level(DBusMessageIter *iter,
54					 DBusError *error,
55					 void *user_data);
56
57dbus_bool_t wpas_dbus_getter_debug_timestamp(DBusMessageIter *iter,
58                                             DBusError *error,
59                                             void *user_data);
60
61dbus_bool_t wpas_dbus_getter_debug_show_keys(DBusMessageIter *iter,
62					     DBusError *error,
63					     void *user_data);
64
65dbus_bool_t wpas_dbus_setter_debug_level(DBusMessageIter *iter,
66					 DBusError *error, void *user_data);
67
68dbus_bool_t wpas_dbus_setter_debug_timestamp(DBusMessageIter *iter,
69					     DBusError *error,
70					     void *user_data);
71
72dbus_bool_t wpas_dbus_setter_debug_show_keys(DBusMessageIter *iter,
73					     DBusError *error,
74					     void *user_data);
75
76dbus_bool_t wpas_dbus_getter_interfaces(DBusMessageIter *iter,
77					DBusError *error,
78					void *user_data);
79
80dbus_bool_t wpas_dbus_getter_eap_methods(DBusMessageIter *iter,
81					 DBusError *error, void *user_data);
82
83dbus_bool_t wpas_dbus_getter_global_capabilities(DBusMessageIter *iter,
84						 DBusError *error,
85						 void *user_data);
86
87DBusMessage * wpas_dbus_handler_scan(DBusMessage *message,
88				     struct wpa_supplicant *wpa_s);
89
90DBusMessage * wpas_dbus_handler_disconnect(DBusMessage *message,
91					   struct wpa_supplicant *wpa_s);
92
93dbus_bool_t set_network_properties(struct wpa_supplicant *wpa_s,
94				   struct wpa_ssid *ssid,
95				   DBusMessageIter *iter,
96				   DBusError *error);
97
98DBusMessage * wpas_dbus_handler_add_network(DBusMessage *message,
99					    struct wpa_supplicant *wpa_s);
100
101DBusMessage * wpas_dbus_handler_reassociate(DBusMessage *message,
102					    struct wpa_supplicant *wpa_s);
103
104DBusMessage * wpas_dbus_handler_remove_network(DBusMessage *message,
105					       struct wpa_supplicant *wpa_s);
106
107DBusMessage * wpas_dbus_handler_remove_all_networks(
108	DBusMessage *message, struct wpa_supplicant *wpa_s);
109
110DBusMessage * wpas_dbus_handler_select_network(DBusMessage *message,
111					       struct wpa_supplicant *wpa_s);
112
113DBusMessage * wpas_dbus_handler_network_reply(DBusMessage *message,
114					      struct wpa_supplicant *wpa_s);
115
116DBusMessage * wpas_dbus_handler_add_blob(DBusMessage *message,
117					 struct wpa_supplicant *wpa_s);
118
119DBusMessage * wpas_dbus_handler_get_blob(DBusMessage *message,
120					 struct wpa_supplicant *wpa_s);
121
122DBusMessage * wpas_dbus_handler_remove_blob(DBusMessage *message,
123					    struct wpa_supplicant *wpa_s);
124
125DBusMessage * wpas_dbus_handler_flush_bss(DBusMessage *message,
126					  struct wpa_supplicant *wpa_s);
127
128DBusMessage * wpas_dbus_handler_autoscan(DBusMessage *message,
129					 struct wpa_supplicant *wpa_s);
130
131dbus_bool_t wpas_dbus_getter_capabilities(DBusMessageIter *iter,
132					  DBusError *error, void *user_data);
133
134dbus_bool_t wpas_dbus_getter_state(DBusMessageIter *iter, DBusError *error,
135				   void *user_data);
136
137dbus_bool_t wpas_dbus_getter_scanning(DBusMessageIter *iter, DBusError *error,
138				      void *user_data);
139
140dbus_bool_t wpas_dbus_getter_ap_scan(DBusMessageIter *iter, DBusError *error,
141				     void *user_data);
142
143dbus_bool_t wpas_dbus_setter_ap_scan(DBusMessageIter *iter, DBusError *error,
144				     void *user_data);
145
146dbus_bool_t wpas_dbus_getter_fast_reauth(DBusMessageIter *iter,
147					 DBusError *error,
148					 void *user_data);
149
150dbus_bool_t wpas_dbus_setter_fast_reauth(DBusMessageIter *iter,
151					 DBusError *error,
152					 void *user_data);
153
154dbus_bool_t wpas_dbus_getter_disconnect_reason(DBusMessageIter *iter,
155					       DBusError *error,
156					       void *user_data);
157
158dbus_bool_t wpas_dbus_getter_bss_expire_age(DBusMessageIter *iter,
159					    DBusError *error, void *user_data);
160
161dbus_bool_t wpas_dbus_setter_bss_expire_age(DBusMessageIter *iter,
162					    DBusError *error,
163					    void *user_data);
164
165dbus_bool_t wpas_dbus_getter_bss_expire_count(DBusMessageIter *iter,
166					      DBusError *error,
167					      void *user_data);
168
169dbus_bool_t wpas_dbus_setter_bss_expire_count(DBusMessageIter *iter,
170					      DBusError *error,
171					      void *user_data);
172
173dbus_bool_t wpas_dbus_getter_country(DBusMessageIter *iter, DBusError *error,
174				     void *user_data);
175
176dbus_bool_t wpas_dbus_setter_country(DBusMessageIter *iter, DBusError *error,
177				     void *user_data);
178
179dbus_bool_t wpas_dbus_getter_scan_interval(DBusMessageIter *iter,
180					   DBusError *error,
181					   void *user_data);
182
183dbus_bool_t wpas_dbus_setter_scan_interval(DBusMessageIter *iter,
184					   DBusError *error,
185					   void *user_data);
186
187dbus_bool_t wpas_dbus_getter_ifname(DBusMessageIter *iter, DBusError *error,
188				    void *user_data);
189
190dbus_bool_t wpas_dbus_getter_driver(DBusMessageIter *iter, DBusError *error,
191				    void *user_data);
192
193dbus_bool_t wpas_dbus_getter_bridge_ifname(DBusMessageIter *iter,
194					   DBusError *error,
195					   void *user_data);
196
197dbus_bool_t wpas_dbus_getter_current_bss(DBusMessageIter *iter,
198					 DBusError *error,
199					 void *user_data);
200
201dbus_bool_t wpas_dbus_getter_current_network(DBusMessageIter *iter,
202					     DBusError *error,
203					     void *user_data);
204
205dbus_bool_t wpas_dbus_getter_current_auth_mode(DBusMessageIter *iter,
206					       DBusError *error,
207					       void *user_data);
208
209dbus_bool_t wpas_dbus_getter_bsss(DBusMessageIter *iter, DBusError *error,
210				  void *user_data);
211
212dbus_bool_t wpas_dbus_getter_networks(DBusMessageIter *iter, DBusError *error,
213				      void *user_data);
214
215dbus_bool_t wpas_dbus_getter_blobs(DBusMessageIter *iter, DBusError *error,
216				   void *user_data);
217
218dbus_bool_t wpas_dbus_getter_bss_bssid(DBusMessageIter *iter, DBusError *error,
219				       void *user_data);
220
221dbus_bool_t wpas_dbus_getter_bss_ssid(DBusMessageIter *iter, DBusError *error,
222				      void *user_data);
223
224dbus_bool_t wpas_dbus_getter_bss_privacy(DBusMessageIter *iter,
225					 DBusError *error, void *user_data);
226
227dbus_bool_t wpas_dbus_getter_bss_mode(DBusMessageIter *iter, DBusError *error,
228				      void *user_data);
229
230dbus_bool_t wpas_dbus_getter_bss_signal(DBusMessageIter *iter,
231					DBusError *error, void *user_data);
232
233dbus_bool_t wpas_dbus_getter_bss_frequency(DBusMessageIter *iter,
234					   DBusError *error, void *user_data);
235
236dbus_bool_t wpas_dbus_getter_bss_rates(DBusMessageIter *iter,
237				       DBusError *error, void *user_data);
238
239dbus_bool_t wpas_dbus_getter_bss_wpa(DBusMessageIter *iter, DBusError *error,
240				     void *user_data);
241
242dbus_bool_t wpas_dbus_getter_bss_rsn(DBusMessageIter *iter, DBusError *error,
243				     void *user_data);
244
245dbus_bool_t wpas_dbus_getter_bss_wps(DBusMessageIter *iter, DBusError *error,
246				     void *user_data);
247
248dbus_bool_t wpas_dbus_getter_bss_ies(DBusMessageIter *iter, DBusError *error,
249				     void *user_data);
250
251dbus_bool_t wpas_dbus_getter_enabled(DBusMessageIter *iter, DBusError *error,
252				     void *user_data);
253
254dbus_bool_t wpas_dbus_setter_enabled(DBusMessageIter *iter, DBusError *error,
255				     void *user_data);
256
257dbus_bool_t wpas_dbus_getter_network_properties(DBusMessageIter *iter,
258						DBusError *error,
259						void *user_data);
260
261dbus_bool_t wpas_dbus_setter_network_properties(DBusMessageIter *iter,
262						DBusError *error,
263						void *user_data);
264
265DBusMessage * wpas_dbus_handler_wps_start(DBusMessage *message,
266					  struct wpa_supplicant *wpa_s);
267
268dbus_bool_t wpas_dbus_getter_process_credentials(DBusMessageIter *iter,
269	DBusError *error, void *user_data);
270
271dbus_bool_t wpas_dbus_setter_process_credentials(DBusMessageIter *iter,
272						 DBusError *error,
273						 void *user_data);
274
275DBusMessage * wpas_dbus_error_invalid_args(DBusMessage *message,
276					   const char *arg);
277DBusMessage * wpas_dbus_error_unknown_error(DBusMessage *message,
278					    const char *arg);
279
280DBusMessage * wpas_dbus_handler_subscribe_preq(
281	DBusMessage *message, struct wpa_supplicant *wpa_s);
282DBusMessage * wpas_dbus_handler_unsubscribe_preq(
283	DBusMessage *message, struct wpa_supplicant *wpa_s);
284
285#endif /* CTRL_IFACE_DBUS_HANDLERS_NEW_H */
286