]> git.ipfire.org Git - thirdparty/hostap.git/blame - doc/dbus.doxygen
tests: Add basic power saving tests for ap_open
[thirdparty/hostap.git] / doc / dbus.doxygen
CommitLineData
612bb516 1/**
5eb513c3 2\page dbus wpa_supplicant D-Bus API
612bb516 3
5eb513c3
JM
4This section documents the wpa_supplicant D-Bus API. Every D-Bus
5interface implemented by wpa_supplicant is described here including
612bb516
JM
6their methods, signals, and properties with arguments, returned
7values, and possible errors.
8
9Interfaces:
10- \ref dbus_main
11- \ref dbus_interface
12- \ref dbus_wps
fa0d99c4 13- \ref dbus_p2pdevice
612bb516
JM
14- \ref dbus_bss
15- \ref dbus_network
fa0d99c4
JM
16- \ref dbus_peer
17- \ref dbus_group
18- \ref dbus_persistent_group
89e9cd25 19- \ref dbus_mesh
612bb516
JM
20
21
22\section dbus_main fi.w1.wpa_supplicant1
23
5eb513c3 24Interface implemented by the main wpa_supplicant D-Bus object
612bb516
JM
25registered in the bus with fi.w1.wpa_supplicant1 name.
26
27\subsection dbus_main_methods Methods
28
9a15420a 29<ul>
612bb516
JM
30 <li>
31 <h3>CreateInterface ( a{sv} : args ) --> o : interface</h3>
5eb513c3 32 <p>Registers a wireless interface in wpa_supplicant.</p>
612bb516
JM
33 <h4>Arguments</h4>
34 <dl>
35 <dt>a{sv} : args</dt>
36 <dd>
5eb513c3 37 A dictionary with arguments used to add the interface to wpa_supplicant. The dictionary may contain the following entries:
612bb516
JM
38 <table>
39 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th>
40 <tr><td>Ifname</td><td>s</td><td>Name of the network interface to control, e.g., wlan0</td><td>Yes</td>
545d282d 41 <tr><td>BridgeIfname</td><td>s</td><td>Name of the bridge interface to control, e.g., br0</td><td>No</td>
612bb516 42 <tr><td>Driver</td><td>s</td><td>Driver name which the interface uses, e.g., nl80211</td><td>No</td>
545d282d 43 <tr><td>ConfigFile</td><td>s</td><td>Configuration file path</td><td>No</td>
612bb516
JM
44 </table>
45 </dd>
46 </dl>
47 <h4>Returns</h4>
48 <dl>
49 <dt>o : interface</dt>
50 <dd>A D-Bus path to object representing created interface</dd>
51 </dl>
52 <h4>Possible errors</h4>
53 <dl>
54 <dt>fi.w1.wpa_supplicant1.InterfaceExists</dt>
5eb513c3 55 <dd>wpa_supplicant already controls this interface.</dd>
612bb516
JM
56 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
57 <dd>Creating interface failed for an unknown reason.</dd>
58 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
59 <dd>Invalid entries were found in the passed argument.</dd>
60 </dl>
61 </li>
62
63 <li>
64 <h3>RemoveInterface ( o : interface ) --> nothing</h3>
5eb513c3 65 <p>Deregisters a wireless interface from wpa_supplicant.</p>
612bb516
JM
66 <h4>Arguments</h4>
67 <dl>
68 <dt>o : interface</dt>
69 <dd>A D-Bus path to an object representing an interface to remove returned by CreateInterface</dd>
70 </dl>
71 <h4>Possible errors</h4>
72 <dl>
73 <dt>fi.w1.wpa_supplicant1.InterfaceUnknown</dt>
74 <dd>Object pointed by the path doesn't exist or doesn't represent an interface.</dd>
75 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
76 <dd>Removing interface failed for an unknown reason.</dd>
77 </dl>
78 </li>
79
80 <li>
81 <h3>GetInterface ( s : ifname ) --> o : interface</h3>
5eb513c3 82 <p>Returns a D-Bus path to an object related to an interface which wpa_supplicant already controls.</p>
612bb516
JM
83 <h4>Arguments</h4>
84 <dl>
85 <dt>s : ifname</dt>
86 <dd>Name of the network interface, e.g., wlan0</dd>
87 </dl>
88 <h4>Returns</h4>
89 <dl>
90 <dt>o : interface</dt>
91 <dd>A D-Bus path to an object representing an interface</dd>
92 </dl>
93 <h4>Possible errors</h4>
94 <dl>
95 <dt>fi.w1.wpa_supplicant1.InterfaceUnknown</dt>
5eb513c3 96 <dd>An interface with the passed name in not controlled by wpa_supplicant.</dd>
612bb516
JM
97 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
98 <dd>Getting an interface object path failed for an unknown reason.</dd>
99 </dl>
100 </li>
c143c3b7
NW
101
102 <li>
103 <h3>ExpectDisconnect ( ) --> nothing</h3>
104 <p>Notify wpa_supplicant of an externally triggered disconnection, e.g., due to system suspend.</p>
105 </li>
612bb516
JM
106 </ul>
107
108\subsection dbus_main_properties Properties
109
9a15420a 110<ul>
612bb516 111 <li>
a2753c28 112 <h3>DebugLevel - s - (read/write)</h3>
5eb513c3 113 <p>Global wpa_supplicant debugging level. Possible values are
a2753c28
MH
114 "msgdump" (verbose debugging), "debug" (debugging),
115 "info" (informative), "warning" (warnings), and "error" (errors).</p>
db9133ac
WS
116 </li>
117
118 <li>
119 <h3>DebugTimestamp - b - (read/write)</h3>
5eb513c3 120 <p>Global wpa_supplicant debugging parameter. Determines if timestamps are shown in debug logs.</p>
db9133ac
WS
121 </li>
122
123 <li>
124 <h3>DebugShowKeys - b - (read/write)</h3>
5eb513c3 125 <p>Global wpa_supplicant debugging parameter. Determines if secrets are shown in debug logs.</p>
612bb516
JM
126 </li>
127
128 <li>
129 <h3>Interfaces - ao - (read)</h3>
130 <p>An array with paths to D-Bus objects representing controlled interfaces each.</p>
131 </li>
132
133 <li>
134 <h3>EapMethods - as - (read)</h3>
135 <p>An array with supported EAP methods names.</p>
136 </li>
acf0cfde
JM
137
138 <li>
139 <h3>Capabilities - as - (read)</h3>
140 <p>An array with supported capabilities (e.g., "ap", "ibss-rsn", "p2p", "interworking").</p>
141 </li>
fa0d99c4
JM
142
143 <li>
144 <h3>WFDIEs - ay - (read/write)</h3>
145 <p>Wi-Fi Display subelements.</p>
146 </li>
612bb516
JM
147 </ul>
148
149\subsection dbus_main_signals Signals
150
9a15420a 151<ul>
612bb516 152 <li>
e376f119 153 <h3>InterfaceAdded ( o : interface, a{sv} : properties )</h3>
5eb513c3 154 <p>A new interface was added to wpa_supplicant.</p>
612bb516
JM
155 <h4>Arguments</h4>
156 <dl>
157 <dt>o : interface</dt>
158 <dd>A D-Bus path to an object representing the added interface</dd>
159 </dl>
e376f119
WS
160 <dl>
161 <dt>a{sv} : properties</dt>
162 <dd>A dictionary containing properties of added interface.</dd>
163 </dl>
612bb516
JM
164 </li>
165
166 <li>
167 <h3>InterfaceRemoved ( o : interface )</h3>
5eb513c3 168 <p>An interface was removed from wpa_supplicant.</p>
612bb516
JM
169 <h4>Arguments</h4>
170 <dl>
171 <dt>o : interface</dt>
172 <dd>A D-Bus path to an object representing the removed interface</dd>
173 </dl>
174 </li>
175
176 <li>
177 <h3>PropertiesChanged ( a{sv} : properties )</h3>
178 <p>Some properties have changed.</p>
179 <h4>Arguments</h4>
180 <dl>
181 <dt>a{sv} : properties</dt>
182 <dd>A dictionary with pairs of properties names which have changed and theirs new values. Possible dictionary keys are: "DebugParams"</dd>
183 </dl>
184 </li>
185 </ul>
186
187
188\section dbus_interface fi.w1.wpa_supplicant1.Interface
189
190Interface implemented by objects related to network interface added to
5eb513c3 191wpa_supplicant, i.e., returned by
612bb516
JM
192fi.w1.wpa_supplicant1.CreateInterface.
193
194\subsection dbus_interface_methods Methods
195
9a15420a 196<ul>
612bb516
JM
197 <li>
198 <h3>Scan ( a{sv} : args ) --> nothing</h3>
199 <p>Triggers a scan.</p>
200 <h4>Arguments</h4>
201 <dl>
202 <dt>a{sv} : args</dt>
203 <dd>
204 A dictionary with arguments describing scan type:
205 <table>
206 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th>
207 <tr><td>Type</td><td>s</td><td>Type of the scan. Possible values: "active", "passive"</td><td>Yes</td>
208 <tr><td>SSIDs</td><td>aay</td><td>Array of SSIDs to scan for (applies only if scan type is active)</td><td>No</td>
209 <tr><td>IEs</td><td>aay</td><td>Information elements to used in active scan (applies only if scan type is active)</td><td>No</td>
210 <tr><td>Channels</td><td>a(uu)</td><td>Array of frequencies to scan in form of (center, width) in MHz.</td><td>No</td>
c23eea88 211 <tr><td>AllowRoam</td><td>b</td><td>TRUE (or absent) to allow a roaming decision based on the results of this scan, FALSE to prevent a roaming decision.</td><td>No</td>
612bb516
JM
212 </table>
213 </dd>
214 </dl>
215 <h4>Possible errors</h4>
216 <dl>
217 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
218 <dd>Invalid entries were found in the passed argument.</dd>
219 </dl>
220 </li>
221
222 <li>
223 <h3>Disconnect ( ) --> nothing</h3>
224 <p>Disassociates the interface from current network.</p>
225 <h4>Possible errors</h4>
226 <dl>
8e5568f8 227 <dt>fi.w1.wpa_supplicant1.NotConnected</dt>
612bb516
JM
228 <dd>Interface is not connected to any network.</dd>
229 </dl>
230 </li>
231
232 <li>
233 <h3>AddNetwork ( a{sv} : args ) --> o : network</h3>
234 <p>Adds a new network to the interface.</p>
235 <h4>Arguments</h4>
236 <dl>
237 <dt>a{sv} : args</dt>
5eb513c3 238 <dd>A dictionary with network configuration. Dictionary entries are equivalent to entries in the "network" block in wpa_supplicant configuration file. Entry values should be appropriate type to the entry, e.g., an entry with key "frequency" should have value type int.</dd>
612bb516
JM
239 </dl>
240 <h4>Returns</h4>
241 <dl>
242 <dt>o : network</dt>
243 <dd>A D-Bus path to an object representing a configured network</dd>
244 </dl>
245 <h4>Possible errors</h4>
246 <dl>
247 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
248 <dd>Invalid entries were found in the passed argument.</dd>
249 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
250 <dd>Adding network failed for an unknown reason.</dd>
251 </dl>
252 </li>
253
254 <li>
255 <h3>RemoveNetwork ( o : network ) --> nothing</h3>
256 <p>Removes a configured network from the interface.</p>
257 <h4>Arguments</h4>
258 <dl>
259 <dt>o : network</dt>
260 <dd>A D-Bus path to an object representing a configured network returned by fi.w1.wpa_supplicant1.Interface.AddNetwork</dd>
261 </dl>
262 <h4>Possible errors</h4>
263 <dl>
8e5568f8 264 <dt>fi.w1.wpa_supplicant1.NetworkUnknown</dt>
612bb516
JM
265 <dd>A passed path doesn't point to any network object.</dd>
266 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
267 <dd>A passed path doesn't point to any network object.</dd>
268 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
269 <dd>Removing network failed for an unknown reason.</dd>
270 </dl>
271 </li>
624b1478
JM
272
273 <li>
274 <h3>RemoveAllNetworks ( ) --> nothing</h3>
275 <p>Remove all configured networks from the interface.</p>
276 </li>
612bb516
JM
277
278 <li>
279 <h3>SelectNetwork ( o : network ) --> nothing</h3>
280 <p>Attempt association with a configured network.</p>
281 <h4>Arguments</h4>
282 <dl>
283 <dt>o : network</dt>
284 <dd>A D-Bus path to an object representing a configured network returned by fi.w1.wpa_supplicant1.Interface.AddNetwork</dd>
285 </dl>
286 <h4>Possible errors</h4>
287 <dl>
8e5568f8 288 <dt>fi.w1.wpa_supplicant1.NetworkUnknown</dt>
612bb516
JM
289 <dd>A passed path doesn't point to any network object.</dd>
290 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
291 <dd>A passed path doesn't point to any network object.</dd>
292 </dl>
293 </li>
294
efd11c02
FC
295 <li>
296 <h3>Reassociate ( ) --> nothing</h3>
297 <p>Attempt reassociation.</p>
298 <h4>Possible errors</h4>
299 <dl>
300 <dt>fi.w1.wpa_supplicant1.InterfaceDisabled</dt>
301 <dd>The interface is disabled.</dd>
302 </dl>
303 </li>
304
f60cc313
JM
305 <li>
306 <h3>Reattach ( ) --> nothing</h3>
307 <p>Attempt reassociation back to the current BSS.</p>
308 <h4>Possible errors</h4>
309 <dl>
310 <dt>fi.w1.wpa_supplicant1.NotConnected</dt>
311 <dd>Interface is not connected to any network.</dd>
312 </dl>
313 </li>
314
b649c0af
MH
315 <li>
316 <h3>Reconnect ( ) --> nothing</h3>
317 <p>Attempt reconnection and connect if in disconnected state.</p>
318 <h4>Possible errors</h4>
319 <dl>
320 <dt>fi.w1.wpa_supplicant1.InterfaceDisabled</dt>
321 <dd>The interface is disabled.</dd>
322 </dl>
323 </li>
324
612bb516
JM
325 <li>
326 <h3>AddBlob ( s : name, ay : data ) --> nothing</h3>
327 <p>Adds a blob to the interface.</p>
328 <h4>Arguments</h4>
329 <dl>
330 <dt>s : name</dt>
331 <dd>A name of a blob</dd>
332 <dt>ay : data</dt>
333 <dd>A blob data</dd>
334 </dl>
335 <h4>Possible errors</h4>
336 <dl>
8e5568f8 337 <dt>fi.w1.wpa_supplicant1.BlobExists</dt>
612bb516
JM
338 <dd>A blob with the specified name already exists.</dd>
339 </dl>
340 </li>
341
342 <li>
343 <h3>RemoveBlob ( s : name ) --> nothing</h3>
344 <p>Removes the blob from the interface.</p>
345 <h4>Arguments</h4>
346 <dl>
347 <dt>s : name</dt>
348 <dd>A name of the blob to remove</dd>
349 </dl>
350 <h4>Possible errors</h4>
351 <dl>
8e5568f8 352 <dt>fi.w1.wpa_supplicant1.BlobUnknown</dt>
612bb516
JM
353 <dd>A blob with the specified name doesn't exist.</dd>
354 </dl>
355 </li>
356
357 <li>
358 <h3>GetBlob ( s : name ) --> ay : data</h3>
359 <p>Returns the blob data of a previously added blob.</p>
360 <h4>Arguments</h4>
361 <dl>
362 <dt>s : name</dt>
363 <dd>A name of the blob</dd>
364 </dl>
365 <h4>Returns</h4>
366 <dl>
367 <dt>ay : data</dt>
368 <dd>A blob data</dd>
369 </dl>
370 <h4>Possible errors</h4>
371 <dl>
8e5568f8 372 <dt>fi.w1.wpa_supplicant1.BlobUnknown</dt>
612bb516
JM
373 <dd>A blob with the specified name doesn't exist.</dd>
374 </dl>
375 </li>
67892d5c
TB
376 <li>
377 <h3>AutoScan ( s : arg ) --> nothing</h3>
378 <p>Set autoscan parameters for the interface.</p>
379 <h4>Arguments</h4>
380 <dl>
381 <dt>s : arg</dt>
382 <dd>Autoscan parameter line or empty to unset autoscan.</dd>
383 </dl>
384 <h4>Possible errors</h4>
385 <dl>
386 <dt>fi.w1.wpa_supplicant1.NoMemory</dt>
387 <dd>Needed memory was not possible to get allocated.</dd>
388 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
389 <dd>Invalid entries were found in the passed argument.</dd>
390 </dl>
754632c9 391 </li>
ca9c14fb
PS
392 <li>
393 <h3>TDLSDiscover ( s : peer_address ) --> nothing</h3>
394 <p>Initiate a TDLS discovery for a peer.</p>
395 <h4>Arguments</h4>
396 <dl>
397 <dt>s : peer_address</dt>
398 <dd>MAC address for the peer to perform TDLS discovery.</dd>
399 </dl>
400 <h4>Possible errors</h4>
401 <dl>
402 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
403 <dd>The "peer_address" argument is not a properly formatted MAC.</dd>
404 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
405 <dd>Initiating the TDLS operation failed for an unknown reason.</dd>
406 </dl>
407 </li>
408 <li>
409 <h3>TDLSSetup ( s : peer_address ) --> nothing</h3>
410 <p>Setup a TDLS session for a peer.</p>
411 <h4>Arguments</h4>
412 <dl>
413 <dt>s : peer_address</dt>
414 <dd>MAC address for the peer to perform TDLS setup.</dd>
415 </dl>
416 <h4>Possible errors</h4>
417 <dl>
418 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
419 <dd>The "peer_address" argument is not a properly formatted MAC.</dd>
420 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
421 <dd>Initiating the TDLS operation failed for an unknown reason.</dd>
422 </dl>
423 </li>
424 <li>
425 <h3>TDLSStatus ( s : peer_address ) --> s</h3>
426 <p>Return TDLS status with respect to a peer.</p>
427 <h4>Arguments</h4>
428 <dl>
429 <dt>s : peer_address</dt>
430 <dd>MAC address for the peer for which status is requested.</dd>
431 </dl>
432 <h4>Returns</h4>
433 <dl>
434 <dt>s : status</dt>
435 <dd>Current status of the TDLS link with the selected peer.</dd>
436 </dl>
437 <h4>Possible errors</h4>
438 <dl>
439 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
440 <dd>The "peer_address" argument is not a properly formatted MAC.</dd>
441 </dl>
442 </li>
443 <li>
444 <h3>TDLSTeardown ( s : peer_address ) --> nothing</h3>
445 <p>Tear down a TDLS session with a peer.</p>
446 <h4>Arguments</h4>
447 <dl>
448 <dt>s : peer_address</dt>
449 <dd>MAC address for the peer to tear down TDLS connectivity with.</dd>
450 </dl>
451 <h4>Possible errors</h4>
452 <dl>
453 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
454 <dd>The "peer_address" argument is not a properly formatted MAC.</dd>
455 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
456 <dd>Initiating the TDLS operation failed for an unknown reason.</dd>
457 </dl>
458 </li>
2a57b4b8
NC
459 <li>
460 <h3>TDLSChannelSwitch ( a{sv} : args ) --> nothing</h3>
461 <p>Configure TDLS channel switching behavior with a peer.</p>
462 <h4>Arguments</h4>
463 <dl>
464 <dt>a{sv} : args</dt>
465 <dd>A dictionary with arguments identifying the peer and channel switching behavior.</dd>
466 </dl>
467 </li>
9f494746
NC
468 <li>
469 <h3>TDLSCancelChannelSwitch ( s : peer_address ) --> nothing</h3>
470 <p>Disable channel switching for a TDLS session with a peer.</p>
471 <h4>Arguments</h4>
472 <dl>
473 <dt>s : peer_address</dt>
474 <dd>MAC address for the peer.</dd>
475 </dl>
476 </li>
af041f99
AA
477 <li>
478 <h3>VendorElemAdd ( i: frame_id, ay: ielems ) --> nothing</h3>
479 <p>Add Vendor Elements to corresponding frame ID.</p>
480 <h4>Arguments</h4>
481 <dl>
482 <dt>i : frame_id</dt>
483 <dd>Frame ID for which Vendor specific IE is to be added.</dd>
484 <dt>ay : ielems</dt>
485 <dd>Information Element(s).</dd>
486 </dl>
487 <h4>Possible errors</h4>
488 <dl>
489 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
490 <dd>The "ielems" argument is not a properly formatted or size mismatch.</dd>
491 <dt>fi.w1.wpa_supplicant1.NoMemory</dt>
492 <dd>Needed memory was not possible to get allocated.</dd>
493 </dl>
494 </li>
495 <li>
496 <h3>VendorElemGet ( i: frame_id ) --> ay: ielems</h3>
497 <p>Get Vendor Elements of corresponding frame ID.</p>
498 <h4>Arguments</h4>
499 <dl>
500 <dt>i : frame_id</dt>
501 <dd>Frame ID for which Vendor specific IE is being queried.</dd>
502 <dt>ay : ielems</dt>
503 <dd>Information Element(s).</dd>
504 </dl>
505 <h4>Possible errors</h4>
506 <dl>
507 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
508 <dd>The "frame_id" argument is not valid.</dd>
509 </dl>
510 </li>
511 <li>
512 <h3>VendorElemRem ( i: frame_id, ay: ielems ) --> nothing</h3>
513 <p>Remove Vendor Elements of corresponding frame ID.</p>
514 <h4>Arguments</h4>
515 <dl>
516 <dt>i : frame_id</dt>
517 <dd>Frame ID for which Vendor specific IE is to be removed.</dd>
518 <dt>ay : ielems</dt>
519 <dd>Information Element(s) OR * to remove all.</dd>
520 </dl>
521 <h4>Possible errors</h4>
522 <dl>
523 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
524 <dd>The "ielems" argument is not a properly formatted or size mismatch.</dd>
525 <dt>fi.w1.wpa_supplicant1.NoMemory</dt>
526 <dd>Needed memory was not possible to get allocated.</dd>
527 </dl>
528 </li>
2d0fe6bc
PK
529 <li>
530 <h3>SaveConfig ( ) --> nothing</h3>
531 <p>Save configuration to the configuration file.</p>
532 </li>
19395054
SB
533 <li>
534 <h3>AbortScan ( ) --> nothing</h3>
535 <p>Abort ongoing scan operation.</p>
536 </li>
754632c9
PS
537 <li>
538 <h3>EAPLogoff ( ) --> nothing</h3>
539 <p>IEEE 802.1X EAPOL state machine logoff.</p>
540 </li>
541 <li>
542 <h3>EAPLogon ( ) --> nothing</h3>
543 <p>IEEE 802.1X EAPOL state machine logon.</p>
544 </li>
bdec7ee5 545
c35d7923
JM
546 <li>
547 <h3>NetworkReply ( o : network, s : field, s : value ) --> nothing</h3>
548 <p>Provide parameter requested by NetworkRequest().</p>
549 <h4>Arguments</h4>
550 <dl>
551 <dt>o : network</dt>
552 <dd>A D-Bus path to an object representing the network (copied from NetworkRequest()).</dd>
553 <dt>s : field</dt>
554 <dd>Requested information (copied from NetworkRequest()).</dd>
555 <dt>s : value</dt>
556 <dd>The requested information (e.g., password for EAP authentication).</dd>
557 </dl>
558 <h4>Possible errors</h4>
559 <dl>
560 <dt>fi.w1.wpa_supplicant1.NetworkUnknown</dt>
561 <dd>A passed path doesn't point to any network object.</dd>
562 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
563 <dd>A passed path doesn't point to any network object.</dd>
564 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
565 <dd>IEEE 802.1X support was not included in the build.</dd>
566 </dl>
567 </li>
568
bdec7ee5
MS
569 <li>
570 <h3>SetPKCS11EngineAndModulePath ( s : pkcs11_engine_path, s : pkcs11_module_path ) --> nothing</h3>
571 <p>Set PKCS #11 engine and module path.</p>
572 <h4>Arguments</h4>
573 <dl>
574 <dt>s : pkcs11_engine_path</dt>
575 <dd>PKCS #11 engine path.</dd>
576 <dt>s : pkcs11_module_path</dt>
577 <dd>PKCS #11 module path.</dd>
578 </dl>
579 <h4>Possible errors</h4>
580 <dl>
581 <dt>org.freedesktop.DBus.Error.Failed.InvalidArgs</dt>
582 <dd>Invalid PKCS #11 engine or module path.</dd>
583 <dt>org.freedesktop.DBus.Error.Failed</dt>
584 <dd>Reinit of the EAPOL state machine with the new PKCS #11 engine and module path failed.</dd>
585 </dl>
586 </li>
a46652fe
JM
587 <li>
588 <h3>SignalPoll ( ) --> a{sv} : properties</h3>
589 <p>Fetch signal properties for the current connection.</p>
590 <h4>Returns</h4>
591 <dl>
592 <dt>a{sv} : properties</dt>
593 <dd>
594 <table>
595 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th>
596 <tr><td>linkspeed</td><td>i</td><td>Link speed (Mbps)</td><td>No</td>
597 <tr><td>noise</td><td>i</td><td>Noise (dBm)</td><td>No</td>
598 <tr><td>width</td><td>s</td><td>Channel width</td><td>No</td>
599 <tr><td>frequency</td><td>u</td><td>Frequency (MHz)</td><td>No</td>
600 <tr><td>rssi</td><td>i</td><td>RSSI (dBm)</td><td>No</td>
601 <tr><td>avg-rssi</td><td>i</td><td>Average RSSI (dBm)</td><td>No</td>
602 <tr><td>center-frq1</td><td>i</td><td>VHT segment 1 frequency (MHz)</td><td>No</td>
603 <tr><td>center-frq2</td><td>i</td><td>VHT segment 2 frequency (MHz)</td><td>No</td>
604 </table>
605 </dd>
606 </dl>
607 </li>
ea53bebf
JM
608 <li>
609 <h3>FlushBSS ( u : age ) --> nothing</h3>
610 <p>Flush BSS entries from the cache.</p>
611 <h4>Arguments</h4>
612 <dl>
613 <dt>u : age</dt>
614 <dd>Maximum age in seconds for BSS entries to keep in cache (0 = remove all entries).</dd>
615 </dl>
616 </li>
9f972b45
JM
617
618 <li>
619 <h3>SubscribeProbeReq ( ) --> nothing</h3>
620 <p>Subscribe to receive Probe Request events. This is needed in addition to registering a signal handler for the ProbeRequest signal to avoid flooding D-Bus with all Probe Request indications when no application is interested in them.</p>
621 <h4>Possible errors</h4>
622 <dl>
623 <dt>fi.w1.wpa_supplicant1.SubscriptionInUse</dt>
624 <dd>Another application is already subscribed.</dd>
625 <dt>fi.w1.wpa_supplicant1.NoMemory</dt>
626 <dd>Needed memory was not possible to get allocated.</dd>
627 </dl>
628 </li>
629
630 <li>
631 <h3>UnsubscribeProbeReq ( ) --> nothing</h3>
632 <p>Unsubscribe from receiving Probe Request events.</p>
633 <h4>Possible errors</h4>
634 <dl>
635 <dt>fi.w1.wpa_supplicant1.NoSubscription</dt>
636 <dd>No subscription in place.</dd>
637 <dt>fi.w1.wpa_supplicant1.SubscriptionNotYou</dt>
638 <dd>Subscription in place, but for another process.</dd>
639 </dl>
640 </li>
612bb516
JM
641 </ul>
642
643\subsection dbus_interface_properties Properties
644
9a15420a 645<ul>
612bb516
JM
646 <li>
647 <h3>Capabilities - a{sv} - (read)</h3>
648 <p>Capabilities of the interface. Dictionary contains following entries:</p>
649 <table>
650 <tr><th>Key</th><th>Value type</th><th>Description</th>
117875db
JM
651 <tr><td>Pairwise</td><td>as</td><td>Possible array elements: "ccmp-256", "gcmp-256", "ccmp", "gcmp", "tkip", "none"</td>
652 <tr><td>Group</td><td>as</td><td>Possible array elements: "ccmp-256", "gcmp-256", "ccmp", "gcmp", "tkip", "wep104", "wep40"</td>
653 <tr><td>GroupMgmt</td><td>as</td><td>Possible array elements: "aes-128-cmac", "bip-gmac-128", "bip-gmac-256", "bip-cmac-256"</td>
c56ce48a 654 <tr><td>KeyMgmt</td><td>as</td><td>Possible array elements: "wpa-psk", "wpa-ft-psk", "wpa-psk-sha256", "wpa-eap", "wpa-ft-eap", "wpa-eap-sha256", "ieee8021x", "wpa-none", "wps", "none"</td>
612bb516
JM
655 <tr><td>Protocol</td><td>as</td><td>Possible array elements: "rsn", "wpa"</td>
656 <tr><td>AuthAlg</td><td>as</td><td>Possible array elements: "open", "shared", "leap"</td>
657 <tr><td>Scan</td><td>as</td><td>Possible array elements: "active", "passive", "ssid"</td>
658 <tr><td>Modes</td><td>as</td><td>Possible array elements: "infrastructure", "ad-hoc", "ap"</td>
659 </table>
660 </li>
661
662 <li>
663 <h3>State - s - (read)</h3>
664 <p>A state of the interface. Possible values are: return "disconnected", "inactive", "scanning", "authenticating", "associating", "associated", "4way_handshake", "group_handshake", "completed","unknown".</p>
665 </li>
666
667 <li>
668 <h3>Scanning - b - (read)</h3>
669 <p>Determines if the interface is already scanning or not</p>
670 </li>
671
672 <li>
673 <h3>ApScan - u - (read/write)</h3>
5eb513c3 674 <p>Identical to ap_scan entry in wpa_supplicant configuration file. Possible values are 0, 1 or 2.</p>
612bb516
JM
675 </li>
676
c6e86b63
MA
677 <li>
678 <h3>BSSExpireAge - u - (read/write)</h3>
5eb513c3 679 <p>Identical to bss_expiration_age entry in wpa_supplicant configuration file.</p>
c6e86b63
MA
680 </li>
681
682 <li>
683 <h3>BSSExpireCount - u - (read/write)</h3>
5eb513c3 684 <p>Identical to bss_expiration_scan_count entry in wpa_supplicant configuration file.</p>
c6e86b63
MA
685 </li>
686
687 <li>
688 <h3>Country - s - (read/write)</h3>
5eb513c3 689 <p>Identical to country entry in wpa_supplicant configuration file.</p>
c6e86b63
MA
690 </li>
691
612bb516
JM
692 <li>
693 <h3>Ifname - s - (read)</h3>
694 <p>Name of network interface controlled by the interface, e.g., wlan0.</p>
695 </li>
696
697 <li>
698 <h3>BridgeIfname - s - (read)</h3>
699 <p>Name of bridge network interface controlled by the interface, e.g., br0.</p>
700 </li>
701
702 <li>
703 <h3>Driver - s - (read)</h3>
704 <p>Name of driver used by the interface, e.g., nl80211.</p>
705 </li>
706
b44d9c76
JB
707 <li>
708 <h3>ConfigFile - s - (read)</h3>
709 <p>Configuration file path. Returns an empty string if no configuration file is in use.</p>
710 </li>
711
612bb516
JM
712 <li>
713 <h3>CurrentBSS - o - (read)</h3>
5eb513c3 714 <p>Path to D-Bus object representing BSS which wpa_supplicant is associated with, or "/" if is not associated at all.</p>
612bb516
JM
715 </li>
716
717 <li>
718 <h3>CurrentNetwork - o - (read)</h3>
5eb513c3 719 <p>Path to D-Bus object representing configured network which wpa_supplicant uses at the moment, or "/" if doesn't use any.</p>
612bb516
JM
720 </li>
721
fd5768b6
JM
722 <li>
723 <h3>CurrentAuthMode - s - (read)</h3>
724 <p>Current authentication type.</p>
725 </li>
726
612bb516
JM
727 <li>
728 <h3>Blobs - as - (read)</h3>
729 <p>List of blobs names added to the Interface.</p>
730 </li>
731
732 <li>
733 <h3>BSSs - ao - (read)</h3>
734 <p>List of D-Bus objects paths representing BSSs known to the interface, i.e., scan results.</p>
735 </li>
736
c3f23ad6
AS
737 <li>
738 <h3>Stations - ao - (read)</h3>
739 <p>List of D-Bus objects paths representing connected stations in AP mode.</p>
740 </li>
741
612bb516
JM
742 <li>
743 <h3>Networks - ao - (read)</h3>
744 <p>List of D-Bus objects paths representing configured networks.</p>
745 </li>
c6e86b63
MA
746
747 <li>
748 <h3>FastReauth - b - (read/write)</h3>
5eb513c3 749 <p>Identical to fast_reauth entry in wpa_supplicant configuration file.</p>
c6e86b63
MA
750 </li>
751
752 <li>
753 <h3>ScanInterval - i - (read/write)</h3>
754 <p>Time (in seconds) between scans for a suitable AP. Must be >= 0.</p>
755 </li>
bdec7ee5
MS
756
757 <li>
758 <h3>PKCS11EnginePath - s - (read)</h3>
759 <p>PKCS #11 engine path.</p>
760 </li>
761
762 <li>
763 <h3>PKCS11ModulePath - s - (read)</h3>
764 <p>PKCS #11 module path.</p>
765 </li>
fd5768b6
JM
766
767 <li>
768 <h3>DisconnectReason - i - (read)</h3>
769 <p>The most recent IEEE 802.11 reason code for disconnect. Negative value indicates locally generated disconnection.</p>
770 </li>
e50c50d5 771
38b405c8
AK
772 <li>
773 <h3>AuthStatusCode - i - (read)</h3>
774 <p>The most recent IEEE 802.11 status code for authentication.</p>
775 </li>
776
c7fb678f
NS
777 <li>
778 <h3>AssocStatusCode - i - (read)</h3>
779 <p>The most recent IEEE 802.11 status code for association rejection.</p>
780 </li>
781
2bbad1c7
MW
782 <li>
783 <h3>RoamTime - u - (read)</h3>
784 <p>The most recent roam time in milliseconds.</p>
785 </li>
786
787 <li>
788 <h3>RoamComplete - b - (read)</h3>
789 <p>The most recent roam success or failure.</p>
790 </li>
791
792 <li>
793 <h3>SessionLength - u - (read)</h3>
794 <p>The most recent BSS session length in milliseconds.</p>
795 </li>
796
80d06d0c
MW
797 <li>
798 <h3>BSSTMStatus - u - (read)</h3>
799 <p>The most recent BSS Transition Management status code.</p>
800 </li>
801
e50c50d5
DW
802 <li>
803 <h3>EapolVersion - s - (read/write)</h3>
804 <p>IEEE 802.1X/EAPOL version number</p>
805 </li>
806
807 <li>
808 <h3>Bgscan - s - (read/write)</h3>
809 <p>Background scan and roaming parameters or an empty string if none</p>
810 </li>
811
812 <li>
813 <h3>DisableScanOffload - s - (read/write)</h3>
814 <p>Disable automatic offloading of scan requests</p>
815 </li>
816
817 <li>
818 <h3>OpenscEnginePath - s - (read/write)</h3>
819 <p>Path to the OpenSSL engine for opensc</p>
820 </li>
821
822 <li>
823 <h3>OpensslCiphers - s - (read/write)</h3>
824 <p>OpenSSL cipher string</p>
825 </li>
826
827 <li>
828 <h3>PcscReader - s - (read/write)</h3>
829 <p>PC/SC reader name prefix</p>
830 </li>
831
832 <li>
833 <h3>PcscPin - s - (read/write)</h3>
834 <p>PIN for USIM, GSM SIM, and smartcards</p>
835 </li>
836
837 <li>
838 <h3>ExternalSim - s - (read/write)</h3>
839 <p>Use external processing for SIM/USIM operations</p>
840 </li>
841
842 <li>
843 <h3>DriverParam - s - (read/write)</h3>
844 <p>Driver interface parameters</p>
845 </li>
846
847 <li>
848 <h3>Dot11RSNAConfigPMKLifetime - s - (read/write)</h3>
849 <p>Maximum lifetime of a PMK</p>
850 </li>
851
852 <li>
853 <h3>Dot11RSNAConfigPMKReauthThreshold - s - (read/write)</h3>
854 <p>PMK re-authentication threshold</p>
855 </li>
856
857 <li>
858 <h3>Dot11RSNAConfigSATimeout - s - (read/write)</h3>
859 <p>Security association timeout</p>
860 </li>
861
862 <li>
863 <h3>BssMaxCount - s - (read/write)</h3>
864 <p>Maximum number of BSS entries to keep in memory</p>
865 </li>
866
867 <li>
868 <h3>FilterSsids - s - (read/write)</h3>
869 <p>SSID-based scan result filtering</p>
870 </li>
871
872 <li>
873 <h3>FilterRssi - s - (read/write)</h3>
874 <p>RSSI-based scan result filtering</p>
875 </li>
876
877 <li>
878 <h3>MaxNumSta - s - (read/write)</h3>
879 <p>Maximum number of STAs in an AP/P2P GO</p>
880 </li>
881
882 <li>
883 <h3>DisassocLowAck - s - (read/write)</h3>
884 <p>Disassocicate stations with massive packet loss</p>
885 </li>
886
887 <li>
888 <h3>Interworking - s - (read/write)</h3>
889 <p>Whether Interworking (IEEE 802.11u) is enabled</p>
890 </li>
891
892 <li>
893 <h3>Hessid - s - (read/write)</h3>
894 <p>Homogenous ESS identifier</p>
895 </li>
896
897 <li>
898 <h3>AccessNetworkType - s - (read/write)</h3>
899 <p>Access Network Type</p>
900 </li>
901
902 <li>
903 <h3>PbcInM1 - s - (read/write)</h3>
904 <p>AP mode WPS probing workaround for PBC with Windows 7</p>
905 </li>
906
907 <li>
908 <h3>Autoscan - s - (read/write)</h3>
909 <p>Automatic scan parameters or an empty string if none</p>
910 </li>
911
912 <li>
913 <h3>WpsNfcDevPwId - s - (read/write)</h3>
914 <p>NFC Device Password ID for password token</p>
915 </li>
916
917 <li>
918 <h3>WpsNfcDhPubkey - s - (read/write)</h3>
919 <p>NFC DH Public Key for password token</p>
920 </li>
921
922 <li>
923 <h3>WpsNfcDhPrivkey - s - (read/write)</h3>
924 <p>NFC DH Private Key for password token</p>
925 </li>
926
927 <li>
928 <h3>WpsNfcDevPw - s - (read/write)</h3>
929 <p>NFC Device Password for password token</p>
930 </li>
931
932 <li>
933 <h3>ExtPasswordBackend - s - (read/write)</h3>
934 <p>External password backend or an empty string if none</p>
935 </li>
936
937 <li>
938 <h3>P2pGoMaxInactivity - s - (read/write)</h3>
939 <p>Timeout in seconds to detect STA inactivity</p>
940 </li>
941
942 <li>
943 <h3>AutoInterworking - s - (read/write)</h3>
944 <p>Whether to use network selection automatically</p>
945 </li>
946
947 <li>
948 <h3>Okc - s - (read/write)</h3>
949 <p>Whether to enable opportunistic key caching by default</p>
950 </li>
951
952 <li>
953 <h3>Pmf - s - (read/write)</h3>
954 <p>Whether to enable/require PMF by default</p>
955 </li>
956
957 <li>
958 <h3>SaeGroups - s - (read/write)</h3>
959 <p>Preference list of enabled groups for SAE</p>
960 </li>
961
962 <li>
963 <h3>DtimPeriod - s - (read/write)</h3>
964 <p>Default DTIM period in Beacon intervals</p>
965 </li>
966
967 <li>
968 <h3>BeaconInt - s - (read/write)</h3>
969 <p>Default Beacon interval in TU</p>
970 </li>
971
972 <li>
973 <h3>IgnoreOldScanRes - s - (read/write)</h3>
974 <p>Ignore scan results older than request</p>
975 </li>
976
977 <li>
978 <h3>FreqList - s - (read/write)</h3>
979 <p>Array of allowed scan frequencies or an empty string for all</p>
980 </li>
981
982 <li>
983 <h3>ScanCurFreq - s - (read/write)</h3>
984 <p>Whether to scan only the current channel</p>
985 </li>
986
987 <li>
988 <h3>SchedScanInterval - s - (read/write)</h3>
989 <p>schedule scan interval</p>
990 </li>
991
992 <li>
993 <h3>TdlsExternalControl - s - (read/write)</h3>
994 <p>External control for TDLS setup requests</p>
995 </li>
996
997 <li>
998 <h3>OsuDir - s - (read/write)</h3>
999 <p>OSU provider information directory</p>
1000 </li>
1001
1002 <li>
1003 <h3>WowlanTriggers - s - (read/write)</h3>
1004 <p>Wake-on-WLAN triggers</p>
1005 </li>
1006
1007 <li>
1008 <h3>P2pSearchDelay - s - (read/write)</h3>
1009 <p>Extra delay between concurrent search iterations</p>
1010 </li>
1011
1012 <li>
1013 <h3>MacAddr - s - (read/write)</h3>
1014 <p>MAC address policy default</p>
1015 </li>
1016
1017 <li>
1018 <h3>RandAddrLifetime - s - (read/write)</h3>
1019 <p>Lifetime of random MAC address in seconds</p>
1020 </li>
1021
1022 <li>
1023 <h3>PreassocMacAddr - s - (read/write)</h3>
1024 <p>Pre-association MAC address policy</p>
1025 </li>
1026
1027 <li>
1028 <h3>KeyMgmtOffload - s - (read/write)</h3>
1029 <p>Use key management offload</p>
1030 </li>
1031
1032 <li>
1033 <h3>PassiveScan - s - (read/write)</h3>
1034 <p>Whether to force passive scan for network connection</p>
1035 </li>
1036
1037 <li>
1038 <h3>ReassocSameBssOptim - s - (read/write)</h3>
1039 <p>Whether to optimize reassoc-to-same-BSS</p>
1040 </li>
1041
1042 <li>
1043 <h3>WpsPriority - s - (read/write)</h3>
1044 <p>Priority for the networks added through WPS</p>
1045 </li>
10f8351d
EC
1046
1047 <li>
1048 <h3>MACAddressRandomizationMask - a{say} - (read/write)</h3>
1049 <p>Masks to show which bits not to randomize with MAC address randomization. Possible keys are "scan", "sched_scan", and "pno". Values must be an array of 6 bytes.</p>
1050 <p>When this property is set, the new dictionary replaces the old value, rather than merging them together. Leaving a key out of the dictionary will turn off MAC address randomization for that scan type.</p>
1051 </li>
612bb516
JM
1052 </ul>
1053
1054\subsection dbus_interface_signals Signals
1055
9a15420a 1056<ul>
612bb516
JM
1057 <li>
1058 <h3>ScanDone ( b : success )</h3>
1059 <p>Scanning finished. </p>
1060 <h4>Arguments</h4>
1061 <dl>
1062 <dt>s : success</dt>
1063 <dd>Determines if scanning was successful. If so, results are available.</dd>
1064 </dl>
1065 </li>
1066
612bb516 1067 <li>
e376f119 1068 <h3>BSSAdded ( o : BSS, a{sv} : properties )</h3>
612bb516
JM
1069 <p>Interface became aware of a new BSS.</p>
1070 <h4>Arguments</h4>
1071 <dl>
1072 <dt>o : BSS</dt>
1073 <dd>A D-Bus path to an object representing the new BSS.</dd>
1074 </dl>
e376f119
WS
1075 <dl>
1076 <dt>a{sv} : properties</dt>
1077 <dd>A dictionary containing properties of added BSS.</dd>
1078 </dl>
612bb516
JM
1079 </li>
1080
1081 <li>
1082 <h3>BSSRemoved ( o : BSS )</h3>
1083 <p>BSS disappeared.</p>
1084 <h4>Arguments</h4>
1085 <dl>
1086 <dt>o : BSS</dt>
1087 <dd>A D-Bus path to an object representing the BSS.</dd>
1088 </dl>
1089 </li>
1090
1091 <li>
1092 <h3>BlobAdded ( s : blobName )</h3>
1093 <p>A new blob has been added to the interface.</p>
1094 <h4>Arguments</h4>
1095 <dl>
1096 <dt>s : blobName</dt>
1097 <dd>A name of the added blob.</dd>
1098 </dl>
1099 </li>
1100
1101 <li>
1102 <h3>BlobRemoved ( s : blobName )</h3>
1103 <p>A blob has been removed from the interface.</p>
1104 <h4>Arguments</h4>
1105 <dl>
1106 <dt>s : blobName</dt>
1107 <dd>A name of the removed blob.</dd>
1108 </dl>
1109 </li>
1110
1111 <li>
e376f119 1112 <h3>NetworkAdded ( o : network, a{sv} : properties )</h3>
612bb516
JM
1113 <p>A new network has been added to the interface.</p>
1114 <h4>Arguments</h4>
1115 <dl>
1116 <dt>o : network</dt>
1117 <dd>A D-Bus path to an object representing the added network.</dd>
1118 </dl>
e376f119
WS
1119 <dl>
1120 <dt>a{sv} : properties</dt>
1121 <dd>A dictionary containing properties of added network.</dd>
1122 </dl>
612bb516
JM
1123 </li>
1124
1125 <li>
1126 <h3>NetworkRemoved ( o : network )</h3>
1127 <p>The network has been removed from the interface.</p>
1128 <h4>Arguments</h4>
1129 <dl>
1130 <dt>o : network</dt>
1131 <dd>A D-Bus path to an object representing the removed network.</dd>
1132 </dl>
1133 </li>
1134
1135 <li>
1136 <h3>NetworkSelected ( o : network )</h3>
1137 <p>The network has been selected.</p>
1138 <h4>Arguments</h4>
1139 <dl>
1140 <dt>o : network</dt>
1141 <dd>A D-Bus path to an object representing the selected network.</dd>
1142 </dl>
1143 </li>
1144
8a901d75
CZ
1145 <li>
1146 <h3>StaAuthorized ( s : mac )</h3>
1147 <p>A new station has been authorized to the interface.</p>
1148 <h4>Arguments</h4>
1149 <dl>
1150 <dt>s : mac</dt>
1151 <dd>A mac address which has been authorized.</dd>
1152 </dl>
1153 </li>
1154
1155 <li>
1156 <h3>StaDeauthorized ( s : mac )</h3>
1157 <p>A station has been deauthorized to the interface.</p>
1158 <h4>Arguments</h4>
1159 <dl>
1160 <dt>s : mac</dt>
1161 <dd>A mac address which has been deauthorized.</dd>
1162 </dl>
1163 </li>
1164
c3f23ad6
AS
1165 <li>
1166 <h3>StationAdded ( o : Station, a{sv} : properties )</h3>
1167 <p>A new station has been added to the interface.</p>
1168 <p>This signal complements StaAuthorized, passing the Station object and its properties.</p>
1169 <h4>Arguments</h4>
1170 <dl>
1171 <dt>o : Station</dt>
1172 <dd>A D-Bus path to an object representing the new Station.</dd>
1173 </dl>
1174 <dl>
1175 <dt>a{sv} : properties</dt>
1176 <dd>A dictionary containing properties of added Station.</dd>
1177 </dl>
1178 </li>
1179
1180 <li>
1181 <h3>StationRemoved ( o : Station )</h3>
1182 <p>The station has been removed from the interface.</p>
1183 <p>This signal complements StaDeauthorized, passing the Station object.</p>
1184 <h4>Arguments</h4>
1185 <dl>
1186 <dt>o : Station</dt>
1187 <dd>A D-Bus path to an object representing the Station.</dd>
1188 </dl>
1189 </li>
1190
612bb516
JM
1191 <li>
1192 <h3>PropertiesChanged ( a{sv} : properties )</h3>
1193 <p>Some properties have changed.</p>
1194 <h4>Arguments</h4>
1195 <dl>
1196 <dt>a{sv} : properties</dt>
27f43d8d 1197 <dd>A dictionary with pairs of properties names which have changed and theirs new values. Possible dictionary keys are: "ApScan", "Scanning", "State", "CurrentBSS", "CurrentNetwork"</dd>
612bb516
JM
1198 </dl>
1199 </li>
c35d7923
JM
1200
1201 <li>
1202 <h3>Certification ( a{sv} : parameters )</h3>
1203 <p>Information about server TLS certificates.</p>
1204 <h4>Arguments</h4>
1205 <dl>
1206 <dt>a{sv} : parameters</dt>
d07d3fbd 1207 <dd>A dictionary with pairs of field names and their values. Possible dictionary keys are: "depth", "subject", "altsubject", "cert_hash", "cert".</dd>
c35d7923
JM
1208 </dl>
1209 </li>
1210
1211 <li>
1212 <h3>EAP ( s : status, s : parameter )</h3>
1213 <p>Information about EAP peer status.</p>
1214 <h4>Arguments</h4>
1215 <dl>
1216 <dt>s : status</dt>
1217 <dd>Operation, e.g., "started", "accept proposed method", "remote certificate verification", "eap parameter needed", "completion".</dd>
1218 <dt>s : parameter</dt>
1219 <dd>Information about the operation, e.g., EAP method name, "success".</dd>
1220 </dl>
1221 </li>
1222
1223 <li>
1224 <h3>NetworkRequest ( o : network, s : field, s : txt )</h3>
1225 <p>Request for network parameter. NetworkResponse() is used to provide the requested parameter.</p>
1226 <h4>Arguments</h4>
1227 <dl>
1228 <dt>o : network</dt>
1229 <dd>D-Bus path to an object representing the network.</dd>
1230 <dt>s : field</dt>
1231 <dd>Requested information, e.g., "PASSWORD".</dd>
1232 <dt>txt : field</dt>
1233 <dd>Human readable information about the requested information.</dd>
1234 </dl>
1235 </li>
9f972b45
JM
1236
1237 <li>
1238 <h3>ProbeRequest ( a{sv} : args )</h3>
1239 <p>Information about a received Probe Request frame. This signal is delivered only to a single application that has subscribed to received the events with SubscribeProbeReq().</p>
1240 <h4>Arguments</h4>
1241 <dl>
1242 <dt>a{sv} : args</dt>
1243 <dd>A dictionary with pairs of field names and their values. Possible dictionary keys are: "addr", "dst", "bssid", "ies", "signal".</dd>
1244 </dl>
1245 </li>
612bb516
JM
1246 </ul>
1247
1248
1249\section dbus_wps fi.w1.wpa_supplicant1.Interface.WPS
1250
fa0d99c4 1251Interface for performing WPS (Wi-Fi Simple Config) operations.
612bb516
JM
1252
1253\subsection dbus_wps_methods Methods
1254
9a15420a 1255<ul>
612bb516
JM
1256 <li>
1257 <h3>Start ( a{sv} : args ) --> a{sv} : output</h3>
fa0d99c4 1258 <p>Starts WPS configuration. Note: When used with P2P groups, this needs to be issued on the GO group interface.</p>
612bb516
JM
1259 <h4>Arguments</h4>
1260 <dl>
1261 <dt>a{sv} : args</dt>
1262 <dd>
1263 A dictionary with arguments used to start WPS configuration. The dictionary may contain the following entries:
1264 <table>
1265 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th>
1266 <tr><td>Role</td><td>s</td><td>The device's role. Possible values are "enrollee" and "registrar".</td><td>Yes</td>
1267 <tr><td>Type</td><td>s</td><td>WPS authentication type. Applies only for enrollee role. Possible values are "pin" and "pbc".</td><td>Yes, for enrollee role; otherwise no</td>
1268 <tr><td>Pin</td><td>s</td><td>WPS Pin.</td><td>Yes, for registrar role; otherwise optional</td>
fa0d99c4
JM
1269 <tr><td>Bssid</td><td>ay</td><td>Note: This is used to specify the peer MAC address when authorizing WPS connection in AP or P2P GO role.</td><td>No</td>
1270 <tr><td>P2PDeviceAddress</td><td>ay</td><td>P2P Device Address of a peer to authorize for PBC connection. Used only in P2P GO role.</td><td>No</td>
612bb516
JM
1271 </table>
1272 </dd>
1273 </dl>
1274 <h4>Returns</h4>
1275 <dl>
1276 <dt>a{sv} : output</dt>
1277 <dd>
1278 <table>
1279 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th>
1280 <tr><td>Pin</td><td>s</td><td>Newly generated PIN, if not specified for enrollee role and pin authentication type.</td><td>No</td>
1281 </table>
1282 </dd>
1283 </dl>
1284 <h4>Possible errors</h4>
1285 <dl>
1286 <dt>fi.w1.wpa_supplicant1.UnknownError</dt>
1287 <dd>Starting WPS configuration failed for an unknown reason.</dd>
1288 <dt>fi.w1.wpa_supplicant1.InvalidArgs</dt>
1289 <dd>Invalid entries were found in the passed argument.</dd>
1290 </dl>
1291 </li>
87d3c628
NC
1292 <li>
1293 <h3>Cancel ( nothing ) --> nothing</h3>
1294 <p>Cancel ongoing WPS operation.</p>
1295 </li>
612bb516
JM
1296 </ul>
1297
1298\subsection dbus_wps_properties Properties
1299
9a15420a 1300<ul>
612bb516
JM
1301 <li>
1302 <h3>ProcessCredentials - b - (read/write)</h3>
1303 <p>Determines if the interface will process the credentials (credentials_processed configuration file parameter).</p>
1304 </li>
2750d27e
JM
1305 <li>
1306 <h3>ConfigMethods - s - (read/write)</h3>
1307 <p>The currently advertised WPS configuration methods. Available methods: usba ethernet label display ext_nfc_token int_nfc_token nfc_interface push_button keypad virtual_display physical_display virtual_push_button physical_push_button.</p>
1308 </li>
9bcfd5be
JM
1309 <li>
1310 <h3>DeviceName - s - (read/write)</h3>
1311 <p>User-friendly description of device; up to 32 octets encoded in UTF-8.</p>
1312 </li>
1313 <li>
1314 <h3>Manufacturer - s - (read/write)</h3>
1315 <p>The manufacturer of the device (up to 64 ASCII characters).</p>
1316 </li>
1317 <li>
1318 <h3>ModelName - s - (read/write)</h3>
1319 <p>Model of the device (up to 32 ASCII characters).</p>
1320 </li>
1321 <li>
1322 <h3>ModelNumber - s - (read/write)</h3>
1323 <p>Additional device description (up to 32 ASCII characters).</p>
1324 </li>
1325 <li>
1326 <h3>SerialNumber - s - (read/write)</h3>
1327 <p>Serial number of the device (up to 32 characters).</p>
1328 </li>
1329 <li>
1330 <h3>DeviceType - ay - (read/write)</h3>
1331 <p>Device Type (8 octet value with 2 octet category, 4 octet OUI, 2 octet subcategory.</p>
1332 </li>
612bb516
JM
1333 </ul>
1334
1335\subsection dbus_wps_signals Signals
1336
9a15420a 1337<ul>
612bb516
JM
1338 <li>
1339 <h3>Event ( s : name, a{sv} : args )</h3>
1340 <p>WPS event occurred.</p>
1341 <h4>Arguments</h4>
1342 <dl>
1343 <dt>s : event</dt>
1a2f7ca1
AA
1344 <dd>Event type. Possible values are: "success, "fail", "m2d", and
1345 "pbc-overlap".</dd>
612bb516
JM
1346 <dt>a{sv} : args</dt>
1347 <dd>
893e2cf9 1348 Event arguments. Empty for success and pbc-overlap events, error information ( "msg" : i, "config_error" : i, "error_indication" : i ) for fail event and following entries for m2d event:
612bb516
JM
1349 <table>
1350 <tr><th>config_methods</th><th>Value type</th>
1351 <tr><td>manufacturer</td><td>q</td>
1352 <tr><td>model_name</td><td>ay</td>
1353 <tr><td>model_number</td><td>ay</td>
1354 <tr><td>serial_number</td><td>ay</td>
1355 <tr><td>dev_name</td><td>ay</td>
1356 <tr><td>primary_dev_type</td><td>ay</td>
1357 <tr><td>config_error</td><td>q</td>
1358 <tr><td>dev_password_id</td><td>q</td>
1359 </table>
1360 </dd>
1361 </dl>
1362 </li>
1363
1364 <li>
1365 <h3>Credentials ( a{sv} : credentials )</h3>
1366 <p>WPS credentials. Dictionary contains:</p>
1367 <table>
1368 <tr><th>Key</th><th>Value type</th><th>Description</th>
1369 <tr><td>BSSID</td><td>ay</td><td></td>
1370 <tr><td>SSID</td><td>s</td><td></td>
1371 <tr><td>AuthType</td><td>as</td><td>Possible array elements: "open", "shared", "wpa-psk", "wpa-eap", "wpa2-eap", "wpa2-psk"</td>
1372 <tr><td>EncrType</td><td>as</td><td>Possible array elements: "none", "wep", "tkip", "aes"</td>
1373 <tr><td>Key</td><td>ay</td><td>Key data</td>
1374 <tr><td>KeyIndex</td><td>u</td><td>Key index</td>
1375 </table>
1376 </li>
1377
1378 <li>
1379 <h3>PropertiesChanged ( a{sv} : properties )</h3>
1380 <p>Some properties have changed.</p>
1381 <h4>Arguments</h4>
1382 <dl>
1383 <dt>a{sv} : properties</dt>
1384 <dd>A dictionary with pairs of properties names which have changed and theirs new values. Possible dictionary keys are: "ProcessCredentials"</dd>
1385 </dl>
1386 </li>
1387 </ul>
1388
1389
fa0d99c4
JM
1390\section dbus_p2pdevice fi.w1.wpa_supplicant1.Interface.P2PDevice
1391
1392Interface for performing P2P (Wi-Fi Peer-to-Peer) P2P Device operations.
1393
1394\subsection dbus_p2pdevice_methods Methods
1395
1396<ul>
1397 <li>
1398 <h3>Find ( a{sv} : args ) --> nothing</h3>
1399 <p>Start P2P find operation (i.e., alternating P2P Search and Listen states to discover peers and be discoverable).</p>
1400 <h4>Arguments</h4>
1401 <dl>
1402 <dt>a{sv} : args</dt>
1403 <dd>
1404 A dictionary with parameters for the P2P find operation:
1405 <table>
1406 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1407 <tr><td>Timeout</td><td>i</td><td>Timeout for operating in seconds</td><td>no</td></tr>
cf609626 1408 <tr><td>RequestedDeviceTypes</td><td>aay</td><td>WPS Device Types to search for</td><td>no</td></tr>
fa0d99c4 1409 <tr><td>DiscoveryType</td><td>s</td><td>"start_with_full" (default, if not specified), "social", "progressive"</td><td>no</td></tr>
4e118c84 1410 <tr><td>freq</td><td>i</td><td>Initial scan channel (frequency in MHz) for the start_with_full case to limit the initial scan to the specified channel</td><td>no</td></tr>
fa0d99c4
JM
1411 </table>
1412 </dd>
1413 </dl>
1414 </li>
1415
1416 <li>
1417 <h3>StopFind ( nothing ) --> nothing</h3>
1418 <p>Stop P2P find operation.</p>
1419 </li>
1420
1421 <li>
1422 <h3>Listen ( i : timeout ) --> nothing</h3>
1423 <p>Start P2P listen operation (i.e., be discoverable).</p>
1424 <h4>Arguments</h4>
1425 <dl>
1426 <dt>i : timeout</dt>
1427 <dd>Timeout in seconds for stopping the listen operation.</dd>
1428 </dl>
1429 </li>
1430
1431 <li>
1432 <h3>ExtendedListen ( a{sv} : args ) --> nothing</h3>
1433 <p>Configure Extended Listen Timing. If the parameters are omitted, this feature is disabled. If the parameters are included, Listen State will be entered every interval msec for at least period msec. Both values have acceptable range of 1-65535 (with interval obviously having to be larger than or equal to duration). If the P2P module is not idle at the time the Extended Listen Timing timeout occurs, the Listen State operation will be skipped.</p>
1434 <h4>Arguments</h4>
1435 <dl>
1436 <dt>a{sv} : args</dt>
1437 <dd>
1438 A dictionary with parameters for extended listen. Leave out all items to disable extended listen.
1439 <table>
1440 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1441 <tr><td>period</td><td>i</td><td>Extended listen period in milliseconds; 1-65535.</td><td>no</td></tr>
1442 <tr><td>interval</td><td>i</td><td>Extended listen interval in milliseconds; 1-65535.</td><td>no</td></tr>
1443 </table>
1444 </dd>
1445 </dl>
1446 </li>
1447
1448 <li>
1449 <h3>PresenceRequest ( a{sv} : args ) --> nothing</h3>
1450 <p>Request a specific GO presence in a P2P group where the local device is a P2P Client. Send a P2P Presence Request to the GO (this is only available when acting as a P2P client). If no duration/interval pairs are given, the request indicates that this client has no special needs for GO presence. The first parameter pair gives the preferred duration and interval values in microseconds. If the second pair is included, that indicates which value would be acceptable.
1451 \note This needs to be issued on a P2P group interface if separate group interfaces are used.
1452 \bug It would be cleaner to not require .P2PDevice methods to be issued on a group interface. In other words, args['group_object'] could be used to specify the group or this method could be moved to be a .Group PresenceRequest() method.</p>
1453 <h4>Arguments</h4>
1454 <dl>
1455 <dt>a{sv} : args</dt>
1456 <dd>
1457 A dictionary with parameters for the presence request.
1458 <table>
1459 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1460 <tr><td>duration1</td><td>i</td><td>Duration in microseconds.</td><td>no</td></tr>
1461 <tr><td>interval1</td><td>i</td><td>Interval in microseconds.</td><td>no</td></tr>
1462 <tr><td>duration2</td><td>i</td><td>Duration in microseconds.</td><td>no</td></tr>
1463 <tr><td>interval2</td><td>i</td><td>Interval in microseconds.</td><td>no</td></tr>
1464 </table>
1465 </dd>
1466 </dl>
1467 </li>
1468
1469 <li>
1470 <h3>ProvisionDiscoveryRequest ( o : peer, s : config_method ) --> nothing</h3>
1471 </li>
1472
1473 <li>
1474 <h3>Connect ( a{sv} : args ) --> s : generated_pin</h3>
1475 <p>Request a P2P group to be started through GO Negotiation or by joining an already operating group.</p>
1476 <h4>Arguments</h4>
1477 <dl>
1478 <dt>a{sv} : args</dt>
1479 <dd>
1480 A dictionary with parameters for the requested connection:
1481 <table>
1482 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1483 <tr><td>peer</td><td>o</td><td></td><td>yes</td></tr>
1484 <tr><td>persistent</td><td>b</td><td>Whether to form a persistent group.</td><td>no</td></tr>
1485 <tr><td>join</td><td>b</td><td>Whether to join an already operating group instead of forming a new group.</td><td>no</td></tr>
1486 <tr><td>authorize_only</td><td>b</td><td>Whether to authorize a peer to initiate GO Negotiation instead of initiating immediately.</td><td>no</td></tr>
1487 <tr><td>frequency</td><td>i</td><td>Operating frequency in MHz</td><td>no</td></tr>
1488 <tr><td>go_intent</td><td>i</td><td>GO intent 0-15</td><td>no</td></tr>
1489 <tr><td>wps_method</td><td>s</td><td>"pbc", "display", "keypad", "pin" (alias for "display")</td><td>yes</td></tr>
1490 <tr><td>pin</td><td>s</td><td></td><td>no</td></tr>
1491 </table>
1492 </dd>
1493 </dl>
1494 </li>
1495
1496 <li>
1497 <h3>GroupAdd ( a{sv} : args ) --> nothing</h3>
1498 <p>Request a P2P group to be started without GO Negotiation.</p>
1499 <h4>Arguments</h4>
1500 <dl>
1501 <dt>a{sv} : args</dt>
1502 <dd>
1503 A dictionary with parameters for the requested group:
1504 <table>
1505 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1506 <tr><td>persistent</td><td>b</td><td>Whether to form a persistent group.</td><td>no</td></tr>
1507 <tr><td>persistent_group_object</td><td>o</td><td></td><td>no</td></tr>
1508 <tr><td>frequency</td><td>i</td><td>Operating frequency in MHz</td><td>no</td></tr>
1509 </table>
1510 </dd>
1511 </dl>
1512 </li>
1513
33303959
NC
1514 <li>
1515 <h3>Cancel ( nothing ) --> nothing</h3>
1516 <p>Stop ongoing P2P group formation operation.</p>
1517 </li>
1518
fa0d99c4
JM
1519 <li>
1520 <h3>Invite ( a{sv} : args ) --> nothing</h3>
1521 <p>Invite a peer to join an already operating group or to re-invoke a persistent group.</p>
1522 <h4>Arguments</h4>
1523 <dl>
1524 <dt>a{sv} : args</dt>
1525 <dd>
1526 A dictionary with parameters for the invitation:
1527 <table>
1528 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1529 <tr><td>peer</td><td>o</td><td></td><td>yes</td></tr>
1530 <tr><td>persistent_group_object</td><td>o</td><td></td><td>no</td></tr>
1531 </table>
1532 </dd>
1533 </dl>
1534 </li>
1535
1536 <li>
1537 <h3>Disconnect ( nothing ) --> nothing</h3>
1538 <p>Terminate a P2P group.
1539 \note This needs to be issued on a P2P group interface if separate group interfaces are used.
1540 \bug It would be cleaner to not require .P2PDevice methods to be issued on a group interface. In other words, this would either need to be Disconnect(group_object) or moved to be a .Group Disconnect() method.</p>
1541 </li>
1542
1543 <li>
1544 <h3>RejectPeer ( o : peer ) --> nothing</h3>
1545 <p>Reject connection attempt from a peer (specified with a device address). This is a mechanism to reject a pending GO Negotiation with a peer and request to automatically block any further connection or discovery of the peer.</p>
1546 </li>
1547
4e717582
PK
1548 <li>
1549 <h3>RemoveClient ( a{sv} : args ) --> nothing</h3>
1550 <p>Remove the client from all groups (operating and persistent) from the local GO.</p>
1551 <h4>Arguments</h4>
1552 <dl>
1553 <dt>a{sv} : args</dt>
1554 <dd>
1555 A dictionary with parameters for removing a client:
1556 <table>
1557 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1558 <tr><td>peer</td><td>o</td><td>Object path for peer's P2P Device Address</td><td>yes</td></tr>
1559 <tr><td>iface</td><td>s</td><td>Interface address[MAC Address format] of the peer to be disconnected. Required if object path is not provided.</td><td>no</td></tr>
1560 </table>
1561 </dd>
1562 </dl>
1563 </li>
1564
fa0d99c4
JM
1565 <li>
1566 <h3>Flush ( nothing ) --> nothing</h3>
1567 <p>Flush P2P peer table and state.</p>
1568 </li>
1569
1570 <li>
1571 <h3>AddService ( a{sv} : args ) --> nothing</h3>
1572 <p></p>
1573 <h4>Arguments</h4>
1574 <dl>
1575 <dt>a{sv} : args</dt>
1576 <dd>
1577 A dictionary with parameters for the service:
1578 <table>
1579 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1580 <tr><td>service_type</td><td>s</td><td>"upnp", "bonjour"</td><td>yes</td></tr>
1581 <tr><td>version</td><td>u</td><td>Required for UPnP services.</td><td>no</td></tr>
1582 <tr><td>service</td><td>s</td><td></td><td></td></tr>
1583 <tr><td>query</td><td>ay</td><td></td><td></td></tr>
1584 <tr><td>response</td><td>ay</td><td></td><td></td></tr>
1585 </table>
1586 </dd>
1587 </dl>
1588 </li>
1589
1590 <li>
1591 <h3>DeleteService ( a{sv} : args ) --> nothing</h3>
1592 <p></p>
1593 <h4>Arguments</h4>
1594 <dl>
1595 <dt>a{sv} : args</dt>
1596 <dd>
1597 A dictionary with parameters for the service:
1598 <table>
1599 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1600 <tr><td>service_type</td><td>s</td><td>"upnp", "bonjour"</td><td>yes</td></tr>
1601 <tr><td>version</td><td>u</td><td>Required for UPnP services.</td><td>no</td></tr>
1602 <tr><td>service</td><td>s</td><td></td><td></td></tr>
1603 <tr><td>query</td><td>ay</td><td></td><td></td></tr>
1604 </table>
1605 </dd>
1606 </dl>
1607 </li>
1608
1609 <li>
1610 <h3>FlushService ( nothing ) --> nothing</h3>
1611 </li>
1612
1613 <li>
1614 <h3>ServiceDiscoveryRequest ( a{sv} : args ) --> t : ref</h3>
1615 <p></p>
1616 <h4>Arguments</h4>
1617 <dl>
1618 <dt>a{sv} : args</dt>
1619 <dd>
1620 A dictionary with following parameters:
1621 <table>
1622 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1623 <tr><td>peer_object</td><td>o</td><td></td><td>no</td></tr>
1624 <tr><td>service_type</td><td>s</td><td>"upnp"</td><td>no</td></tr>
1625 <tr><td>version</td><td>u</td><td>Required for UPnP services.</td><td>no</td></tr>
1626 <tr><td>service</td><td>s</td><td></td><td></td></tr>
1627 <tr><td>tlv</td><td>ay</td><td></td><td></td></tr>
1628 </table>
1629 </dd>
1630 </dl>
1631 </li>
1632
1633 <li>
1634 <h3>ServiceDiscoveryResponse ( a{sv} : args ) --> nothing : ref</h3>
1635 <p></p>
1636 <h4>Arguments</h4>
1637 <dl>
1638 <dt>a{sv} : args</dt>
1639 <dd>
1640 A dictionary with following parameters:
1641 <table>
1642 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1643 <tr><td>peer_object</td><td>o</td><td></td><td>yes</td></tr>
1644 <tr><td>frequency</td><td>i</td><td></td><td>yes</td></tr>
1645 <tr><td>dialog_token</td><td>i</td><td></td><td>yes</td></tr>
1646 <tr><td>tlvs</td><td>ay</td><td></td><td>yes</td></tr>
1647 </table>
1648 </dd>
1649 </dl>
1650 </li>
1651
1652 <li>
1653 <h3>ServiceDiscoveryCancelRequest ( t : args ) --> nothing : ref</h3>
1654 </li>
1655
1656 <li>
1657 <h3>ServiceUpdate ( nothing ) --> nothing</h3>
1658 </li>
1659
1660 <li>
1661 <h3>ServiceDiscoveryExternal ( i : arg ) --> nothing</h3>
1662 </li>
1663
1664 <li>
1665 <h3>AddPersistentGroup ( a{sv} : args ) --> o : path</h3>
1666 <p></p>
1667 <h4>Arguments</h4>
1668 <dl>
1669 <dt>a{sv} : args</dt>
1670 <dd>
1671 A dictionary with following parameters:
1672 <table>
1673 <tr><th>Key</th><th>Value type</th><th>Description</th><th>Required</th></tr>
1674 <tr><td>bssid</td><td>s</td><td>P2P Device Address of the GO in the persistent group.</td><td>yes</td></tr>
1675 <tr><td>ssid</td><td>s</td><td>SSID of the group</td><td>yes</td></tr>
1676 <tr><td>psk</td><td>s</td><td>Passphrase (on the GO and optionally on P2P Client) or PSK (on P2P Client if passphrase ise not known)</td><td>yes</td></tr>
1677 <tr><td>mode</td><td>s</td><td>"3" on GO or "0" on P2P Client</td><td>yes</td></tr>
1678 </table>
1679 </dd>
1680 </dl>
1681 </li>
1682
1683 <li>
1684 <h3>RemovePersistentGroup ( o : path ) --> nothing</h3>
1685 </li>
1686
1687 <li>
1688 <h3>RemoveAllPersistentGroups ( nothing ) --> nothing</h3>
1689 </li>
1690</ul>
1691
1692\subsection dbus_p2pdevice_properties Properties
1693
1694<ul>
1695 <li>
1696 <h3>P2PDeviceConfig - a{sv} - (read/write)</h3>
1697 <p>Dictionary with following entries. On write, only the included values are changed.</p>
1698 <table>
1699 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1700 <tr><td>DeviceName</td><td>s</td><td></td></tr>
1701 <tr><td>PrimaryDeviceType</td><td>ay</td><td></td></tr>
1702 <tr><td>SecondaryDeviceTypes</td><td>aay</td><td></td></tr>
1703 <tr><td>VendorExtension</td><td>aay</td><td></td></tr>
1704 <tr><td>GOIntent</td><td>u</td><td></td></tr>
1705 <tr><td>PersistentReconnect</td><td>b</td><td></td></tr>
1706 <tr><td>ListenRegClass</td><td>u</td><td></td></tr>
8bb5cfe4 1707 <tr><td>ListenChannel</td><td>u</td><td></td></tr>
fa0d99c4
JM
1708 <tr><td>OperRegClass</td><td>u</td><td></td></tr>
1709 <tr><td>OperChannel</td><td>u</td><td></td></tr>
1710 <tr><td>SsidPostfix</td><td>s</td><td></td></tr>
1711 <tr><td>IntraBss</td><td>b</td><td></td></tr>
1712 <tr><td>GroupIdle</td><td>u</td><td></td></tr>
1713 <tr><td>disassoc_low_ack</td><td>u</td><td></td></tr>
1714 <tr><td>NoGroupIface</td><td>b</td><td></td></tr>
1715 <tr><td>p2p_search_delay</td><td>u</td><td></td></tr>
1716 </table>
1717 </li>
1718
1719 <li>
1720 <h3>Peers - ao - (read)</h3>
1721 </li>
1722
1723 <li>
1724 <h3>Role - s - (read)</h3>
1725 <p>\bug What is this trying to indicate? It does not make much sense to have a P2PDevice property role since there can be multiple concurrent groups and the P2P Device role is always active anyway.</p>
1726 </li>
1727
1728 <li>
1729 <h3>Group - o - (read)</h3>
1730 <p>\bug What is this trying to indicate? It does not make much sense to have a P2PDevice property Group since there can be multiple concurrent groups.</p>
1731 </li>
1732
1733 <li>
1734 <h3>PeerGO - o - (read)</h3>
1735 <p>\bug What is this trying to indicate? It does not make much sense to have a P2PDevice property PeerGO since there can be multiple concurrent groups.</p>
1736 </li>
1737
1738 <li>
1739 <h3>PersistentGroups - ao - (read)</h3>
1740 </li>
1741</ul>
1742
1743\subsection dbus_p2pdevice_signals Signals
1744
1745<ul>
1746 <li>
1747 <h3>DeviceFound ( o : path )</h3>
1748 </li>
1749
82b9ec31
NC
1750 <li>
1751 <h3>DeviceFoundProperties ( o : path, a{sv} : properties )</h3>
1752 <p>A new peer device has been found.</p>
1753 <h4>Arguments</h4>
1754 <dl>
1755 <dt>o : path</dt>
1756 <dd>A D-Bus path to an object representing the found peer device.</dd>
1757 </dl>
1758 <dl>
1759 <dt>a{sv} : properties</dt>
1760 <dd>A dictionary containing properties of the found peer device.</dd>
1761 </dl>
1762 </li>
1763
fa0d99c4
JM
1764 <li>
1765 <h3>DeviceLost ( o : path )</h3>
1766 </li>
1767
7b642dc8
NC
1768 <li>
1769 <h3>FindStopped ( )</h3>
1770 </li>
1771
fa0d99c4
JM
1772 <li>
1773 <h3>ProvisionDiscoveryRequestDisplayPin ( o : peer_object, s : pin )</h3>
1774 </li>
1775
1776 <li>
1777 <h3>ProvisionDiscoveryResponseDisplayPin ( o : peer_object, s : pin )</h3>
1778 </li>
1779
1780 <li>
1781 <h3>ProvisionDiscoveryRequestEnterPin ( o : peer_object )</h3>
1782 </li>
1783
1784 <li>
1785 <h3>ProvisionDiscoveryResponseEnterPin ( o : peer_object )</h3>
1786 </li>
1787
1788 <li>
1789 <h3>ProvisionDiscoveryPBCRequest ( o : peer_object )</h3>
1790 </li>
1791
1792 <li>
1793 <h3>ProvisionDiscoveryPBCResponse ( o : peer_object )</h3>
1794 </li>
1795
1796 <li>
1797 <h3>ProvisionDiscoveryFailure ( o : peer_object, i : status )</h3>
1798 </li>
1799
1800 <li>
1801 <h3>GroupStarted ( a{sv} : properties )</h3>
1802 <p>A new P2P group was started or joined.</p>
1803 <h4>Arguments</h4>
1804 <dl>
1805 <dt>a{sv} : properties</dt>
1806 <dd>A dictionary with following information on the added group:
1807 <table>
1808 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1809 <tr><td>interface_object</td><td>o</td><td>D-Bus path of the interface on which this group is operating on. See \ref dbus_interface.</td></tr>
1810 <tr><td>role</td><td>s</td><td>The role of the local device in the group: "GO" or "client".</td></tr>
1811 <tr><td>group_object</td><td>o</td><td>D-Bus path of the group. See \ref dbus_group.</td></tr>
1812 </table>
1813 </dd>
1814 </dl>
1815 </li>
1816
1817 <li>
1818 <h3>GONegotiationSuccess ( a{sv} : properties )</h3>
1819 <p></p>
1820 <h4>Arguments</h4>
1821 <dl>
1822 <dt>a{sv} : properties</dt>
1823 <dd>A dictionary with following information:
1824 <table>
1825 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1826 <tr><td>peer_object</td><td>o</td><td>D-Bus path of the peer. See \ref dbus_peer.</td></tr>
1827 <tr><td>status</td><td>i</td><td></td></tr>
1828 <tr><td>passphrase</td><td>s</td><td>Passphrase for the group. Included only if this device becomes the GO of the group.</td></tr>
1829 <tr><td>role_go</td><td>s</td><td>The role of the local device in the group: "GO" or "client".</td></tr>
1830 <tr><td>ssid</td><td>ay</td><td></td></tr>
1831 <tr><td>peer_device_addr</td><td>ay</td><td></td></tr>
1832 <tr><td>peer_interface_addr</td><td>ay</td><td></td></tr>
1833 <tr><td>wps_method</td><td>s</td><td></td></tr>
1834 <tr><td>frequency_list</td><td>ai</td><td></td></tr>
1835 <tr><td>persistent_group</td><td>i</td><td></td></tr>
1836 <tr><td>peer_config_timeout</td><td>u</td><td></td></tr>
1837 </table>
1838 </dd>
1839 </dl>
1840 </li>
1841
1842 <li>
1843 <h3>GONegotiationFailure ( a{sv} : properties )</h3>
1844 <p></p>
1845 <h4>Arguments</h4>
1846 <dl>
1847 <dt>a{sv} : properties</dt>
1848 <dd>A dictionary with following information:
1849 <table>
1850 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1851 <tr><td>peer_object</td><td>o</td><td>D-Bus path of the peer. See \ref dbus_peer.</td></tr>
1852 <tr><td>status</td><td>i</td><td></td></tr>
1853 </table>
1854 </dd>
1855 </dl>
1856 </li>
1857
1858 <li>
fd7d3c49 1859 <h3>GONegotiationRequest ( o : path, q : dev_passwd_id, y : device_go_intent )</h3>
fa0d99c4
JM
1860 </li>
1861
1862 <li>
1863 <h3>InvitationResult ( a{sv} : invite_result )</h3>
1864 <p></p>
1865 <h4>Arguments</h4>
1866 <dl>
1867 <dt>a{sv} : invite_result</dt>
1868 <dd>A dictionary with following information:
1869 <table>
1870 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1871 <tr><td>status</td><td>i</td><td></td></tr>
1872 <tr><td>BSSID</td><td>ay</td><td>Optionally present</td></tr>
1873 </table>
1874 </dd>
1875 </dl>
1876 </li>
1877
1878 <li>
1879 <h3>GroupFinished ( a{sv} : properties )</h3>
1880 <p>A P2P group was removed.</p>
1881 <h4>Arguments</h4>
1882 <dl>
1883 <dt>a{sv} : properties</dt>
1884 <dd>A dictionary with following information of the removed group:
1885 <table>
1886 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1887 <tr><td>interface_object</td><td>o</td><td>D-Bus path of the interface on which this group is operating on. See \ref dbus_interface.</td></tr>
1888 <tr><td>role</td><td>s</td><td>The role of the local device in the group: "GO" or "client".</td></tr>
1889 <tr><td>group_object</td><td>o</td><td>D-Bus path of the group. See \ref dbus_group.</td></tr>
1890 </table>
1891 </dd>
1892 </dl>
1893 </li>
1894
1895 <li>
1896 <h3>ServiceDiscoveryRequest ( a{sv} : sd_request )</h3>
1897 <p></p>
1898 <h4>Arguments</h4>
1899 <dl>
1900 <dt>a{sv} : sd_request</dt>
1901 <dd>A dictionary with following information:
1902 <table>
1903 <tr><td>peer_object</td><td>o</td><td></td></tr>
1904 <tr><td>frequency</td><td>i</td><td></td></tr>
1905 <tr><td>dialog_token</td><td>i</td><td></td></tr>
1906 <tr><td>update_indicator</td><td>q</td><td></td></tr>
1907 <tr><td>tlvs</td><td>ay</td><td></td></tr>
1908 </table>
1909 </dd>
1910 </dl>
1911 </li>
1912
1913 <li>
1914 <h3>ServiceDiscoveryResponse ( a{sv} : sd_response )</h3>
1915 <p></p>
1916 <h4>Arguments</h4>
1917 <dl>
1918 <dt>a{sv} : sd_response</dt>
1919 <dd>A dictionary with following information:
1920 <table>
1921 <tr><td>peer_object</td><td>o</td><td></td></tr>
1922 <tr><td>update_indicator</td><td>q</td><td></td></tr>
1923 <tr><td>tlvs</td><td>ay</td><td></td></tr>
1924 </table>
1925 </dd>
1926 </dl>
1927 </li>
1928
1929 <li>
1930 <h3>PersistentGroupAdded ( o : path, a{sv} : properties )</h3>
1931 <p></p>
1932 <h4>Arguments</h4>
1933 <dl>
1934 <dt>o : path</dt>
1935 <dd>D-Bus object path for the persistent group. See \ref dbus_persistent_group.</dd>
1936 <dt>a{sv} : properties</dt>
1937 <dd>A dictionary with following information:
1938 <table>
1939 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1940 <tr><td>bssid</td><td>s</td><td>P2P Device Address of the GO in the persistent group.</td></tr>
1941 <tr><td>ssid</td><td>s</td><td>SSID of the group</td></tr>
1942 <tr><td>psk</td><td>s</td><td>Passphrase (on the GO and optionally on P2P Client) or PSK (on P2P Client if passphrase ise not known)</td></tr>
1943 <tr><td>disabled</td><td>s</td><td>Set to "2" to indicate special network block use as a P2P persistent group information</td></tr>
1944 <tr><td>mode</td><td>s</td><td>"3" on GO or "0" on P2P Client</td></tr>
1945 </table>
1946 </dd>
1947 </dl>
1948 </li>
1949
1950 <li>
1951 <h3>PersistentGroupRemoved ( o : path )</h3>
1952 <p></p>
1953 <h4>Arguments</h4>
1954 <dl>
1955 <dt>o : path</dt>
1956 <dd>D-Bus object path for the persistent group. See \ref dbus_persistent_group.</dd>
1957 </dl>
1958 </li>
1959
1960 <li>
1961 <h3>WpsFailed ( s : name, a{sv} : args )</h3>
1962 <p></p>
1963 <h4>Arguments</h4>
1964 <dl>
1965 <dt>s : name</dt>
1966 <dd>"fail"</dd>
1967 <dt>a{sv} : args</dt>
1968 <dd>A dictionary with following information:
1969 <table>
1970 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1971 <tr><td>msg</td><td>i</td><td></td></tr>
1972 <tr><td>config_error</td><td>n</td><td></td></tr>
1973 </table>
1974 </dd>
1975 </dl>
1976 </li>
2a95fac9 1977
be5ab8d4
MJ
1978 <li>
1979 <h3>InvitationReceived ( a{sv} : properties )</h3>
1980 <p></p>
1981 <h4>Arguments</h4>
1982 <dl>
1983 <dt>a{sv} : properties</dt>
1984 <dd>A dictionary with following information:
1985 <table>
1986 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
1987 <tr><td>sa</td><td>ay</td><td>Optionally present</td></tr>
1988 <tr><td>go_dev_addr</td><td>ay</td><td>Optionally present</td></tr>
1989 <tr><td>bssid</td><td>ay</td><td>Optionally present</td></tr>
1990 <tr><td>persistent_id</td><td>i</td><td>Optionally present</td></tr>
1991 <tr><td>op_freq</td><td>i</td><td></td></tr>
1992 </table>
1993 </dd>
1994 </dl>
1995 </li>
1996
2a95fac9
NC
1997 <li>
1998 <h3>GroupFormationFailure ( s : reason )</h3>
1999 <p></p>
2000 <h4>Arguments</h4>
2001 <dl>
2002 <dt>s : reason</dt>
2003 <dd>Reason for failure or empty string if not known.</dd>
2004 </dl>
2005 </li>
fa0d99c4
JM
2006</ul>
2007
8e5568f8 2008\section dbus_bss fi.w1.wpa_supplicant1.BSS
612bb516
JM
2009
2010Interface implemented by objects representing a scanned BSSs, i.e.,
2011scan results.
2012
2013\subsection dbus_bss_properties Properties
2014
9a15420a 2015<ul>
612bb516 2016 <li>
58605c6e
WS
2017 <h3>BSSID - ay - (read)</h3>
2018 <p>BSSID of the BSS.</p>
2019 </li>
2020 <li>
2021 <h3>SSID - ay - (read)</h3>
2022 <p>SSID of the BSS.</p>
2023 </li>
2024 <li>
7899e2f4
WS
2025 <h3>WPA - a{sv} - (read)</h3>
2026 <p>WPA information of the BSS. Empty dictionary indicates no WPA support. Dictionary entries are:</p>
2027 <table>
2028 <tr><td>KeyMgmt</td><td>as</td><td>Key management suite. Possible array elements: "wpa-psk", "wpa-eap", "wpa-none"</td>
2029 <tr><td>Pairwise</td><td>as</td><td>Pairwise cipher suites. Possible array elements: "ccmp", "tkip"</td>
2030 <tr><td>Group</td><td>s</td><td>Group cipher suite. Possible values are: "ccmp", "tkip", "wep104", "wep40"</td>
2031 </table>
58605c6e
WS
2032 </li>
2033 <li>
7899e2f4
WS
2034 <h3>RSN - a{sv} - (read)</h3>
2035 <p>RSN information of the BSS. Empty dictionary indicates no RSN support. Dictionary entries are:</p>
2036 <table>
98251c6f 2037 <tr><td>KeyMgmt</td><td>as</td><td>Key management suite. Possible array elements: "wpa-psk", "wpa-ft-psk", "wpa-psk-sha256", "wpa-eap", "wpa-ft-eap", "wpa-eap-sha256", "wpa-eap-suite-b", "wpa-eap-suite-b-192", "wpa-fils-sha256", "wpa-fils-sha384", "wpa-ft-fils-sha256", "wpa-ft-fils-sha384", "sae", "ft-sae", "wpa-none"</td>
7899e2f4
WS
2038 <tr><td>Pairwise</td><td>as</td><td>Pairwise cipher suites. Possible array elements: "ccmp", "tkip"</td>
2039 <tr><td>Group</td><td>s</td><td>Group cipher suite. Possible values are: "ccmp", "tkip", "wep104", "wep40"</td>
2040 <tr><td>MgmtGroup</td><td>s</td><td>Mangement frames cipher suite. Possible values are: "aes128cmac"</td>
2041 </table>
58605c6e 2042 </li>
6c45094c
JM
2043 <li>
2044 <h3>WPS - a{sv} - (read)</h3>
2045 <p>WPS information of the BSS. Empty dictionary indicates no WPS support. Dictionary entries are:</p>
2046 <table>
2047 <tr><td>Type</td><td>s</td><td>"pbc", "pin", ""</td>
2048 </table>
2049 </li>
58605c6e 2050 <li>
7899e2f4
WS
2051 <h3>IEs - ay - (read)</h3>
2052 <p>All IEs of the BSS as a chain of TLVs</p>
58605c6e
WS
2053 </li>
2054 <li>
2055 <h3>Privacy - b - (read)</h3>
2056 <p>Indicates if BSS supports privacy.</p>
2057 </li>
2058 <li>
2059 <h3>Mode - s - (read)</h3>
2060 <p>Describes mode of the BSS. Possible values are: "ad-hoc" and "infrastructure".</p>
2061 </li>
2062 <li>
2063 <h3>Frequency - q - (read)</h3>
2064 <p>Frequency of the BSS in MHz.</p>
2065 </li>
2066 <li>
75d328af
WS
2067 <h3>Rates - au - (read)</h3>
2068 <p>Descending ordered array of rates supported by the BSS in bits per second.</p>
58605c6e
WS
2069 </li>
2070 <li>
2071 <h3>Signal - n - (read)</h3>
2072 <p>Signal strength of the BSS.</p>
612bb516 2073 </li>
6c45094c
JM
2074 <li>
2075 <h3>Age - u - (read)</h3>
2076 <p>Number of seconds since the BSS was last seen.</p>
2077 </li>
612bb516 2078 </ul>
12694895
JM
2079
2080\subsection dbus_bss_signals Signals
2081
9a15420a 2082<ul>
12694895
JM
2083 <li>
2084 <h3>PropertiesChanged ( a{sv} : properties )</h3>
2085 <p>Some properties have changed.</p>
2086 <h4>Arguments</h4>
2087 <dl>
2088 <dt>a{sv} : properties</dt>
2089 <dd>A dictionary with pairs of properties names which have changed and theirs new values.</dd>
2090 </dl>
2091 </li>
2092 </ul>
612bb516
JM
2093
2094
8e5568f8 2095\section dbus_network fi.w1.wpa_supplicant1.Network
612bb516
JM
2096
2097Interface implemented by objects representing configured networks,
2098i.e., returned by fi.w1.wpa_supplicant1.Interface.AddNetwork.
2099
2100\subsection dbus_network_properties Properties
2101
9a15420a 2102<ul>
612bb516
JM
2103 <li>
2104 <h3>Enabled - b - (read/write)</h3>
2105 <p>Determines if the configured network is enabled or not.</p>
2106 </li>
2107
2108 <li>
24a97d6f 2109 <h3>Properties - a{sv} - (read/write)</h3>
0aeda4da 2110 <p>Properties of the configured network. Dictionary contains entries from "network" block of wpa_supplicant configuration file. All values are string type, e.g., frequency is "2437", not 2437. When setting the properties, use the same format as for the AddNetwork() function.</p>
612bb516
JM
2111 </li>
2112 </ul>
2113
2114\subsection dbus_network_signals Signals
2115
9a15420a 2116<ul>
612bb516
JM
2117 <li>
2118 <h3>PropertiesChanged ( a{sv} : properties )</h3>
2119 <p>Some properties have changed.</p>
2120 <h4>Arguments</h4>
2121 <dl>
2122 <dt>a{sv} : properties</dt>
2123 <dd>A dictionary with pairs of properties names which have changed and theirs new values. Possible dictionary keys are: "Enabled"</dd>
2124 </dl>
2125 </li>
2126 </ul>
2127
fa0d99c4
JM
2128\section dbus_peer fi.w1.wpa_supplicant1.Peer
2129
2130Interface implemented by objects representing P2P peer devices.
2131
2132\subsection dbus_peer_properties Properties
2133
2134<ul>
2135 <li>
2136 <h3>DeviceName - s - (read)</h3>
2137 </li>
2138
dc1a341d
AK
2139 <li>
2140 <h3>Manufacturer - s - (read)</h3>
2141 </li>
2142
2899cba6
AK
2143 <li>
2144 <h3>ModelName - s - (read)</h3>
2145 </li>
2146
4f369652
AK
2147 <li>
2148 <h3>ModelNumber - s - (read)</h3>
2149 </li>
2150
2151 <li>
2152 <h3>SerialNumber - s - (read)</h3>
2153 </li>
2154
fa0d99c4
JM
2155 <li>
2156 <h3>PrimaryDeviceType - ay - (read)</h3>
2157 </li>
2158
2159 <li>
2160 <h3>config_method - q - (read)</h3>
2161 </li>
2162
2163 <li>
2164 <h3>level - i - (read)</h3>
2165 </li>
2166
2167 <li>
2168 <h3>devicecapability - y - (read)</h3>
2169 </li>
2170
2171 <li>
2172 <h3>groupcapability - y - (read)</h3>
2173 <p>Group Capability field from the last frame from which this peer information was updated.
2174 \note This field is only for debugging purposes and must not be used to determine whether the peer happens to be operating a group as a GO at the moment.
2175 </p>
2176 </li>
2177
2178 <li>
2179 <h3>SecondaryDeviceTypes - aay - (read)</h3>
2180 </li>
2181
2182 <li>
2183 <h3>VendorExtension - aay - (read)</h3>
2184 </li>
2185
2186 <li>
2187 <h3>IEs - ay - (read)</h3>
2188 <p>This is a confusingly named property that includes Wi-Fi Display subelements from the peer.
2189 \bug This should really be renamed since "IEs" means something completely different..
2190 </p>
2191 </li>
2192
2193 <li>
2194 <h3>DeviceAddress - ay - (read)</h3>
2195 <p>The P2P Device Address of the peer.</p>
2196 </li>
2197
2198 <li>
2199 <h3>Groups - ao - (read)</h3>
2200 <p>The current groups in which this peer is connected.</p>
2201 </li>
2202</ul>
2203
2204\subsection dbus_peer_signals Signals
2205
2206<ul>
2207 <li>
2208 <h3>PropertiesChanged ( a{sv} : properties )</h3>
2209 <p>Some properties have changed.
2210 \deprecated Use org.freedesktop.DBus.Properties.PropertiesChanged instead.</p>
2211 \todo Explain how ProertiesChanged signals are supposed to be of any real use with Peer objects (i.e., one signal for multiple peers).
2212 <h4>Arguments</h4>
2213 <dl>
2214 <dt>a{sv} : properties</dt>
2215 <dd>A dictionary with pairs of properties names which have changed and their new values.</dd>
2216 </dl>
2217 </li>
2218 </ul>
2219
2220\section dbus_group fi.w1.wpa_supplicant1.Group
2221
2222Interface implemented by objects representing active P2P groups.
2223
2224\subsection dbus_group_properties Properties
2225
2226<ul>
2227 <li>
2228 <h3>Members - ao - (read)</h3>
2229 <p>Array of D-Bus object paths for the peer devices that are currently connected to the group. This is valid only on the GO device. An empty array is returned in P2P Client role.
2230 </li>
2231
2232 <li>
2233 <h3>Group - o - (read)</h3>
2234 <p>\todo Why is this here? This D-Bus object path is to this specific group and one needs to know it to fetching this information in the first place..
2235 </p>
2236 </li>
2237
2238 <li>
2239 <h3>Role - s - (read)</h3>
2240 <p>The role of this device in the group: "GO", "client".</p>
2241 </li>
2242
2243 <li>
2244 <h3>SSID - ay - (read)</h3>
2245 <p>P2P Group SSID.</p>
2246 </li>
2247
2248 <li>
2249 <h3>BSSID - ay - (read)</h3>
2250 <p>P2P Group BSSID (the P2P Interface Address of the GO).</p>
2251 </li>
2252
2253 <li>
2254 <h3>Frequency - q - (read)</h3>
2255 <p>The frequency (in MHz) of the group operating channel.</p>
2256 </li>
2257
2258 <li>
2259 <h3>Passphrase - s - (read)</h3>
2260 <p>Passphrase used in the group. This is always available on the GO. For P2P Client role, this may be available depending on whether the peer GO provided the passphrase during the WPS provisioning step. If not available, an empty string is returned.</p>
2261 </li>
2262
2263 <li>
2264 <h3>PSK - ay - (read)</h3>
2265 <p>PSK used in the group.</p>
2266 </li>
2267
2268 <li>
2269 <h3>WPSVendorExtensions - aay - (read/write)</h3>
2270 <p>WPS vendor extension attributes used on the GO. This is valid only the in the GO role. An empty array is returned in P2P Client role. At maximum, 10 separate vendor extension byte arrays can be configured. The GO device will include the configured attributes in WPS exchanges.</p>
2271 </li>
2272</ul>
2273
2274\subsection dbus_group_signals Signals
2275
2276<ul>
2277 <li>
2278 <h3>PeerJoined ( o : peer )</h3>
2279 <p>A peer device has joined the group. This is indicated only on the GO device.</p>
2280 <h4>Arguments</h4>
2281 <dl>
2282 <dt>o : peer</dt>
2283 <dd>A D-Bus path to the object representing the peer. See \ref dbus_peer.</dd>
2284 </dl>
2285 </li>
2286
2287 <li>
2288 <h3>PeerDisconnected ( o : peer )</h3>
2289 <p>A peer device has left the group. This is indicated only on the GO device.</p>
2290 <h4>Arguments</h4>
2291 <dl>
2292 <dt>o : peer</dt>
2293 <dd>A D-Bus path to the object representing the peer. See \ref dbus_peer.</dd>
2294 </dl>
2295 </li>
2296</ul>
2297
2298\section dbus_persistent_group fi.w1.wpa_supplicant1.PersistentGroup
2299
2300Interface implemented by objects representing persistent P2P groups.
2301
2302\subsection dbus_persistent_group_properties Properties
2303
2304<ul>
2305 <li>
2306 <h3>Properties - a{sv} - (read/write)</h3>
2307 <p>Properties of the persistent group. These are same properties as in the \ref dbus_network. When writing this, only the entries to be modified are included, i.e., any item that is not included will be left at its existing value. The following entries are used for persistent groups:</p>
2308 <table>
2309 <tr><th>Key</th><th>Value type</th><th>Description</th></tr>
2310 <tr><td>bssid</td><td>s</td><td>P2P Device Address of the GO in the persistent group.</td></tr>
2311 <tr><td>ssid</td><td>s</td><td>SSID of the group</td></tr>
2312 <tr><td>psk</td><td>s</td><td>Passphrase (on the GO and optionally on P2P Client) or PSK (on P2P Client if passphrase ise not known)</td></tr>
2313 <tr><td>disabled</td><td>s</td><td>Set to "2" to indicate special network block use as a P2P persistent group information</td></tr>
2314 <tr><td>mode</td><td>s</td><td>"3" on GO or "0" on P2P Client</td></tr>
2315 </table>
2316 </li>
2317</ul>
2318
89e9cd25
SB
2319\section dbus_mesh fi.w1.wpa_supplicant1.Interface.Mesh
2320
2321Interface for performing mesh operations.
2322
190f6f11
SB
2323\subsection dbus_mesh_properties Properties
2324
2325<ul>
2326 <li>
2327 <h3>MeshPeers - aay - (read)</h3>
2328 </li>
cdf25014
SB
2329
2330 <li>
2331 <h3>MeshGroup - ay - (read)</h3>
2332 </li>
190f6f11
SB
2333</ul>
2334
89e9cd25
SB
2335\subsection dbus_mesh_signals Signals
2336
2337<ul>
2338 <li>
2339 <h3>MeshGroupStarted ( a{sv} : args )</h3>
2340 <p></p>
2341 <h4>Arguments</h4>
2342 <dl>
2343 <dt>a{sv} : args</dt>
2344 <dd>A dictionary containing information of the started mesh group.</dd>
2345 </dl>
2346 </li>
a39b040b
SB
2347 <li>
2348 <h3>MeshGroupRemoved ( a{sv} : args )</h3>
2349 <p></p>
2350 <h4>Arguments</h4>
2351 <dl>
2352 <dt>a{sv} : args</dt>
2353 <dd>A dictionary containing information of the removed mesh group.</dd>
2354 </dl>
2355 </li>
9b0701fb
SB
2356 <li>
2357 <h3>MeshPeerConnected ( a{sv} : args )</h3>
2358 <p></p>
2359 <h4>Arguments</h4>
2360 <dl>
2361 <dt>a{sv} : args</dt>
2362 <dd>A dictionary containing information of the connected mesh peer.</dd>
2363 </dl>
2364 </li>
a9de99b1
SB
2365 <li>
2366 <h3>MeshPeerDisconnected ( a{sv} : args )</h3>
2367 <p></p>
2368 <h4>Arguments</h4>
2369 <dl>
2370 <dt>a{sv} : args</dt>
2371 <dd>A dictionary containing information of the disconnected mesh peer.</dd>
2372 </dl>
2373 </li>
89e9cd25
SB
2374</ul>
2375
612bb516 2376*/