1 2 /* 3 * WPA Supplicant / dbus-based control interface for p2p 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License version 2 as 7 * published by the Free Software Foundation. 8 * 9 * Alternatively, this software may be distributed under the terms of BSD 10 * license. 11 * 12 * See README and COPYING for more details. 13 */ 14 15 #ifndef DBUS_NEW_HANDLERS_P2P_H 16 #define DBUS_NEW_HANDLERS_P2P_H 17 18 struct peer_handler_args { 19 struct wpa_supplicant *wpa_s; 20 u8 p2p_device_addr[ETH_ALEN]; 21 }; 22 23 struct groupmember_handler_args { 24 struct wpa_supplicant *wpa_s; 25 u8 member_addr[ETH_ALEN]; 26 }; 27 28 /* 29 * P2P Device methods 30 */ 31 32 DBusMessage *wpas_dbus_handler_p2p_find( 33 DBusMessage *message, struct wpa_supplicant *wpa_s); 34 35 DBusMessage *wpas_dbus_handler_p2p_stop_find( 36 DBusMessage *message, struct wpa_supplicant *wpa_s); 37 38 DBusMessage *wpas_dbus_handler_p2p_rejectpeer( 39 DBusMessage *message, struct wpa_supplicant *wpa_s); 40 41 DBusMessage *wpas_dbus_handler_p2p_listen( 42 DBusMessage *message, struct wpa_supplicant *wpa_s); 43 44 DBusMessage *wpas_dbus_handler_p2p_extendedlisten( 45 DBusMessage *message, struct wpa_supplicant *wpa_s); 46 47 DBusMessage *wpas_dbus_handler_p2p_presence_request( 48 DBusMessage *message, struct wpa_supplicant *wpa_s); 49 50 DBusMessage *wpas_dbus_handler_p2p_prov_disc_req( 51 DBusMessage *message, struct wpa_supplicant *wpa_s); 52 53 DBusMessage *wpas_dbus_handler_p2p_group_add( 54 DBusMessage *message, struct wpa_supplicant *wpa_s); 55 56 DBusMessage *wpas_dbus_handler_p2p_connect( 57 DBusMessage *message, 58 struct wpa_supplicant *wpa_s); 59 60 DBusMessage *wpas_dbus_handler_p2p_invite( 61 DBusMessage *message, 62 struct wpa_supplicant *wpa_s); 63 64 DBusMessage *wpas_dbus_handler_p2p_disconnect( 65 DBusMessage *message, struct wpa_supplicant *wpa_s); 66 67 DBusMessage *wpas_dbus_handler_p2p_flush( 68 DBusMessage *message, struct wpa_supplicant *wpa_s); 69 70 DBusMessage *wpas_dbus_handler_p2p_add_service( 71 DBusMessage *message, struct wpa_supplicant *wpa_s); 72 73 DBusMessage *wpas_dbus_handler_p2p_delete_service( 74 DBusMessage *message, struct wpa_supplicant *wpa_s); 75 76 DBusMessage *wpas_dbus_handler_p2p_flush_service( 77 DBusMessage *message, struct wpa_supplicant *wpa_s); 78 79 DBusMessage *wpas_dbus_handler_p2p_service_sd_req( 80 DBusMessage *message, struct wpa_supplicant *wpa_s); 81 82 DBusMessage *wpas_dbus_handler_p2p_service_sd_res( 83 DBusMessage *message, struct wpa_supplicant *wpa_s); 84 85 DBusMessage *wpas_dbus_handler_p2p_service_sd_cancel_req( 86 DBusMessage *message, struct wpa_supplicant *wpa_s); 87 88 DBusMessage *wpas_dbus_handler_p2p_service_update( 89 DBusMessage *message, struct wpa_supplicant *wpa_s); 90 91 DBusMessage *wpas_dbus_handler_p2p_serv_disc_external( 92 DBusMessage *message, struct wpa_supplicant *wpa_s); 93 94 /* 95 * P2P Device property accessor methods. 96 */ 97 dbus_bool_t wpas_dbus_setter_p2p_device_properties(DBusMessageIter *iter, 98 DBusError *error, 99 void *user_data); 100 101 dbus_bool_t wpas_dbus_getter_p2p_device_properties(DBusMessageIter *iter, 102 DBusError *error, 103 void *user_data); 104 105 dbus_bool_t wpas_dbus_getter_p2p_peers(DBusMessageIter *iter, DBusError *error, 106 void *user_data); 107 108 dbus_bool_t wpas_dbus_getter_p2p_role(DBusMessageIter *iter, DBusError *error, 109 void *user_data); 110 111 dbus_bool_t wpas_dbus_getter_p2p_group(DBusMessageIter *iter, DBusError *error, 112 void *user_data); 113 114 dbus_bool_t wpas_dbus_getter_p2p_peergo(DBusMessageIter *iter, 115 DBusError *error, 116 void *user_data); 117 118 /* 119 * P2P Peer properties. 120 */ 121 122 dbus_bool_t wpas_dbus_getter_p2p_peer_device_name(DBusMessageIter *iter, 123 DBusError *error, 124 void *user_data); 125 126 dbus_bool_t wpas_dbus_getter_p2p_peer_primary_device_type( 127 DBusMessageIter *iter, DBusError *error, void *user_data); 128 129 dbus_bool_t wpas_dbus_getter_p2p_peer_config_method(DBusMessageIter *iter, 130 DBusError *error, 131 void *user_data); 132 133 dbus_bool_t wpas_dbus_getter_p2p_peer_level(DBusMessageIter *iter, 134 DBusError *error, 135 void *user_data); 136 137 dbus_bool_t wpas_dbus_getter_p2p_peer_device_capability(DBusMessageIter *iter, 138 DBusError *error, 139 void *user_data); 140 141 dbus_bool_t wpas_dbus_getter_p2p_peer_group_capability(DBusMessageIter *iter, 142 DBusError *error, 143 void *user_data); 144 145 dbus_bool_t wpas_dbus_getter_p2p_peer_secondary_device_types( 146 DBusMessageIter *iter, DBusError *error, void *user_data); 147 148 dbus_bool_t wpas_dbus_getter_p2p_peer_vendor_extension(DBusMessageIter *iter, 149 DBusError *error, 150 void *user_data); 151 152 dbus_bool_t wpas_dbus_getter_p2p_peer_ies(DBusMessageIter *iter, 153 DBusError *error, 154 void *user_data); 155 156 /* 157 * P2P Group properties 158 */ 159 160 dbus_bool_t wpas_dbus_getter_p2p_group_members(DBusMessageIter *iter, 161 DBusError *error, 162 void *user_data); 163 164 dbus_bool_t wpas_dbus_getter_p2p_group_properties(DBusMessageIter *iter, 165 DBusError *error, 166 void *user_data); 167 168 dbus_bool_t wpas_dbus_setter_p2p_group_properties(DBusMessageIter *iter, 169 DBusError *error, 170 void *user_data); 171 172 /* 173 * P2P Persistent Groups and properties 174 */ 175 176 dbus_bool_t wpas_dbus_getter_persistent_groups(DBusMessageIter *iter, 177 DBusError *error, 178 void *user_data); 179 180 dbus_bool_t wpas_dbus_getter_persistent_group_properties(DBusMessageIter *iter, 181 DBusError *error, void *user_data); 182 183 dbus_bool_t wpas_dbus_setter_persistent_group_properties(DBusMessageIter *iter, 184 DBusError *error, 185 void *user_data); 186 187 DBusMessage * wpas_dbus_handler_add_persistent_group( 188 DBusMessage *message, struct wpa_supplicant *wpa_s); 189 190 DBusMessage * wpas_dbus_handler_remove_persistent_group( 191 DBusMessage *message, struct wpa_supplicant *wpa_s); 192 193 DBusMessage * wpas_dbus_handler_remove_all_persistent_groups( 194 DBusMessage *message, struct wpa_supplicant *wpa_s); 195 196 197 #endif /* DBUS_NEW_HANDLERS_P2P_H */ 198