0713ffcc1e02782d19fe992dfe16dbd8dac4db84
[mech_eap.git] / wpa_supplicant / dbus / dbus_new_handlers.h
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
13 #include "dbus_new_helpers.h"
14
15 struct network_handler_args {
16         struct wpa_supplicant *wpa_s;
17         struct wpa_ssid *ssid;
18 };
19
20 struct bss_handler_args {
21         struct wpa_supplicant *wpa_s;
22         unsigned int id;
23 };
24
25 dbus_bool_t wpas_dbus_simple_property_getter(DBusMessageIter *iter,
26                                              const int type,
27                                              const void *val,
28                                              DBusError *error);
29
30 dbus_bool_t wpas_dbus_simple_property_setter(DBusMessageIter *iter,
31                                              DBusError *error,
32                                              const int type, void *val);
33
34 dbus_bool_t wpas_dbus_simple_array_property_getter(DBusMessageIter *iter,
35                                                    const int type,
36                                                    const void *array,
37                                                    size_t array_len,
38                                                    DBusError *error);
39
40 dbus_bool_t wpas_dbus_simple_array_array_property_getter(DBusMessageIter *iter,
41                                                          const int type,
42                                                          struct wpabuf **array,
43                                                          size_t array_len,
44                                                          DBusError *error);
45
46 DBusMessage * wpas_dbus_handler_create_interface(DBusMessage *message,
47                                                  struct wpa_global *global);
48
49 DBusMessage * wpas_dbus_handler_remove_interface(DBusMessage *message,
50                                                  struct wpa_global *global);
51
52 DBusMessage * wpas_dbus_handler_get_interface(DBusMessage *message,
53                                               struct wpa_global *global);
54
55 DBusMessage * wpas_dbus_handler_expect_disconnect(DBusMessage *message,
56                                                   struct wpa_global *global);
57
58 DECLARE_ACCESSOR(wpas_dbus_getter_debug_level);
59 DECLARE_ACCESSOR(wpas_dbus_getter_debug_timestamp);
60 DECLARE_ACCESSOR(wpas_dbus_getter_debug_show_keys);
61 DECLARE_ACCESSOR(wpas_dbus_setter_debug_level);
62 DECLARE_ACCESSOR(wpas_dbus_setter_debug_timestamp);
63 DECLARE_ACCESSOR(wpas_dbus_setter_debug_show_keys);
64 DECLARE_ACCESSOR(wpas_dbus_getter_interfaces);
65 DECLARE_ACCESSOR(wpas_dbus_getter_eap_methods);
66 DECLARE_ACCESSOR(wpas_dbus_getter_global_capabilities);
67
68 DBusMessage * wpas_dbus_handler_scan(DBusMessage *message,
69                                      struct wpa_supplicant *wpa_s);
70
71 DBusMessage * wpas_dbus_handler_signal_poll(DBusMessage *message,
72                                             struct wpa_supplicant *wpa_s);
73
74 DBusMessage * wpas_dbus_handler_disconnect(DBusMessage *message,
75                                            struct wpa_supplicant *wpa_s);
76
77 dbus_bool_t set_network_properties(struct wpa_supplicant *wpa_s,
78                                    struct wpa_ssid *ssid,
79                                    DBusMessageIter *iter,
80                                    DBusError *error);
81
82 DBusMessage * wpas_dbus_handler_add_network(DBusMessage *message,
83                                             struct wpa_supplicant *wpa_s);
84
85 DBusMessage * wpas_dbus_handler_reassociate(DBusMessage *message,
86                                             struct wpa_supplicant *wpa_s);
87
88 DBusMessage * wpas_dbus_handler_reattach(DBusMessage *message,
89                                          struct wpa_supplicant *wpa_s);
90
91 DBusMessage * wpas_dbus_handler_reconnect(DBusMessage *message,
92                                           struct wpa_supplicant *wpa_s);
93
94 DBusMessage * wpas_dbus_handler_remove_network(DBusMessage *message,
95                                                struct wpa_supplicant *wpa_s);
96
97 DBusMessage * wpas_dbus_handler_remove_all_networks(
98         DBusMessage *message, struct wpa_supplicant *wpa_s);
99
100 DBusMessage * wpas_dbus_handler_select_network(DBusMessage *message,
101                                                struct wpa_supplicant *wpa_s);
102
103 DBusMessage * wpas_dbus_handler_network_reply(DBusMessage *message,
104                                               struct wpa_supplicant *wpa_s);
105
106 DBusMessage * wpas_dbus_handler_add_blob(DBusMessage *message,
107                                          struct wpa_supplicant *wpa_s);
108
109 DBusMessage * wpas_dbus_handler_get_blob(DBusMessage *message,
110                                          struct wpa_supplicant *wpa_s);
111
112 DBusMessage * wpas_dbus_handler_remove_blob(DBusMessage *message,
113                                             struct wpa_supplicant *wpa_s);
114
115 DBusMessage * wpas_dbus_handler_set_pkcs11_engine_and_module_path(
116         DBusMessage *message, struct wpa_supplicant *wpa_s);
117
118 DBusMessage * wpas_dbus_handler_flush_bss(DBusMessage *message,
119                                           struct wpa_supplicant *wpa_s);
120
121 DBusMessage * wpas_dbus_handler_autoscan(DBusMessage *message,
122                                          struct wpa_supplicant *wpa_s);
123
124 DBusMessage * wpas_dbus_handler_eap_logoff(DBusMessage *message,
125                                            struct wpa_supplicant *wpa_s);
126
127 DBusMessage * wpas_dbus_handler_eap_logon(DBusMessage *message,
128                                           struct wpa_supplicant *wpa_s);
129
130 DECLARE_ACCESSOR(wpas_dbus_getter_capabilities);
131 DECLARE_ACCESSOR(wpas_dbus_getter_state);
132 DECLARE_ACCESSOR(wpas_dbus_getter_scanning);
133 DECLARE_ACCESSOR(wpas_dbus_getter_ap_scan);
134 DECLARE_ACCESSOR(wpas_dbus_setter_ap_scan);
135 DECLARE_ACCESSOR(wpas_dbus_getter_fast_reauth);
136 DECLARE_ACCESSOR(wpas_dbus_setter_fast_reauth);
137 DECLARE_ACCESSOR(wpas_dbus_getter_disconnect_reason);
138 DECLARE_ACCESSOR(wpas_dbus_getter_disassociate_reason);
139 DECLARE_ACCESSOR(wpas_dbus_getter_bss_expire_age);
140 DECLARE_ACCESSOR(wpas_dbus_setter_bss_expire_age);
141 DECLARE_ACCESSOR(wpas_dbus_getter_bss_expire_count);
142 DECLARE_ACCESSOR(wpas_dbus_setter_bss_expire_count);
143 DECLARE_ACCESSOR(wpas_dbus_getter_country);
144 DECLARE_ACCESSOR(wpas_dbus_setter_country);
145 DECLARE_ACCESSOR(wpas_dbus_getter_scan_interval);
146 DECLARE_ACCESSOR(wpas_dbus_setter_scan_interval);
147 DECLARE_ACCESSOR(wpas_dbus_getter_ifname);
148 DECLARE_ACCESSOR(wpas_dbus_getter_driver);
149 DECLARE_ACCESSOR(wpas_dbus_getter_bridge_ifname);
150 DECLARE_ACCESSOR(wpas_dbus_getter_current_bss);
151 DECLARE_ACCESSOR(wpas_dbus_getter_current_network);
152 DECLARE_ACCESSOR(wpas_dbus_getter_current_auth_mode);
153 DECLARE_ACCESSOR(wpas_dbus_getter_bsss);
154 DECLARE_ACCESSOR(wpas_dbus_getter_networks);
155 DECLARE_ACCESSOR(wpas_dbus_getter_pkcs11_engine_path);
156 DECLARE_ACCESSOR(wpas_dbus_getter_pkcs11_module_path);
157 DECLARE_ACCESSOR(wpas_dbus_getter_blobs);
158 DECLARE_ACCESSOR(wpas_dbus_getter_bss_bssid);
159 DECLARE_ACCESSOR(wpas_dbus_getter_bss_ssid);
160 DECLARE_ACCESSOR(wpas_dbus_getter_bss_privacy);
161 DECLARE_ACCESSOR(wpas_dbus_getter_bss_mode);
162 DECLARE_ACCESSOR(wpas_dbus_getter_bss_signal);
163 DECLARE_ACCESSOR(wpas_dbus_getter_bss_frequency);
164 DECLARE_ACCESSOR(wpas_dbus_getter_bss_rates);
165 DECLARE_ACCESSOR(wpas_dbus_getter_bss_wpa);
166 DECLARE_ACCESSOR(wpas_dbus_getter_bss_rsn);
167 DECLARE_ACCESSOR(wpas_dbus_getter_bss_wps);
168 DECLARE_ACCESSOR(wpas_dbus_getter_bss_ies);
169 DECLARE_ACCESSOR(wpas_dbus_getter_bss_age);
170 DECLARE_ACCESSOR(wpas_dbus_getter_enabled);
171 DECLARE_ACCESSOR(wpas_dbus_setter_enabled);
172 DECLARE_ACCESSOR(wpas_dbus_getter_network_properties);
173 DECLARE_ACCESSOR(wpas_dbus_setter_network_properties);
174
175 DBusMessage * wpas_dbus_handler_wps_start(DBusMessage *message,
176                                           struct wpa_supplicant *wpa_s);
177
178 DBusMessage * wpas_dbus_handler_wps_cancel(DBusMessage *message,
179                                            struct wpa_supplicant *wpa_s);
180
181 DECLARE_ACCESSOR(wpas_dbus_getter_process_credentials);
182 DECLARE_ACCESSOR(wpas_dbus_setter_process_credentials);
183 DECLARE_ACCESSOR(wpas_dbus_getter_config_methods);
184 DECLARE_ACCESSOR(wpas_dbus_setter_config_methods);
185
186 DBusMessage * wpas_dbus_handler_tdls_discover(DBusMessage *message,
187                                               struct wpa_supplicant *wpa_s);
188 DBusMessage * wpas_dbus_handler_tdls_setup(DBusMessage *message,
189                                            struct wpa_supplicant *wpa_s);
190 DBusMessage * wpas_dbus_handler_tdls_status(DBusMessage *message,
191                                             struct wpa_supplicant *wpa_s);
192 DBusMessage * wpas_dbus_handler_tdls_teardown(DBusMessage *message,
193                                               struct wpa_supplicant *wpa_s);
194
195 DBusMessage * wpas_dbus_error_invalid_args(DBusMessage *message,
196                                            const char *arg);
197 DBusMessage * wpas_dbus_error_unknown_error(DBusMessage *message,
198                                             const char *arg);
199 DBusMessage * wpas_dbus_error_no_memory(DBusMessage *message);
200
201 DBusMessage * wpas_dbus_handler_subscribe_preq(
202         DBusMessage *message, struct wpa_supplicant *wpa_s);
203 DBusMessage * wpas_dbus_handler_unsubscribe_preq(
204         DBusMessage *message, struct wpa_supplicant *wpa_s);
205
206 #endif /* CTRL_IFACE_DBUS_HANDLERS_NEW_H */