dbus_new_handlers.h revision 337817
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 13337817Scy#include "dbus_new_helpers.h" 14337817Scy 15214501Srpaulostruct network_handler_args { 16214501Srpaulo struct wpa_supplicant *wpa_s; 17214501Srpaulo struct wpa_ssid *ssid; 18214501Srpaulo}; 19214501Srpaulo 20214501Srpaulostruct bss_handler_args { 21214501Srpaulo struct wpa_supplicant *wpa_s; 22214501Srpaulo unsigned int id; 23214501Srpaulo}; 24214501Srpaulo 25252190Srpaulodbus_bool_t wpas_dbus_simple_property_getter(DBusMessageIter *iter, 26252190Srpaulo const int type, 27252190Srpaulo const void *val, 28252190Srpaulo DBusError *error); 29214501Srpaulo 30252190Srpaulodbus_bool_t wpas_dbus_simple_property_setter(DBusMessageIter *iter, 31252190Srpaulo DBusError *error, 32252190Srpaulo const int type, void *val); 33214501Srpaulo 34252190Srpaulodbus_bool_t wpas_dbus_simple_array_property_getter(DBusMessageIter *iter, 35252190Srpaulo const int type, 36252190Srpaulo const void *array, 37252190Srpaulo size_t array_len, 38252190Srpaulo DBusError *error); 39214501Srpaulo 40252190Srpaulodbus_bool_t wpas_dbus_simple_array_array_property_getter(DBusMessageIter *iter, 41252190Srpaulo const int type, 42252190Srpaulo struct wpabuf **array, 43252190Srpaulo size_t array_len, 44252190Srpaulo DBusError *error); 45252190Srpaulo 46214501SrpauloDBusMessage * wpas_dbus_handler_create_interface(DBusMessage *message, 47214501Srpaulo struct wpa_global *global); 48214501Srpaulo 49214501SrpauloDBusMessage * wpas_dbus_handler_remove_interface(DBusMessage *message, 50214501Srpaulo struct wpa_global *global); 51214501Srpaulo 52214501SrpauloDBusMessage * wpas_dbus_handler_get_interface(DBusMessage *message, 53214501Srpaulo struct wpa_global *global); 54214501Srpaulo 55337817ScyDBusMessage * wpas_dbus_handler_expect_disconnect(DBusMessage *message, 56337817Scy struct wpa_global *global); 57214501Srpaulo 58337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_debug_level); 59337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_debug_timestamp); 60337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_debug_show_keys); 61337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_debug_level); 62337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_debug_timestamp); 63337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_debug_show_keys); 64337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_interfaces); 65337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_eap_methods); 66337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_global_capabilities); 67337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_iface_global); 68337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_iface_global); 69214501Srpaulo 70214501SrpauloDBusMessage * wpas_dbus_handler_scan(DBusMessage *message, 71214501Srpaulo struct wpa_supplicant *wpa_s); 72214501Srpaulo 73281806SrpauloDBusMessage * wpas_dbus_handler_signal_poll(DBusMessage *message, 74281806Srpaulo struct wpa_supplicant *wpa_s); 75281806Srpaulo 76214501SrpauloDBusMessage * wpas_dbus_handler_disconnect(DBusMessage *message, 77214501Srpaulo struct wpa_supplicant *wpa_s); 78214501Srpaulo 79252190Srpaulodbus_bool_t set_network_properties(struct wpa_supplicant *wpa_s, 80252190Srpaulo struct wpa_ssid *ssid, 81252190Srpaulo DBusMessageIter *iter, 82252190Srpaulo DBusError *error); 83252190Srpaulo 84214501SrpauloDBusMessage * wpas_dbus_handler_add_network(DBusMessage *message, 85214501Srpaulo struct wpa_supplicant *wpa_s); 86214501Srpaulo 87252190SrpauloDBusMessage * wpas_dbus_handler_reassociate(DBusMessage *message, 88252190Srpaulo struct wpa_supplicant *wpa_s); 89252190Srpaulo 90281806SrpauloDBusMessage * wpas_dbus_handler_reattach(DBusMessage *message, 91281806Srpaulo struct wpa_supplicant *wpa_s); 92281806Srpaulo 93289549SrpauloDBusMessage * wpas_dbus_handler_reconnect(DBusMessage *message, 94289549Srpaulo struct wpa_supplicant *wpa_s); 95289549Srpaulo 96214501SrpauloDBusMessage * wpas_dbus_handler_remove_network(DBusMessage *message, 97214501Srpaulo struct wpa_supplicant *wpa_s); 98214501Srpaulo 99252190SrpauloDBusMessage * wpas_dbus_handler_remove_all_networks( 100252190Srpaulo DBusMessage *message, struct wpa_supplicant *wpa_s); 101252190Srpaulo 102214501SrpauloDBusMessage * wpas_dbus_handler_select_network(DBusMessage *message, 103214501Srpaulo struct wpa_supplicant *wpa_s); 104214501Srpaulo 105252190SrpauloDBusMessage * wpas_dbus_handler_network_reply(DBusMessage *message, 106252190Srpaulo struct wpa_supplicant *wpa_s); 107252190Srpaulo 108214501SrpauloDBusMessage * wpas_dbus_handler_add_blob(DBusMessage *message, 109214501Srpaulo struct wpa_supplicant *wpa_s); 110214501Srpaulo 111214501SrpauloDBusMessage * wpas_dbus_handler_get_blob(DBusMessage *message, 112214501Srpaulo struct wpa_supplicant *wpa_s); 113214501Srpaulo 114214501SrpauloDBusMessage * wpas_dbus_handler_remove_blob(DBusMessage *message, 115214501Srpaulo struct wpa_supplicant *wpa_s); 116214501Srpaulo 117281806SrpauloDBusMessage * wpas_dbus_handler_set_pkcs11_engine_and_module_path( 118281806Srpaulo DBusMessage *message, struct wpa_supplicant *wpa_s); 119281806Srpaulo 120252190SrpauloDBusMessage * wpas_dbus_handler_flush_bss(DBusMessage *message, 121252190Srpaulo struct wpa_supplicant *wpa_s); 122214501Srpaulo 123252190SrpauloDBusMessage * wpas_dbus_handler_autoscan(DBusMessage *message, 124252190Srpaulo struct wpa_supplicant *wpa_s); 125214501Srpaulo 126281806SrpauloDBusMessage * wpas_dbus_handler_eap_logoff(DBusMessage *message, 127281806Srpaulo struct wpa_supplicant *wpa_s); 128281806Srpaulo 129281806SrpauloDBusMessage * wpas_dbus_handler_eap_logon(DBusMessage *message, 130281806Srpaulo struct wpa_supplicant *wpa_s); 131281806Srpaulo 132337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_capabilities); 133337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_state); 134337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_scanning); 135337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_ap_scan); 136337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_ap_scan); 137337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_fast_reauth); 138337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_fast_reauth); 139337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_disconnect_reason); 140337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_disassociate_reason); 141337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_assoc_status_code); 142337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_expire_age); 143337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_bss_expire_age); 144337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_expire_count); 145337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_bss_expire_count); 146337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_country); 147337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_country); 148337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_scan_interval); 149337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_scan_interval); 150337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_ifname); 151337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_driver); 152337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bridge_ifname); 153337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_config_file); 154337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_current_bss); 155337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_current_network); 156337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_current_auth_mode); 157337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bsss); 158337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_networks); 159337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_pkcs11_engine_path); 160337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_pkcs11_module_path); 161337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_blobs); 162337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_bssid); 163337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_ssid); 164337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_privacy); 165337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_mode); 166337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_signal); 167337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_frequency); 168337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_rates); 169337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_wpa); 170337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_rsn); 171337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_wps); 172337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_ies); 173337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_bss_age); 174337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_enabled); 175337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_enabled); 176337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_network_properties); 177337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_network_properties); 178214501Srpaulo 179214501SrpauloDBusMessage * wpas_dbus_handler_wps_start(DBusMessage *message, 180214501Srpaulo struct wpa_supplicant *wpa_s); 181214501Srpaulo 182289549SrpauloDBusMessage * wpas_dbus_handler_wps_cancel(DBusMessage *message, 183289549Srpaulo struct wpa_supplicant *wpa_s); 184289549Srpaulo 185337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_process_credentials); 186337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_process_credentials); 187337817ScyDECLARE_ACCESSOR(wpas_dbus_getter_config_methods); 188337817ScyDECLARE_ACCESSOR(wpas_dbus_setter_config_methods); 189214501Srpaulo 190281806SrpauloDBusMessage * wpas_dbus_handler_tdls_discover(DBusMessage *message, 191281806Srpaulo struct wpa_supplicant *wpa_s); 192281806SrpauloDBusMessage * wpas_dbus_handler_tdls_setup(DBusMessage *message, 193281806Srpaulo struct wpa_supplicant *wpa_s); 194281806SrpauloDBusMessage * wpas_dbus_handler_tdls_status(DBusMessage *message, 195281806Srpaulo struct wpa_supplicant *wpa_s); 196281806SrpauloDBusMessage * wpas_dbus_handler_tdls_teardown(DBusMessage *message, 197281806Srpaulo struct wpa_supplicant *wpa_s); 198281806Srpaulo 199337817ScyDBusMessage * wpas_dbus_handler_vendor_elem_add(DBusMessage *message, 200337817Scy struct wpa_supplicant *wpa_s); 201337817ScyDBusMessage * wpas_dbus_handler_vendor_elem_get(DBusMessage *message, 202337817Scy struct wpa_supplicant *wpa_s); 203337817ScyDBusMessage * wpas_dbus_handler_vendor_elem_remove( 204337817Scy DBusMessage *message, struct wpa_supplicant *wpa_s); 205337817Scy 206337817ScyDBusMessage * wpas_dbus_handler_save_config(DBusMessage *message, 207337817Scy struct wpa_supplicant *wpa_s); 208337817Scy 209214501SrpauloDBusMessage * wpas_dbus_error_invalid_args(DBusMessage *message, 210214501Srpaulo const char *arg); 211214501SrpauloDBusMessage * wpas_dbus_error_unknown_error(DBusMessage *message, 212214501Srpaulo const char *arg); 213281806SrpauloDBusMessage * wpas_dbus_error_no_memory(DBusMessage *message); 214214501Srpaulo 215252190SrpauloDBusMessage * wpas_dbus_handler_subscribe_preq( 216252190Srpaulo DBusMessage *message, struct wpa_supplicant *wpa_s); 217252190SrpauloDBusMessage * wpas_dbus_handler_unsubscribe_preq( 218252190Srpaulo DBusMessage *message, struct wpa_supplicant *wpa_s); 219252190Srpaulo 220214501Srpaulo#endif /* CTRL_IFACE_DBUS_HANDLERS_NEW_H */ 221