dbus_new_handlers.h 9.5 KB

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