1214501Srpaulo/* 2214501Srpaulo * WPA Supplicant / dbus-based control interface 3214501Srpaulo * Copyright (c) 2006, Dan Williams <dcbw@redhat.com> and Red Hat, Inc. 4214501Srpaulo * Copyright (c) 2009-2010, Witold Sowa <witold.sowa@gmail.com> 5214501Srpaulo * 6252190Srpaulo * This software may be distributed under the terms of the BSD license. 7252190Srpaulo * See README for more details. 8214501Srpaulo */ 9214501Srpaulo 10214501Srpaulo#ifndef CTRL_IFACE_DBUS_NEW_HANDLERS_H 11214501Srpaulo#define CTRL_IFACE_DBUS_NEW_HANDLERS_H 12214501Srpaulo 13214501Srpaulostruct network_handler_args { 14214501Srpaulo struct wpa_supplicant *wpa_s; 15214501Srpaulo struct wpa_ssid *ssid; 16214501Srpaulo}; 17214501Srpaulo 18214501Srpaulostruct bss_handler_args { 19214501Srpaulo struct wpa_supplicant *wpa_s; 20214501Srpaulo unsigned int id; 21214501Srpaulo}; 22214501Srpaulo 23252190Srpaulodbus_bool_t wpas_dbus_simple_property_getter(DBusMessageIter *iter, 24252190Srpaulo const int type, 25252190Srpaulo const void *val, 26252190Srpaulo DBusError *error); 27214501Srpaulo 28252190Srpaulodbus_bool_t wpas_dbus_simple_property_setter(DBusMessageIter *iter, 29252190Srpaulo DBusError *error, 30252190Srpaulo const int type, void *val); 31214501Srpaulo 32252190Srpaulodbus_bool_t wpas_dbus_simple_array_property_getter(DBusMessageIter *iter, 33252190Srpaulo const int type, 34252190Srpaulo const void *array, 35252190Srpaulo size_t array_len, 36252190Srpaulo DBusError *error); 37214501Srpaulo 38252190Srpaulodbus_bool_t wpas_dbus_simple_array_array_property_getter(DBusMessageIter *iter, 39252190Srpaulo const int type, 40252190Srpaulo struct wpabuf **array, 41252190Srpaulo size_t array_len, 42252190Srpaulo DBusError *error); 43252190Srpaulo 44214501SrpauloDBusMessage * wpas_dbus_handler_create_interface(DBusMessage *message, 45214501Srpaulo struct wpa_global *global); 46214501Srpaulo 47214501SrpauloDBusMessage * wpas_dbus_handler_remove_interface(DBusMessage *message, 48214501Srpaulo struct wpa_global *global); 49214501Srpaulo 50214501SrpauloDBusMessage * wpas_dbus_handler_get_interface(DBusMessage *message, 51214501Srpaulo struct wpa_global *global); 52214501Srpaulo 53252190Srpaulodbus_bool_t wpas_dbus_getter_debug_level(DBusMessageIter *iter, 54252190Srpaulo DBusError *error, 55252190Srpaulo void *user_data); 56214501Srpaulo 57252190Srpaulodbus_bool_t wpas_dbus_getter_debug_timestamp(DBusMessageIter *iter, 58252190Srpaulo DBusError *error, 59252190Srpaulo void *user_data); 60214501Srpaulo 61252190Srpaulodbus_bool_t wpas_dbus_getter_debug_show_keys(DBusMessageIter *iter, 62252190Srpaulo DBusError *error, 63252190Srpaulo void *user_data); 64214501Srpaulo 65252190Srpaulodbus_bool_t wpas_dbus_setter_debug_level(DBusMessageIter *iter, 66252190Srpaulo DBusError *error, void *user_data); 67214501Srpaulo 68252190Srpaulodbus_bool_t wpas_dbus_setter_debug_timestamp(DBusMessageIter *iter, 69252190Srpaulo DBusError *error, 70252190Srpaulo void *user_data); 71214501Srpaulo 72252190Srpaulodbus_bool_t wpas_dbus_setter_debug_show_keys(DBusMessageIter *iter, 73252190Srpaulo DBusError *error, 74252190Srpaulo void *user_data); 75214501Srpaulo 76252190Srpaulodbus_bool_t wpas_dbus_getter_interfaces(DBusMessageIter *iter, 77252190Srpaulo DBusError *error, 78252190Srpaulo void *user_data); 79214501Srpaulo 80252190Srpaulodbus_bool_t wpas_dbus_getter_eap_methods(DBusMessageIter *iter, 81252190Srpaulo DBusError *error, void *user_data); 82214501Srpaulo 83252190Srpaulodbus_bool_t wpas_dbus_getter_global_capabilities(DBusMessageIter *iter, 84252190Srpaulo DBusError *error, 85252190Srpaulo void *user_data); 86252190Srpaulo 87214501SrpauloDBusMessage * wpas_dbus_handler_scan(DBusMessage *message, 88214501Srpaulo struct wpa_supplicant *wpa_s); 89214501Srpaulo 90214501SrpauloDBusMessage * wpas_dbus_handler_disconnect(DBusMessage *message, 91214501Srpaulo struct wpa_supplicant *wpa_s); 92214501Srpaulo 93252190Srpaulodbus_bool_t set_network_properties(struct wpa_supplicant *wpa_s, 94252190Srpaulo struct wpa_ssid *ssid, 95252190Srpaulo DBusMessageIter *iter, 96252190Srpaulo DBusError *error); 97252190Srpaulo 98214501SrpauloDBusMessage * wpas_dbus_handler_add_network(DBusMessage *message, 99214501Srpaulo struct wpa_supplicant *wpa_s); 100214501Srpaulo 101252190SrpauloDBusMessage * wpas_dbus_handler_reassociate(DBusMessage *message, 102252190Srpaulo struct wpa_supplicant *wpa_s); 103252190Srpaulo 104214501SrpauloDBusMessage * wpas_dbus_handler_remove_network(DBusMessage *message, 105214501Srpaulo struct wpa_supplicant *wpa_s); 106214501Srpaulo 107252190SrpauloDBusMessage * wpas_dbus_handler_remove_all_networks( 108252190Srpaulo DBusMessage *message, struct wpa_supplicant *wpa_s); 109252190Srpaulo 110214501SrpauloDBusMessage * wpas_dbus_handler_select_network(DBusMessage *message, 111214501Srpaulo struct wpa_supplicant *wpa_s); 112214501Srpaulo 113252190SrpauloDBusMessage * wpas_dbus_handler_network_reply(DBusMessage *message, 114252190Srpaulo struct wpa_supplicant *wpa_s); 115252190Srpaulo 116214501SrpauloDBusMessage * wpas_dbus_handler_add_blob(DBusMessage *message, 117214501Srpaulo struct wpa_supplicant *wpa_s); 118214501Srpaulo 119214501SrpauloDBusMessage * wpas_dbus_handler_get_blob(DBusMessage *message, 120214501Srpaulo struct wpa_supplicant *wpa_s); 121214501Srpaulo 122214501SrpauloDBusMessage * wpas_dbus_handler_remove_blob(DBusMessage *message, 123214501Srpaulo struct wpa_supplicant *wpa_s); 124214501Srpaulo 125252190SrpauloDBusMessage * wpas_dbus_handler_flush_bss(DBusMessage *message, 126252190Srpaulo struct wpa_supplicant *wpa_s); 127214501Srpaulo 128252190SrpauloDBusMessage * wpas_dbus_handler_autoscan(DBusMessage *message, 129252190Srpaulo struct wpa_supplicant *wpa_s); 130214501Srpaulo 131252190Srpaulodbus_bool_t wpas_dbus_getter_capabilities(DBusMessageIter *iter, 132252190Srpaulo DBusError *error, void *user_data); 133214501Srpaulo 134252190Srpaulodbus_bool_t wpas_dbus_getter_state(DBusMessageIter *iter, DBusError *error, 135252190Srpaulo void *user_data); 136214501Srpaulo 137252190Srpaulodbus_bool_t wpas_dbus_getter_scanning(DBusMessageIter *iter, DBusError *error, 138252190Srpaulo void *user_data); 139214501Srpaulo 140252190Srpaulodbus_bool_t wpas_dbus_getter_ap_scan(DBusMessageIter *iter, DBusError *error, 141252190Srpaulo void *user_data); 142214501Srpaulo 143252190Srpaulodbus_bool_t wpas_dbus_setter_ap_scan(DBusMessageIter *iter, DBusError *error, 144252190Srpaulo void *user_data); 145214501Srpaulo 146252190Srpaulodbus_bool_t wpas_dbus_getter_fast_reauth(DBusMessageIter *iter, 147252190Srpaulo DBusError *error, 148252190Srpaulo void *user_data); 149214501Srpaulo 150252190Srpaulodbus_bool_t wpas_dbus_setter_fast_reauth(DBusMessageIter *iter, 151252190Srpaulo DBusError *error, 152252190Srpaulo void *user_data); 153214501Srpaulo 154252190Srpaulodbus_bool_t wpas_dbus_getter_disconnect_reason(DBusMessageIter *iter, 155252190Srpaulo DBusError *error, 156252190Srpaulo void *user_data); 157214501Srpaulo 158252190Srpaulodbus_bool_t wpas_dbus_getter_bss_expire_age(DBusMessageIter *iter, 159252190Srpaulo DBusError *error, void *user_data); 160214501Srpaulo 161252190Srpaulodbus_bool_t wpas_dbus_setter_bss_expire_age(DBusMessageIter *iter, 162252190Srpaulo DBusError *error, 163252190Srpaulo void *user_data); 164214501Srpaulo 165252190Srpaulodbus_bool_t wpas_dbus_getter_bss_expire_count(DBusMessageIter *iter, 166252190Srpaulo DBusError *error, 167252190Srpaulo void *user_data); 168214501Srpaulo 169252190Srpaulodbus_bool_t wpas_dbus_setter_bss_expire_count(DBusMessageIter *iter, 170252190Srpaulo DBusError *error, 171252190Srpaulo void *user_data); 172214501Srpaulo 173252190Srpaulodbus_bool_t wpas_dbus_getter_country(DBusMessageIter *iter, DBusError *error, 174252190Srpaulo void *user_data); 175214501Srpaulo 176252190Srpaulodbus_bool_t wpas_dbus_setter_country(DBusMessageIter *iter, DBusError *error, 177252190Srpaulo void *user_data); 178214501Srpaulo 179252190Srpaulodbus_bool_t wpas_dbus_getter_scan_interval(DBusMessageIter *iter, 180252190Srpaulo DBusError *error, 181252190Srpaulo void *user_data); 182214501Srpaulo 183252190Srpaulodbus_bool_t wpas_dbus_setter_scan_interval(DBusMessageIter *iter, 184252190Srpaulo DBusError *error, 185252190Srpaulo void *user_data); 186214501Srpaulo 187252190Srpaulodbus_bool_t wpas_dbus_getter_ifname(DBusMessageIter *iter, DBusError *error, 188252190Srpaulo void *user_data); 189214501Srpaulo 190252190Srpaulodbus_bool_t wpas_dbus_getter_driver(DBusMessageIter *iter, DBusError *error, 191252190Srpaulo void *user_data); 192214501Srpaulo 193252190Srpaulodbus_bool_t wpas_dbus_getter_bridge_ifname(DBusMessageIter *iter, 194252190Srpaulo DBusError *error, 195252190Srpaulo void *user_data); 196214501Srpaulo 197252190Srpaulodbus_bool_t wpas_dbus_getter_current_bss(DBusMessageIter *iter, 198252190Srpaulo DBusError *error, 199252190Srpaulo void *user_data); 200214501Srpaulo 201252190Srpaulodbus_bool_t wpas_dbus_getter_current_network(DBusMessageIter *iter, 202252190Srpaulo DBusError *error, 203252190Srpaulo void *user_data); 204214501Srpaulo 205252190Srpaulodbus_bool_t wpas_dbus_getter_current_auth_mode(DBusMessageIter *iter, 206252190Srpaulo DBusError *error, 207252190Srpaulo void *user_data); 208214501Srpaulo 209252190Srpaulodbus_bool_t wpas_dbus_getter_bsss(DBusMessageIter *iter, DBusError *error, 210252190Srpaulo void *user_data); 211214501Srpaulo 212252190Srpaulodbus_bool_t wpas_dbus_getter_networks(DBusMessageIter *iter, DBusError *error, 213252190Srpaulo void *user_data); 214214501Srpaulo 215252190Srpaulodbus_bool_t wpas_dbus_getter_blobs(DBusMessageIter *iter, DBusError *error, 216252190Srpaulo void *user_data); 217214501Srpaulo 218252190Srpaulodbus_bool_t wpas_dbus_getter_bss_bssid(DBusMessageIter *iter, DBusError *error, 219252190Srpaulo void *user_data); 220252190Srpaulo 221252190Srpaulodbus_bool_t wpas_dbus_getter_bss_ssid(DBusMessageIter *iter, DBusError *error, 222252190Srpaulo void *user_data); 223252190Srpaulo 224252190Srpaulodbus_bool_t wpas_dbus_getter_bss_privacy(DBusMessageIter *iter, 225252190Srpaulo DBusError *error, void *user_data); 226252190Srpaulo 227252190Srpaulodbus_bool_t wpas_dbus_getter_bss_mode(DBusMessageIter *iter, DBusError *error, 228252190Srpaulo void *user_data); 229252190Srpaulo 230252190Srpaulodbus_bool_t wpas_dbus_getter_bss_signal(DBusMessageIter *iter, 231252190Srpaulo DBusError *error, void *user_data); 232252190Srpaulo 233252190Srpaulodbus_bool_t wpas_dbus_getter_bss_frequency(DBusMessageIter *iter, 234252190Srpaulo DBusError *error, void *user_data); 235252190Srpaulo 236252190Srpaulodbus_bool_t wpas_dbus_getter_bss_rates(DBusMessageIter *iter, 237252190Srpaulo DBusError *error, void *user_data); 238252190Srpaulo 239252190Srpaulodbus_bool_t wpas_dbus_getter_bss_wpa(DBusMessageIter *iter, DBusError *error, 240252190Srpaulo void *user_data); 241252190Srpaulo 242252190Srpaulodbus_bool_t wpas_dbus_getter_bss_rsn(DBusMessageIter *iter, DBusError *error, 243252190Srpaulo void *user_data); 244252190Srpaulo 245252190Srpaulodbus_bool_t wpas_dbus_getter_bss_wps(DBusMessageIter *iter, DBusError *error, 246252190Srpaulo void *user_data); 247252190Srpaulo 248252190Srpaulodbus_bool_t wpas_dbus_getter_bss_ies(DBusMessageIter *iter, DBusError *error, 249252190Srpaulo void *user_data); 250252190Srpaulo 251252190Srpaulodbus_bool_t wpas_dbus_getter_enabled(DBusMessageIter *iter, DBusError *error, 252252190Srpaulo void *user_data); 253252190Srpaulo 254252190Srpaulodbus_bool_t wpas_dbus_setter_enabled(DBusMessageIter *iter, DBusError *error, 255252190Srpaulo void *user_data); 256252190Srpaulo 257252190Srpaulodbus_bool_t wpas_dbus_getter_network_properties(DBusMessageIter *iter, 258252190Srpaulo DBusError *error, 259252190Srpaulo void *user_data); 260252190Srpaulo 261252190Srpaulodbus_bool_t wpas_dbus_setter_network_properties(DBusMessageIter *iter, 262252190Srpaulo DBusError *error, 263252190Srpaulo void *user_data); 264252190Srpaulo 265214501SrpauloDBusMessage * wpas_dbus_handler_wps_start(DBusMessage *message, 266214501Srpaulo struct wpa_supplicant *wpa_s); 267214501Srpaulo 268252190Srpaulodbus_bool_t wpas_dbus_getter_process_credentials(DBusMessageIter *iter, 269252190Srpaulo DBusError *error, void *user_data); 270214501Srpaulo 271252190Srpaulodbus_bool_t wpas_dbus_setter_process_credentials(DBusMessageIter *iter, 272252190Srpaulo DBusError *error, 273252190Srpaulo void *user_data); 274214501Srpaulo 275214501SrpauloDBusMessage * wpas_dbus_error_invalid_args(DBusMessage *message, 276214501Srpaulo const char *arg); 277214501SrpauloDBusMessage * wpas_dbus_error_unknown_error(DBusMessage *message, 278214501Srpaulo const char *arg); 279214501Srpaulo 280252190SrpauloDBusMessage * wpas_dbus_handler_subscribe_preq( 281252190Srpaulo DBusMessage *message, struct wpa_supplicant *wpa_s); 282252190SrpauloDBusMessage * wpas_dbus_handler_unsubscribe_preq( 283252190Srpaulo DBusMessage *message, struct wpa_supplicant *wpa_s); 284252190Srpaulo 285214501Srpaulo#endif /* CTRL_IFACE_DBUS_HANDLERS_NEW_H */ 286