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_H
11 #define CTRL_IFACE_DBUS_NEW_H
12 
13 #include "common/defs.h"
14 #include "p2p/p2p.h"
15 
16 struct wpa_global;
17 struct wpa_supplicant;
18 struct wpa_ssid;
19 struct wps_event_m2d;
20 struct wps_event_fail;
21 struct wps_credential;
22 
23 enum wpas_dbus_prop {
24 	WPAS_DBUS_PROP_AP_SCAN,
25 	WPAS_DBUS_PROP_PMF,
26 	WPAS_DBUS_PROP_SCANNING,
27 	WPAS_DBUS_PROP_STATE,
28 	WPAS_DBUS_PROP_CURRENT_BSS,
29 	WPAS_DBUS_PROP_CURRENT_NETWORK,
30 	WPAS_DBUS_PROP_CURRENT_AUTH_MODE,
31 	WPAS_DBUS_PROP_BSSS,
32 	WPAS_DBUS_PROP_DISCONNECT_REASON,
33 	WPAS_DBUS_PROP_ASSOC_STATUS_CODE,
34 };
35 
36 enum wpas_dbus_bss_prop {
37 	WPAS_DBUS_BSS_PROP_SIGNAL,
38 	WPAS_DBUS_BSS_PROP_FREQ,
39 	WPAS_DBUS_BSS_PROP_MODE,
40 	WPAS_DBUS_BSS_PROP_PRIVACY,
41 	WPAS_DBUS_BSS_PROP_RATES,
42 	WPAS_DBUS_BSS_PROP_WPA,
43 	WPAS_DBUS_BSS_PROP_RSN,
44 	WPAS_DBUS_BSS_PROP_WPS,
45 	WPAS_DBUS_BSS_PROP_IES,
46 	WPAS_DBUS_BSS_PROP_AGE,
47 };
48 
49 #define WPAS_DBUS_OBJECT_PATH_MAX 150
50 
51 #define WPAS_DBUS_NEW_SERVICE		"fi.w1.wpa_supplicant1"
52 #define WPAS_DBUS_NEW_PATH		"/fi/w1/wpa_supplicant1"
53 #define WPAS_DBUS_NEW_INTERFACE		"fi.w1.wpa_supplicant1"
54 
55 #define WPAS_DBUS_NEW_PATH_INTERFACES	WPAS_DBUS_NEW_PATH "/Interfaces"
56 #define WPAS_DBUS_NEW_IFACE_INTERFACE	WPAS_DBUS_NEW_INTERFACE ".Interface"
57 #define WPAS_DBUS_NEW_IFACE_WPS WPAS_DBUS_NEW_IFACE_INTERFACE ".WPS"
58 
59 #define WPAS_DBUS_NEW_NETWORKS_PART "Networks"
60 #define WPAS_DBUS_NEW_IFACE_NETWORK WPAS_DBUS_NEW_INTERFACE ".Network"
61 
62 #define WPAS_DBUS_NEW_BSSIDS_PART "BSSs"
63 #define WPAS_DBUS_NEW_IFACE_BSS	WPAS_DBUS_NEW_INTERFACE ".BSS"
64 
65 #define WPAS_DBUS_NEW_IFACE_P2PDEVICE	\
66 		WPAS_DBUS_NEW_IFACE_INTERFACE ".P2PDevice"
67 
68 #define WPAS_DBUS_NEW_IFACE_MESH WPAS_DBUS_NEW_IFACE_INTERFACE ".Mesh"
69 
70 /*
71  * Groups correspond to P2P groups where this device is a GO (owner)
72  */
73 #define WPAS_DBUS_NEW_P2P_GROUPS_PART	"Groups"
74 #define	WPAS_DBUS_NEW_IFACE_P2P_GROUP WPAS_DBUS_NEW_INTERFACE ".Group"
75 
76 /*
77  * Different dbus object for persistent groups so they do not get confused
78  * with regular (configured) network objects.
79  */
80 #define WPAS_DBUS_NEW_PERSISTENT_GROUPS_PART "PersistentGroups"
81 #define WPAS_DBUS_NEW_IFACE_PERSISTENT_GROUP \
82 	WPAS_DBUS_NEW_INTERFACE ".PersistentGroup"
83 
84 #define WPAS_DBUS_NEW_P2P_PEERS_PART	"Peers"
85 #define	WPAS_DBUS_NEW_IFACE_P2P_PEER WPAS_DBUS_NEW_INTERFACE ".Peer"
86 
87 /* Top-level Errors */
88 #define WPAS_DBUS_ERROR_UNKNOWN_ERROR \
89 	WPAS_DBUS_NEW_INTERFACE ".UnknownError"
90 #define WPAS_DBUS_ERROR_INVALID_ARGS \
91 	WPAS_DBUS_NEW_INTERFACE ".InvalidArgs"
92 
93 #define WPAS_DBUS_ERROR_IFACE_EXISTS \
94 	WPAS_DBUS_NEW_INTERFACE ".InterfaceExists"
95 #define WPAS_DBUS_ERROR_IFACE_DISABLED            \
96 	WPAS_DBUS_NEW_INTERFACE ".InterfaceDisabled"
97 #define WPAS_DBUS_ERROR_IFACE_UNKNOWN \
98 	WPAS_DBUS_NEW_INTERFACE ".InterfaceUnknown"
99 
100 #define WPAS_DBUS_ERROR_NOT_CONNECTED \
101 	WPAS_DBUS_NEW_INTERFACE ".NotConnected"
102 #define WPAS_DBUS_ERROR_NETWORK_UNKNOWN \
103 	WPAS_DBUS_NEW_INTERFACE ".NetworkUnknown"
104 
105 #define WPAS_DBUS_ERROR_CONNECT_CHANNEL_UNAVAILABLE \
106 	WPAS_DBUS_NEW_INTERFACE ".ConnectChannelUnavailable"
107 #define WPAS_DBUS_ERROR_CONNECT_CHANNEL_UNSUPPORTED \
108 	WPAS_DBUS_NEW_INTERFACE ".ConnectChannelUnsupported"
109 #define WPAS_DBUS_ERROR_CONNECT_UNSPECIFIED_ERROR \
110 	WPAS_DBUS_NEW_INTERFACE ".ConnectUnspecifiedError"
111 
112 #define WPAS_DBUS_ERROR_BLOB_EXISTS \
113 	WPAS_DBUS_NEW_INTERFACE ".BlobExists"
114 #define WPAS_DBUS_ERROR_BLOB_UNKNOWN \
115 	WPAS_DBUS_NEW_INTERFACE ".BlobUnknown"
116 
117 #define WPAS_DBUS_ERROR_SUBSCRIPTION_IN_USE \
118 	WPAS_DBUS_NEW_INTERFACE ".SubscriptionInUse"
119 #define WPAS_DBUS_ERROR_NO_SUBSCRIPTION \
120 	WPAS_DBUS_NEW_INTERFACE ".NoSubscription"
121 #define WPAS_DBUS_ERROR_SUBSCRIPTION_EPERM \
122 	WPAS_DBUS_NEW_INTERFACE ".SubscriptionNotYou"
123 
124 /* Interface-level errors */
125 #define WPAS_DBUS_ERROR_IFACE_SCAN_ERROR \
126 	WPAS_DBUS_NEW_IFACE_INTERFACE ".ScanError"
127 
128 void wpas_dbus_subscribe_noc(struct wpas_dbus_priv *priv);
129 void wpas_dbus_unsubscribe_noc(struct wpas_dbus_priv *priv);
130 
131 
132 #ifdef CONFIG_CTRL_IFACE_DBUS_NEW
133 
134 int wpas_dbus_ctrl_iface_init(struct wpas_dbus_priv *priv);
135 void wpas_dbus_ctrl_iface_deinit(struct wpas_dbus_priv *iface);
136 
137 int wpas_dbus_register_interface(struct wpa_supplicant *wpa_s);
138 int wpas_dbus_unregister_interface(struct wpa_supplicant *wpa_s);
139 void wpas_dbus_signal_prop_changed(struct wpa_supplicant *wpa_s,
140 				   enum wpas_dbus_prop property);
141 void wpas_dbus_bss_signal_prop_changed(struct wpa_supplicant *wpa_s,
142 				       enum wpas_dbus_bss_prop property,
143 				       unsigned int id);
144 void wpas_dbus_signal_network_enabled_changed(struct wpa_supplicant *wpa_s,
145 					      struct wpa_ssid *ssid);
146 void wpas_dbus_signal_network_selected(struct wpa_supplicant *wpa_s, int id);
147 void wpas_dbus_signal_network_request(struct wpa_supplicant *wpa_s,
148 				      struct wpa_ssid *ssid,
149 				      enum wpa_ctrl_req_type rtype,
150 				      const char *default_text);
151 void wpas_dbus_signal_scan_done(struct wpa_supplicant *wpa_s, int success);
152 void wpas_dbus_signal_wps_cred(struct wpa_supplicant *wpa_s,
153 			       const struct wps_credential *cred);
154 void wpas_dbus_signal_wps_event_m2d(struct wpa_supplicant *wpa_s,
155 				    struct wps_event_m2d *m2d);
156 void wpas_dbus_signal_wps_event_fail(struct wpa_supplicant *wpa_s,
157 				     struct wps_event_fail *fail);
158 void wpas_dbus_signal_wps_event_success(struct wpa_supplicant *wpa_s);
159 void wpas_dbus_signal_wps_event_pbc_overlap(struct wpa_supplicant *wpa_s);
160 int wpas_dbus_register_network(struct wpa_supplicant *wpa_s,
161 			       struct wpa_ssid *ssid);
162 int wpas_dbus_unregister_network(struct wpa_supplicant *wpa_s, int nid);
163 int wpas_dbus_unregister_bss(struct wpa_supplicant *wpa_s,
164 			     u8 bssid[ETH_ALEN], unsigned int id);
165 int wpas_dbus_register_bss(struct wpa_supplicant *wpa_s,
166 			   u8 bssid[ETH_ALEN], unsigned int id);
167 void wpas_dbus_signal_blob_added(struct wpa_supplicant *wpa_s,
168 				 const char *name);
169 void wpas_dbus_signal_blob_removed(struct wpa_supplicant *wpa_s,
170 				   const char *name);
171 void wpas_dbus_signal_debug_level_changed(struct wpa_global *global);
172 void wpas_dbus_signal_debug_timestamp_changed(struct wpa_global *global);
173 void wpas_dbus_signal_debug_show_keys_changed(struct wpa_global *global);
174 
175 int wpas_dbus_register_peer(struct wpa_supplicant *wpa_s, const u8 *dev_addr);
176 void wpas_dbus_signal_p2p_find_stopped(struct wpa_supplicant *wpa_s);
177 void wpas_dbus_signal_peer_device_found(struct wpa_supplicant *wpa_s,
178 					   const u8 *dev_addr);
179 int wpas_dbus_unregister_peer(struct wpa_supplicant *wpa_s,
180 				  const u8 *dev_addr);
181 void wpas_dbus_signal_peer_device_lost(struct wpa_supplicant *wpa_s,
182 					   const u8 *dev_addr);
183 void wpas_dbus_signal_peer_groups_changed(struct wpa_supplicant *wpa_s,
184 					  const u8 *dev_addr);
185 void wpas_dbus_signal_p2p_group_removed(struct wpa_supplicant *wpa_s,
186 					const char *role);
187 void wpas_dbus_signal_p2p_provision_discovery(struct wpa_supplicant *wpa_s,
188 					      const u8 *dev_addr, int request,
189 					      enum p2p_prov_disc_status status,
190 					      u16 config_methods,
191 					      unsigned int generated_pin);
192 void wpas_dbus_signal_p2p_go_neg_req(struct wpa_supplicant *wpa_s,
193 				     const u8 *src, u16 dev_passwd_id,
194 				     u8 go_intent);
195 void wpas_dbus_signal_p2p_group_started(struct wpa_supplicant *wpa_s,
196 					int client, int persistent,
197 					const u8 *ip);
198 void wpas_dbus_signal_p2p_group_formation_failure(struct wpa_supplicant *wpa_s,
199 						  const char *reason);
200 void wpas_dbus_register_p2p_group(struct wpa_supplicant *wpa_s,
201 				  struct wpa_ssid *ssid);
202 void wpas_dbus_signal_p2p_go_neg_resp(struct wpa_supplicant *wpa_s,
203 				      struct p2p_go_neg_results *res);
204 void wpas_dbus_unregister_p2p_group(struct wpa_supplicant *wpa_s,
205 				    const struct wpa_ssid *ssid);
206 int wpas_dbus_register_persistent_group(struct wpa_supplicant *wpa_s,
207 					struct wpa_ssid *ssid);
208 int wpas_dbus_unregister_persistent_group(struct wpa_supplicant *wpa_s,
209 					  int nid);
210 void wpas_dbus_signal_p2p_invitation_result(struct wpa_supplicant *wpa_s,
211 					    int status, const u8 *bssid);
212 void wpas_dbus_signal_p2p_peer_disconnected(struct wpa_supplicant *wpa_s,
213 					    const u8 *member);
214 void wpas_dbus_signal_p2p_sd_request(struct wpa_supplicant *wpa_s,
215 				     int freq, const u8 *sa, u8 dialog_token,
216 				     u16 update_indic, const u8 *tlvs,
217 				     size_t tlvs_len);
218 void wpas_dbus_signal_p2p_sd_response(struct wpa_supplicant *wpa_s,
219 				      const u8 *sa, u16 update_indic,
220 				      const u8 *tlvs, size_t tlvs_len);
221 void wpas_dbus_signal_p2p_peer_joined(struct wpa_supplicant *wpa_s,
222 				const u8 *member);
223 void wpas_dbus_signal_p2p_wps_failed(struct wpa_supplicant *wpa_s,
224 				     struct wps_event_fail *fail);
225 void wpas_dbus_signal_certification(struct wpa_supplicant *wpa_s,
226 				    int depth, const char *subject,
227 				    const char *altsubject[],
228 				    int num_altsubject,
229 				    const char *cert_hash,
230 				    const struct wpabuf *cert);
231 void wpas_dbus_signal_preq(struct wpa_supplicant *wpa_s,
232 			   const u8 *addr, const u8 *dst, const u8 *bssid,
233 			   const u8 *ie, size_t ie_len, u32 ssi_signal);
234 void wpas_dbus_signal_eap_status(struct wpa_supplicant *wpa_s,
235 				 const char *status, const char *parameter);
236 void wpas_dbus_signal_sta_authorized(struct wpa_supplicant *wpa_s,
237 				     const u8 *sta);
238 void wpas_dbus_signal_sta_deauthorized(struct wpa_supplicant *wpa_s,
239 				       const u8 *sta);
240 void wpas_dbus_signal_p2p_invitation_received(struct wpa_supplicant *wpa_s,
241 					      const u8 *sa, const u8 *dev_addr,
242 					      const u8 *bssid, int id,
243 					      int op_freq);
244 void wpas_dbus_signal_mesh_group_started(struct wpa_supplicant *wpa_s,
245 					 struct wpa_ssid *ssid);
246 void wpas_dbus_signal_mesh_group_removed(struct wpa_supplicant *wpa_s,
247 					 const u8 *meshid, u8 meshid_len,
248 					 int reason);
249 void wpas_dbus_signal_mesh_peer_connected(struct wpa_supplicant *wpa_s,
250 					  const u8 *peer_addr);
251 void wpas_dbus_signal_mesh_peer_disconnected(struct wpa_supplicant *wpa_s,
252 					     const u8 *peer_addr, int reason);
253 
254 #else /* CONFIG_CTRL_IFACE_DBUS_NEW */
255 
wpas_dbus_register_interface(struct wpa_supplicant * wpa_s)256 static inline int wpas_dbus_register_interface(struct wpa_supplicant *wpa_s)
257 {
258 	return 0;
259 }
260 
wpas_dbus_unregister_interface(struct wpa_supplicant * wpa_s)261 static inline int wpas_dbus_unregister_interface(struct wpa_supplicant *wpa_s)
262 {
263 	return 0;
264 }
265 
266 #define wpas_dbus_signal_state_changed(w, n, o) do { } while (0)
267 
wpas_dbus_signal_prop_changed(struct wpa_supplicant * wpa_s,enum wpas_dbus_prop property)268 static inline void wpas_dbus_signal_prop_changed(struct wpa_supplicant *wpa_s,
269 						 enum wpas_dbus_prop property)
270 {
271 }
272 
wpas_dbus_bss_signal_prop_changed(struct wpa_supplicant * wpa_s,enum wpas_dbus_bss_prop property,unsigned int id)273 static inline void wpas_dbus_bss_signal_prop_changed(
274 	struct wpa_supplicant *wpa_s, enum wpas_dbus_bss_prop property,
275 	unsigned int id)
276 {
277 }
278 
wpas_dbus_signal_network_enabled_changed(struct wpa_supplicant * wpa_s,struct wpa_ssid * ssid)279 static inline void wpas_dbus_signal_network_enabled_changed(
280 	struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid)
281 {
282 }
283 
wpas_dbus_signal_network_selected(struct wpa_supplicant * wpa_s,int id)284 static inline void wpas_dbus_signal_network_selected(
285 	struct wpa_supplicant *wpa_s, int id)
286 {
287 }
288 
wpas_dbus_signal_network_request(struct wpa_supplicant * wpa_s,struct wpa_ssid * ssid,enum wpa_ctrl_req_type rtype,const char * default_txt)289 static inline void wpas_dbus_signal_network_request(
290 	struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid,
291 	enum wpa_ctrl_req_type rtype, const char *default_txt)
292 {
293 }
294 
wpas_dbus_signal_scan_done(struct wpa_supplicant * wpa_s,int success)295 static inline void wpas_dbus_signal_scan_done(struct wpa_supplicant *wpa_s,
296 					      int success)
297 {
298 }
299 
wpas_dbus_signal_wps_cred(struct wpa_supplicant * wpa_s,const struct wps_credential * cred)300 static inline void wpas_dbus_signal_wps_cred(struct wpa_supplicant *wpa_s,
301 					     const struct wps_credential *cred)
302 {
303 }
304 
wpas_dbus_signal_wps_event_m2d(struct wpa_supplicant * wpa_s,struct wps_event_m2d * m2d)305 static inline void wpas_dbus_signal_wps_event_m2d(struct wpa_supplicant *wpa_s,
306 						  struct wps_event_m2d *m2d)
307 {
308 }
309 
wpas_dbus_signal_wps_event_fail(struct wpa_supplicant * wpa_s,struct wps_event_fail * fail)310 static inline void wpas_dbus_signal_wps_event_fail(
311 	struct wpa_supplicant *wpa_s, struct wps_event_fail *fail)
312 {
313 }
314 
wpas_dbus_signal_wps_event_success(struct wpa_supplicant * wpa_s)315 static inline void wpas_dbus_signal_wps_event_success(
316 	struct wpa_supplicant *wpa_s)
317 {
318 }
319 
wpas_dbus_signal_wps_event_pbc_overlap(struct wpa_supplicant * wpa_s)320 static inline void wpas_dbus_signal_wps_event_pbc_overlap(
321 	struct wpa_supplicant *wpa_s)
322 {
323 }
324 
wpas_dbus_register_network(struct wpa_supplicant * wpa_s,struct wpa_ssid * ssid)325 static inline int wpas_dbus_register_network(struct wpa_supplicant *wpa_s,
326 					     struct wpa_ssid *ssid)
327 {
328 	return 0;
329 }
330 
wpas_dbus_unregister_network(struct wpa_supplicant * wpa_s,int nid)331 static inline int wpas_dbus_unregister_network(struct wpa_supplicant *wpa_s,
332 					       int nid)
333 {
334 	return 0;
335 }
336 
wpas_dbus_unregister_bss(struct wpa_supplicant * wpa_s,u8 bssid[ETH_ALEN],unsigned int id)337 static inline int wpas_dbus_unregister_bss(struct wpa_supplicant *wpa_s,
338 					   u8 bssid[ETH_ALEN], unsigned int id)
339 {
340 	return 0;
341 }
342 
wpas_dbus_register_bss(struct wpa_supplicant * wpa_s,u8 bssid[ETH_ALEN],unsigned int id)343 static inline int wpas_dbus_register_bss(struct wpa_supplicant *wpa_s,
344 					 u8 bssid[ETH_ALEN], unsigned int id)
345 {
346 	return 0;
347 }
348 
wpas_dbus_signal_blob_added(struct wpa_supplicant * wpa_s,const char * name)349 static inline void wpas_dbus_signal_blob_added(struct wpa_supplicant *wpa_s,
350 					       const char *name)
351 {
352 }
353 
wpas_dbus_signal_blob_removed(struct wpa_supplicant * wpa_s,const char * name)354 static inline void wpas_dbus_signal_blob_removed(struct wpa_supplicant *wpa_s,
355 						 const char *name)
356 {
357 }
358 
wpas_dbus_signal_debug_level_changed(struct wpa_global * global)359 static inline void wpas_dbus_signal_debug_level_changed(
360 	struct wpa_global *global)
361 {
362 }
363 
wpas_dbus_signal_debug_timestamp_changed(struct wpa_global * global)364 static inline void wpas_dbus_signal_debug_timestamp_changed(
365 	struct wpa_global *global)
366 {
367 }
368 
wpas_dbus_signal_debug_show_keys_changed(struct wpa_global * global)369 static inline void wpas_dbus_signal_debug_show_keys_changed(
370 	struct wpa_global *global)
371 {
372 }
373 
wpas_dbus_register_peer(struct wpa_supplicant * wpa_s,const u8 * dev_addr)374 static inline int wpas_dbus_register_peer(struct wpa_supplicant *wpa_s,
375 					  const u8 *dev_addr)
376 {
377 	return 0;
378 }
379 
wpas_dbus_unregister_peer(struct wpa_supplicant * wpa_s,const u8 * dev_addr)380 static inline int wpas_dbus_unregister_peer(struct wpa_supplicant *wpa_s,
381 					    const u8 *dev_addr)
382 {
383 	return 0;
384 }
385 
386 static inline void
wpas_dbus_signal_peer_groups_changed(struct wpa_supplicant * wpa_s,const u8 * dev_addr)387 wpas_dbus_signal_peer_groups_changed(struct wpa_supplicant *wpa_s,
388 				     const u8 *dev_addr)
389 {
390 }
391 
392 static inline void
wpas_dbus_signal_p2p_group_removed(struct wpa_supplicant * wpa_s,const char * role)393 wpas_dbus_signal_p2p_group_removed(struct wpa_supplicant *wpa_s,
394 				   const char *role)
395 {
396 }
397 
398 static inline void
wpas_dbus_signal_p2p_provision_discovery(struct wpa_supplicant * wpa_s,const u8 * dev_addr,int request,enum p2p_prov_disc_status status,u16 config_methods,unsigned int generated_pin)399 wpas_dbus_signal_p2p_provision_discovery(struct wpa_supplicant *wpa_s,
400 					 const u8 *dev_addr, int request,
401 					 enum p2p_prov_disc_status status,
402 					 u16 config_methods,
403 					 unsigned int generated_pin)
404 {
405 }
406 
wpas_dbus_signal_p2p_go_neg_req(struct wpa_supplicant * wpa_s,const u8 * src,u16 dev_passwd_id,u8 go_intent)407 static inline void wpas_dbus_signal_p2p_go_neg_req(struct wpa_supplicant *wpa_s,
408 						   const u8 *src,
409 						   u16 dev_passwd_id,
410 						   u8 go_intent)
411 {
412 }
413 
414 static inline void
wpas_dbus_signal_p2p_group_started(struct wpa_supplicant * wpa_s,int client,int persistent,const u8 * ip)415 wpas_dbus_signal_p2p_group_started(struct wpa_supplicant *wpa_s,
416 				   int client, int persistent,
417 				   const u8 *ip)
418 {
419 }
420 
421 static inline void
wpas_dbus_signal_p2p_group_formation_failure(struct wpa_supplicant * wpa_s,const char * reason)422 wpas_dbus_signal_p2p_group_formation_failure(struct wpa_supplicant *wpa_s,
423 					     const char *reason)
424 {
425 }
426 
427 static inline void
wpas_dbus_register_p2p_group(struct wpa_supplicant * wpa_s,struct wpa_ssid * ssid)428 wpas_dbus_register_p2p_group(struct wpa_supplicant *wpa_s,
429 			     struct wpa_ssid *ssid)
430 {
431 }
432 
wpas_dbus_register_persistent_group(struct wpa_supplicant * wpa_s,struct wpa_ssid * ssid)433 static inline int wpas_dbus_register_persistent_group(
434 	struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid)
435 {
436 	return 0;
437 }
438 
wpas_dbus_unregister_persistent_group(struct wpa_supplicant * wpa_s,int nid)439 static inline int wpas_dbus_unregister_persistent_group(
440 	struct wpa_supplicant *wpa_s, int nid)
441 {
442 	return 0;
443 }
444 
445 static inline void
wpas_dbus_signal_p2p_go_neg_resp(struct wpa_supplicant * wpa_s,struct p2p_go_neg_results * res)446 wpas_dbus_signal_p2p_go_neg_resp(struct wpa_supplicant *wpa_s,
447 				 struct p2p_go_neg_results *res)
448 {
449 }
450 
451 static inline void
wpas_dbus_unregister_p2p_group(struct wpa_supplicant * wpa_s,const struct wpa_ssid * ssid)452 wpas_dbus_unregister_p2p_group(struct wpa_supplicant *wpa_s,
453 			       const struct wpa_ssid *ssid)
454 {
455 }
456 
wpas_dbus_signal_p2p_invitation_result(struct wpa_supplicant * wpa_s,int status,const u8 * bssid)457 static inline void wpas_dbus_signal_p2p_invitation_result(
458 				struct wpa_supplicant *wpa_s, int status,
459 				const u8 *bssid)
460 {
461 }
462 
463 static inline void
wpas_dbus_register_p2p_groupmember(struct wpa_supplicant * wpa_s,const u8 * p2p_if_addr)464 wpas_dbus_register_p2p_groupmember(struct wpa_supplicant *wpa_s,
465 				   const u8 *p2p_if_addr)
466 {
467 }
468 
469 static inline void
wpas_dbus_signal_p2p_sd_request(struct wpa_supplicant * wpa_s,int freq,const u8 * sa,u8 dialog_token,u16 update_indic,const u8 * tlvs,size_t tlvs_len)470 wpas_dbus_signal_p2p_sd_request(struct wpa_supplicant *wpa_s, int freq,
471 				const u8 *sa, u8 dialog_token, u16 update_indic,
472 				const u8 *tlvs, size_t tlvs_len)
473 {
474 }
475 
476 static inline void
wpas_dbus_signal_p2p_sd_response(struct wpa_supplicant * wpa_s,const u8 * sa,u16 update_indic,const u8 * tlvs,size_t tlvs_len)477 wpas_dbus_signal_p2p_sd_response(struct wpa_supplicant *wpa_s,
478 				 const u8 *sa, u16 update_indic,
479 				 const u8 *tlvs, size_t tlvs_len)
480 {
481 }
482 
483 static inline void
wpas_dbus_unregister_p2p_groupmember(struct wpa_supplicant * wpa_s,const u8 * p2p_if_addr)484 wpas_dbus_unregister_p2p_groupmember(struct wpa_supplicant *wpa_s,
485 				     const u8 *p2p_if_addr)
486 {
487 }
488 
489 static inline void
wpas_dbus_signal_p2p_peer_joined(struct wpa_supplicant * wpa_s,const u8 * member)490 wpas_dbus_signal_p2p_peer_joined(struct wpa_supplicant *wpa_s,
491 				 const u8 *member)
492 {
493 }
494 
495 static inline void
wpas_dbus_signal_p2p_find_stopped(struct wpa_supplicant * wpa_s)496 wpas_dbus_signal_p2p_find_stopped(struct wpa_supplicant *wpa_s)
497 {
498 }
499 
500 static inline void
wpas_dbus_signal_peer_device_found(struct wpa_supplicant * wpa_s,const u8 * dev_addr)501 wpas_dbus_signal_peer_device_found(struct wpa_supplicant *wpa_s,
502 				   const u8 *dev_addr)
503 {
504 }
505 
506 static inline void
wpas_dbus_signal_peer_device_lost(struct wpa_supplicant * wpa_s,const u8 * dev_addr)507 wpas_dbus_signal_peer_device_lost(struct wpa_supplicant *wpa_s,
508 				  const u8 *dev_addr)
509 {
510 }
511 
512 static inline void
wpas_dbus_signal_p2p_peer_disconnected(struct wpa_supplicant * wpa_s,const u8 * member)513 wpas_dbus_signal_p2p_peer_disconnected(struct wpa_supplicant *wpa_s,
514 				       const u8 *member)
515 {
516 }
517 
518 static inline void
wpas_dbus_signal_p2p_wps_failed(struct wpa_supplicant * wpa_s,struct wps_event_fail * fail)519 wpas_dbus_signal_p2p_wps_failed(struct wpa_supplicant *wpa_s,
520 				struct wps_event_fail *fail)
521 {
522 }
523 
wpas_dbus_signal_certification(struct wpa_supplicant * wpa_s,int depth,const char * subject,const char * altsubject[],int num_altsubject,const char * cert_hash,const struct wpabuf * cert)524 static inline void wpas_dbus_signal_certification(struct wpa_supplicant *wpa_s,
525 						  int depth,
526 						  const char *subject,
527 						  const char *altsubject[],
528 						  int num_altsubject,
529 						  const char *cert_hash,
530 						  const struct wpabuf *cert)
531 {
532 }
533 
wpas_dbus_signal_preq(struct wpa_supplicant * wpa_s,const u8 * addr,const u8 * dst,const u8 * bssid,const u8 * ie,size_t ie_len,u32 ssi_signal)534 static inline void wpas_dbus_signal_preq(struct wpa_supplicant *wpa_s,
535 					 const u8 *addr, const u8 *dst,
536 					 const u8 *bssid,
537 					 const u8 *ie, size_t ie_len,
538 					 u32 ssi_signal)
539 {
540 }
541 
wpas_dbus_signal_eap_status(struct wpa_supplicant * wpa_s,const char * status,const char * parameter)542 static inline void wpas_dbus_signal_eap_status(struct wpa_supplicant *wpa_s,
543 					       const char *status,
544 					       const char *parameter)
545 {
546 }
547 
548 static inline
wpas_dbus_signal_sta_authorized(struct wpa_supplicant * wpa_s,const u8 * sta)549 void wpas_dbus_signal_sta_authorized(struct wpa_supplicant *wpa_s,
550 				     const u8 *sta)
551 {
552 }
553 
554 static inline
wpas_dbus_signal_sta_deauthorized(struct wpa_supplicant * wpa_s,const u8 * sta)555 void wpas_dbus_signal_sta_deauthorized(struct wpa_supplicant *wpa_s,
556 				       const u8 *sta)
557 {
558 }
559 
560 static inline
wpas_dbus_signal_p2p_invitation_received(struct wpa_supplicant * wpa_s,const u8 * sa,const u8 * dev_addr,const u8 * bssid,int id,int op_freq)561 void wpas_dbus_signal_p2p_invitation_received(struct wpa_supplicant *wpa_s,
562 					      const u8 *sa, const u8 *dev_addr,
563 					      const u8 *bssid, int id,
564 					      int op_freq)
565 {
566 }
567 
568 static inline
wpas_dbus_signal_mesh_group_started(struct wpa_supplicant * wpa_s,struct wpa_ssid * ssid)569 void wpas_dbus_signal_mesh_group_started(struct wpa_supplicant *wpa_s,
570 					 struct wpa_ssid *ssid)
571 {
572 }
573 
574 static inline
wpas_dbus_signal_mesh_group_removed(struct wpa_supplicant * wpa_s,const u8 * meshid,u8 meshid_len,int reason)575 void wpas_dbus_signal_mesh_group_removed(struct wpa_supplicant *wpa_s,
576 					 const u8 *meshid, u8 meshid_len,
577 					 int reason)
578 {
579 }
580 
581 static inline
wpas_dbus_signal_mesh_peer_connected(struct wpa_supplicant * wpa_s,const u8 * peer_addr)582 void wpas_dbus_signal_mesh_peer_connected(struct wpa_supplicant *wpa_s,
583 					  const u8 *peer_addr)
584 {
585 }
586 
587 static inline
wpas_dbus_signal_mesh_peer_disconnected(struct wpa_supplicant * wpa_s,const u8 * peer_addr,int reason)588 void wpas_dbus_signal_mesh_peer_disconnected(struct wpa_supplicant *wpa_s,
589 					     const u8 *peer_addr, int reason)
590 {
591 }
592 
593 #endif /* CONFIG_CTRL_IFACE_DBUS_NEW */
594 
595 #endif /* CTRL_IFACE_DBUS_H_NEW */
596