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