blob: e63782b1bdc417eb66bf7acfaa63c789ad51503c [file] [log] [blame]
Paul Stewarta4e618b2012-04-25 16:21:22 -07001Service hierarchy
2=================
3
4Service org.chromium.flimflam
5Interface org.chromium.flimflam.Service
6Object path [variable prefix]/{service0,service1,...}
7
8Methods dict GetProperties()
9
10 Return the properties for the service object. See
11 the Properties section for available properties.
12
13 void SetProperty(string name, variant value)
14
15 Change the value of the specified property. Only
16 properties that are listed as read-write are
17 changeable. On success a PropertyChanged signal
18 will be emitted.
19
20 Possible Errors: [service].Error.InvalidArguments
21 [service].Error.InvalidProperty
22 [service].Error.InvalidService
23 [service].Error.InvalidPassphrase
24
Paul Stewartad0e5982013-07-02 08:47:47 -070025 void SetProperties(dict properties)
26
27 Set multiple properties in a Service at once.
28 Each property from the dict is applied, excluding
29 the "Profile" property and all properties intrinsic
30 to the service including "Type" for all services,
31 as well as "Mode", "SSID" and "Security" for WiFi
32 services. In the event of multiple errors while
33 applying properties to the service, the first error
34 code is returned by this call.
35
36 Possible Errors: [service].Error.InvalidArguments
37 [service].Error.InvalidProperty
38 [service].Error.InvalidService
39 [service].Error.InvalidPassphrase
40
Paul Stewarta4e618b2012-04-25 16:21:22 -070041 void ClearProperty(string name)
42
43 Clear the value of the specified property. Only
44 properties that are listed as read-write are
45 changeable. On success a PropertyChanged signal
46 will be emitted.
47
48 Possible Errors: [service].Error.InvalidArguments
49 [service].Error.InvalidProperty
50
Paul Stewartbcb2c962012-10-31 10:52:10 -070051 array{bool} ClearProperties(array{string} names)
52
53 Clear the value of the specified properties. Calls
54 ClearProperty above on each of the property names
55 and returns an array of boolean values indicating
56 whether each ClearProperty attempt succeeded.
57
Paul Stewarta4e618b2012-04-25 16:21:22 -070058 void Connect()
59
60 Initiate a connection for the specified service.
61
62 For Ethernet devices this method can only be used
63 if it has previously been disconnected. Otherwise
64 the plugging of a cable automatically triggers
65 a connection. If no cable is plugged in this
66 method will fail.
67
68 If the requested service is already connected
69 then this request is ignored and AlreadyConnected
70 is returned.
71
72 If the requested service is in the process of
73 connecting then this request is ignored and
74 InProgress is returned.
75
76 If another service of the same type is connected or
77 connecting then it is terminated before this request
78 is handled.
79
Wade Guthrie005bd342012-05-02 09:37:07 -070080 If the requested service cannot, for reasons not
81 described above, be connected, OperationFailed is
82 returned.
83
Paul Stewarta4e618b2012-04-25 16:21:22 -070084 Possible Errors: [service].Error.AlreadyConnected
85 [service].Error.InProgress
86 [service].Error.OperationAborted
87 [service].Error.InvalidService
Wade Guthrie005bd342012-05-02 09:37:07 -070088 [service].Error.OperationFailed
Paul Stewarta4e618b2012-04-25 16:21:22 -070089
90 void Disconnect()
91
92 Disconnect a service. If the service is not
93 connected or in the process of connecting an
94 error message will be generated.
95
96 For Ethernet devices this will remove all
97 Layer 3 state and mark the associated network
98 interface down. If no cable is plugged in this
99 request will fail.
100
101 This method can also be used to abort a previous
102 connection attempt via the Connect method.
103
104 Possible Errors: [service].Error.InvalidArguments
Paul Stewart3c504012013-01-17 17:49:58 -0800105 [service].Error.OperationFailed
Paul Stewarta4e618b2012-04-25 16:21:22 -0700106
107 void Remove()
108
Paul Stewartd3d03882013-08-29 15:43:42 -0700109 Disconnect and remove the configuration of a
110 service. This disassociates the service from
111 its current profile. If another profile supports
112 this service, it will be re-configured there.
Paul Stewarta4e618b2012-04-25 16:21:22 -0700113
114 This method is not permitted for Ethernet devices;
115 it will generate a NotSupported error response.
116
117 Possible Errors: [service].Error.InvalidArguments
118 [service].Error.NotSupported
119
Paul Stewarta4e618b2012-04-25 16:21:22 -0700120 void ActivateCellularModem(string carrier)
121
122 Activate a cellular modem on the provided carrier.
123
124 This method returns immediately. The caller
125 can either poll the Cellular.ActivationState
126 property, or monitor the PropertyChanged
127 signal to know when and if the
128 ActivateCellularModem call succeeded.
129
130 The correct carrier specific modem firmware
131 must already be loaded before this method is
132 called.
133
134 If this method is called for a non-cellular
135 service or on a service associated with a
136 non-CDMA device, it will return a NotSupported
137 error.
138
139 If the device is already activated nothing is returned.
140 but if the device needs to be activated an InProgress
141 error is returned.
142
143 Expected Result: [service].Error.InProgress
144 Possible Errors: [service].Error.NotSupported
145
Ben Chan5d924542013-02-14 17:49:08 -0800146 void CompleteCellularActivation()
147
148 Complete the activation of a cellular service that is
149 being activated over a non-cellular network. This
150 method is called upon the completion of the online
151 payment portal and performs the necessary checks
152 to ensure the activation process has fully completed.
153
154 This method returns immediately. The caller
155 can either poll the Cellular.ActivationState
156 property, or monitor the PropertyChanged
157 signal to know when and if the activation process
158 has completed.
159
160 If this method is called on a non-cellular service
161 or on a cellular service that is not being activated
162 over a non-cellular network, it will return a
163 NotSupported error.
164
165 If the cellular service is already activated or being
166 activated, nothing is returned.
167
168 Possible Errors: [service].Error.NotSupported
169
Paul Stewart967eaeb2013-04-25 19:53:07 -0700170 dict GetLoadableProfileEntries()
171
172 Return a dictionary of object_path -> string pairs
173 which refer to the profile entries from the loaded
174 profiles in the Manager that could possibly provide
175 configuration for this service. Each entry contains
176 the DBus path of the profile and the string entry
177 name (within that profile) that contains configuration
178 for this service. Callers can use each of these
179 argument pairs to do a "GetEntry" call on each profile
180 object.
181
Paul Stewarta4e618b2012-04-25 16:21:22 -0700182Signals PropertyChanged(string name, variant value)
183
184 This signal indicates a changed value of the given
185 property.
186
187
188Properties boolean AutoConnect [readwrite]
189
190 If set to true, this service will auto-connect
191 when no other connection is available. If multiple
192 services are marked for auto-connect then the highest
193 priority available service will be selected.
194
Paul Stewart96a6d092013-08-26 09:32:49 -0700195 On a successful connection, this property may be
196 set to true automatically, depending on the service
Paul Stewart2da34c02013-10-17 15:28:56 -0700197 type and if this property was not explicitly set on
198 the service before.
Paul Stewart96a6d092013-08-26 09:32:49 -0700199
Ben Chan3d6de0e2012-12-10 12:01:34 -0800200 boolean Cellular.ActivateOverNonCellularNetwork [readonly]
201
202 (Cellular only) If set to true, this service must be
203 activated over a non-cellular network instead of the
204 same cellular network.
205
Paul Stewarta4e618b2012-04-25 16:21:22 -0700206 string Cellular.ActivationState [readonly]
207
208 (Cellular only) The activate state of the device
209 on the cellular network. Possible values for
210 activate_state are:
211 "not-activated"
212 "activating"
213 "partially-activated"
214 "activated"
215
216 A CDMA device can be activated by calling the
217 Activate method.
218
219 This property is relevant only for services
220 associated with a CDMA cellular device.
221
222 dict Cellular.ServingOperator [readonly] [GSM only]
223 (Cellular only) Description of the operator on whose
224 network the modem is currently registered, if any.
225 The dictionary may contain the following string-valued
226 properties:
227
228 "name" The operator name
229 "country" The two-letter country code.
230 "network_id" The MCC (Mobile Country Code)
231 and MNC (Mobile Network Code) of the
232 operator on whose network the device is
233 registered. The value of the property is
234 the simple concatenation of the MCC and
235 the MNC, with no separator. The first
236 three digits are always the MCC, and
237 the following two or three digits are the
238 MNC.
239
240 string Cellular.NetworkTechnology [readonly]
241
242 (Cellular only) If the modem is registered on a
243 network, then this property gives the data bearer
244 technology currently in use. The following
245 table lists the values this property may have,
246 along with a rough indication of the "generation"
247 to which the technology is considered to belong.
248
249 Value Generation
250 -----------------------------
251 "1xRTT" (CDMA) 2.5G
252 "EVDO" (CDMA) 3G to 3.5G
253 "GPRS" 2.5G
254 "EDGE" 2.75G
255 "UMTS" 3G
256 "HSPA" 3.5G
257 "HSPA+" 3.75G
258 "LTE" 3.9G
259 "LTE Advanced" 4G
260
261 string Cellular.RoamingState [readonly]
262
263 (Cellular only) The roaming status of the modem on
264 the current network. Possible values are "home",
265 "roaming", and "unknown".
266
267 string Cellular.Olp [readonly]
268
269 (Cellular only) A dictionary describing the
270 online payment portal (OLP) at which a user
271 can sign up for, or modify, a mobile data
272 plan. The value of this property is a
273 string -> string dictionary, which includes
274 the following keys:
275
276 "url" The URL for the portal
277 "method" The HTTP method to use, "GET" or "POST"
278 "postdata" If the method is POST then this key is
279 present and contains the postdata
280 to send.
281
282 dict Cellular.APN [readwrite] [GSM only]
283
284 (Cellular only) The APN to be used with a GSM
285 carrier for making data connections. The value of
286 this property is a string -> string dictionary,
287 which must include at least the following key:
288
289 "apn" The APN to use for making connections
290
291 There are three optional properties. The first is
292
293 "network_id" The network ID (MCC/MNC pair) of the
294 network for which the APN should be used.
295 If not specified, then the network ID of
296 the currently registered network is used.
297
298 The other two optional properties are "username"
299 and "password", which, if specified, will be supplied
300 to the connect operation on the modem along with the
301 APN.
302
303 When the APN is set using this method, it overrides
304 any APN that may be associated with the specified
305 network ID in the APN database. The APN setting is
306 persistent across reboots.
307
308 A user-specified APN may be cleared by clearing this
309 property.
310
311 The algorithm for connecting to GSM networks is as
312 follows, stopping when a connection is succesfully
313 established:
314 1. Try the last APN that resulted in a successful
315 connection.
316 2. Try the APN that was set from the Cellular.APN
317 property (if any).
318 3. Try the list of APNs for the current provider one
319 at a time. The list comes from the mobile broadband
320 provider information database.
321 4. As a last resort, try connecting without specifying
322 an APN.
323
324 If all these steps fail, then the connect attempt fails.
325 Whenever this property is set to establish a new APN to
326 use, the remembered last-good-APN is cleared. The
327 remembered last-good-APN is persistent across reboots.
328
329 dict Cellular.LastGoodAPN [readonly] [GSM only]
330
331 (Cellular only) The APN information used in the
332 last successful connection attempt. If the last
333 attempt was unsuccesful, this property is unset.
334 The format of this property is the same as for
335 the Cellular.APN property.
336
Thieu Le2df97482013-03-14 10:42:42 -0700337 boolean Cellular.OutOfCredits [readonly]
338
339 (Cellular only) Indicates whether a cellular service
340 has any remaining bandwidth credits with the carrier.
341
mukesh agrawal3ffe52c2013-06-20 15:21:29 -0700342 string Cellular.PPP.Username [readwrite]
343 (Cellular only) For cellular devices with a PPP
344 link-layer, the username for PPP authentication.
345
346 string Cellular.PPP.Password [writeonly]
347 (Cellular only) For cellular devices with a PPP
348 link-layer, the password for PPP authentication.
349
Paul Stewarta4e618b2012-04-25 16:21:22 -0700350 string CheckPortal [readwrite]
351
352 Control captive portal checking. Possible values
353 are "true", "false", and "auto" (default).
354 When set to "auto" captive portal checking is
355 controlled by Manager.CheckPortalList (which
356 is a per-technology mask/list of which services
357 should do captive portal checking).
358
359 boolean Connectable [readonly]
360
361 Indicates whether a service is prepared for use
362 as an argument to the Connect method. A service
363 will not be marked Connectable if, for example,
364 it is missing necessary security credentials.
365 Clients may use this property to not disable
366 services or to mark them in some way to indicate
367 they are present but not usable.
368
Paul Stewartbdbd3c32013-04-17 09:47:21 -0700369 string Country [readonly]
370
371 (WiFi only) Indicates the 2-letter country code
372 reported by the representative endpoint for this
373 service.
374
Paul Stewarta4e618b2012-04-25 16:21:22 -0700375 object Device [readonly]
376
377 The object path of the associated device.
378 This value may be used to retrieve and manipulate
379 Layer 3 configuration state.
380
mukesh agrawalcbfb34e2013-04-17 19:33:25 -0700381 A value of "/" indicates that the service is
382 not bound to any device.
383
Darin Petkov0c65bdd2012-12-05 13:42:41 +0100384 array{string} Diagnostics.Disconnects [readonly]
385
386 History (wall-clock timestamps) of connection drops.
387
388 array{string} Diagnostics.Misconnects [readonly]
389
390 History (wall-clock timestamps) of failed connection
391 attempts.
392
Paul Stewarta4e618b2012-04-25 16:21:22 -0700393 string EAP.Identity [readwrite]
394
395 The client identity string used in setting up
396 services of type "802_1x".
397
398 This property is included in get requests only
399 when the requester has sufficient privileges.
400
401 string EAP.EAP [readwrite]
402
403 The EAP methods that will be accepted when setting
404 up services of type "802_1x".
405
406 This property is included in get requests only
407 when the requester has sufficient privileges.
408
409 string EAP.InnerEAP [readwrite]
410
411 The authentication methods that will be on the
412 inside of a PEAP or EAP-TTLS tunnel.
413
414 This property is included in get requests only
415 when the requester has sufficient privileges.
416
417 string EAP.AnonymousIdentity [readwrite]
418
419 The client identity string that will be used
420 for the outer EAP authentication for tunneled
421 methods such as PEAP and EAP-TTLS.
422
423 This property is included in get requests only
424 when the requester has sufficient privileges.
425
Paul Stewarta4e618b2012-04-25 16:21:22 -0700426 string EAP.CertID [readwrite]
427
428 The PKCS#11 identifier of the client certificate
429 to use when setting up services of type "802_1x".
430
431 This property is included in get requests only
432 when the requester has sufficient privileges.
433
434 string EAP.PrivateKey [readwrite]
435
436 The pathname of a file containing the private
437 key for setting up services of type "802_1x".
438 The private key file must be in PEM format.
439
440 This property is included in get requests only
441 when the requester has sufficient privileges.
442
443 string EAP.PrivateKeyPassword [readwrite]
444
445 The password to decrypt a private key given
446 in EAP.PrivateKey.
447
448 This property is included in get requests only
449 when the requester has sufficient privileges.
450
451 string EAP.KeyID [readwrite]
452
453 The PKCS#11 identifier of the private key to
454 use when setting up services of type "802_1x".
455
456 This property is included in get requests only
457 when the requester has sufficient privileges.
458
459 string EAP.CACert [readwrite]
460
461 The pathname of a file containing the Certificate
462 Authority's certificate for validating server
463 certificates during the 802.1x authentication
464 process.
465
466 This property is included in get requests only
467 when the requester has sufficient privileges.
468
469 string EAP.CACertID [readwrite]
470
471 The PKCS#11 ID of the EAP.CACert file for
472 validating server certificate recieved during
473 the 802.1x authentication process.
474
475 This property is included in get requests only
476 when the requester has sufficient privileges.
477
Paul Stewart5baebb72013-03-14 11:43:29 -0700478 string EAP.CACertPEM [readwrite]
479
480 An x509 CA certificate in PEM format; specifically
481 the base64 counterpart of the DER contents
482 surrounded by a "-----BEGIN CERTIFICATE-----" and
483 "-----END CERTIFICATE-----" line. This certificate
484 will be used to authenticate the remote RADIUS
485 server in the 802.1x authentication process.
486
Paul Stewarta4e618b2012-04-25 16:21:22 -0700487 boolean EAP.UseSystemCAs [readwrite]
488
489 Control whether EAP operations are
490 configured to use the system's installed set
491 of certificate authorities when validating
492 server certificates. Note that if UseSystemCAs
493 is false and no CA is specified with EAP.CACert
494 or EAP.CaCertID - that is, no CAs are configured
495 at all - server certificates will not have their
496 signatures checked. Defaults to true.
497
498 This property is included in get requests only
499 when the requester has sufficient privileges.
500
501 string EAP.PIN [readwrite]
502
503 The PIN used to authenticate to the PKCS#11 device
504 to retrieve a client certificate, private key,
505 or certificate authority certificate.
506
507 This property is included in get requests only
508 when the requester has sufficient privileges.
Albert Chaulk0e1cdea2013-02-27 15:32:55 -0800509
Paul Stewarta4e618b2012-04-25 16:21:22 -0700510 string EAP.Password [readwrite]
511
512 The password to use in 802.1x authentication.
513
514 This property is included in get requests only
515 when the requester has sufficient privileges.
Albert Chaulk0e1cdea2013-02-27 15:32:55 -0800516
Paul Stewarta4e618b2012-04-25 16:21:22 -0700517 string EAP.KeyMgmt [readwrite]
518
519 (WiFi only) The key management algorithm to be
520 used in 802.1x authentication. If this property
521 is not set then "WPA-EAP" is used for the key
522 management algorithm.
523
524 This property is included in get requests only
525 when the requester has sufficient privileges.
526
Paul Stewartbc6e7392012-05-24 07:07:48 -0700527 array{string} EAP.RemoteCertification [readonly]
528
529 (WiFi only) The list of certificate subject names
530 reported by the remote RADIUS server. This
531 property is set during 802.1x negotiation and
532 persists after disconnection for later inspection,
533 but is not persisted between connection manager
534 restarts. It is also cleared at the beginning of
535 the next connection.
536
537 string EAP.SubjectMatch [readwrite]
538
539 (WiFi only) A substring which the remote
540 RADIUS server certificate subject name must
541 contain. If the subject does not contain this
542 substring, abort 802.1x negotiation.
543
Paul Stewarta4e618b2012-04-25 16:21:22 -0700544 string Error [readonly]
545
546 The service error status details.
547
548 When error occur during connection or disconnection
549 the detailed information are represented in this
550 property to help the user interface to present the
551 user with alternate options.
552
Darin Petkov9a6b1712013-03-15 10:18:43 +0100553 This property is only valid when the service is in a
554 failure state. Otherwise it might be empty or not
555 present at all.
Paul Stewarta4e618b2012-04-25 16:21:22 -0700556
Darin Petkov9a6b1712013-03-15 10:18:43 +0100557 Look for "Flimflam error options" in
558 system_api/dbus/service_constants.h for the set of
559 defined error codes.
560
561 string ErrorDetails [readonly]
562
563 Free-style service error status details in addition to
564 the defined error codes presented through the
565 Service.Error property. For example, this property may
566 contain a server-supplied error description for a
567 rejected VPN connection attempt.
568
569 This property is only valid when the service is in a
570 failure state. Otherwise it might be empty or not
571 present at all.
Paul Stewarta4e618b2012-04-25 16:21:22 -0700572
Paul Stewarta4e618b2012-04-25 16:21:22 -0700573 string GUID [readwrite]
574
575 The Globally Unique IDentifier for the service.
576 This value may be set by a client and is
577 intended for cross-referencing Service objects
578 to externally-maintained data.
579
580 object IPConfig [readonly]
581
582 The object path of the associated IP configuration.
583 This value only exists when the service is connected,
584 and is used used to retrieve Layer 3 configuration
Paul Stewart1e3bc4962012-09-14 12:20:22 -0700585 state. A PropertyChanged signal for this object path
586 is emitted every time the IP address is configured
587 (for example during DHCP renewals), although the
588 actual value may not have changed.
Paul Stewarta4e618b2012-04-25 16:21:22 -0700589
590 boolean IsActive [readonly]
591
592 Will be true if this service has a default route;
593 i.e. network traffic is being sent through it.
594
595 string Mode [readonly]
596
597 If the service type is "wifi", then this property is
598 present and contains the mode of the network. The
599 possible values are "managed" or "adhoc".
600
601 This property is present only for WiFi services.
602
603 string Name [readonly]
604
605 The service name (for example "Wireless" etc.)
606
607 This name can be used for directly displaying it in
608 the application. It has pure informational purpose.
609
610 For Ethernet devices and hidden WiFi networks it is
611 not guaranteed that this property is present. For
612 visible WiFi networks, this may contain the SSID.
613
614 See also the WiFi.HexSSID property.
615
Paul Stewart70804412013-06-17 15:00:59 -0700616 string OpenVPN.Auth [writeonly]
617
618 (VPN services of type OpenVPN only) Specify the
619 authentication algorithm to OpenVPN.
620 See the "--auth" option in the OpenVPN documentation.
621 The current value of this property is readable
622 in the "Provider" property of this service.
623
624 string OpenVPN.AuthNoCache [writeonly]
625
626 (VPN services of type OpenVPN only) If this value
627 is set to anything, do not cache usernames or passwords
628 in the OpenVPN client. See the "--auth" flag in the
629 OpenVPN documentation. The current value of this
630 property is readable in the "Provider" property of this
631 service.
632
633 string OpenVPN.AuthRetry [writeonly]
634
635 (VPN services of type OpenVPN only) Specify how to
636 handle authentication failures.
637 See the "--auth-retry" option in the OpenVPN
638 documentation. The current value of this property
639 is readable in the "Provider" property of this service.
640
641 string OpenVPN.AuthUserPass [writeonly]
642
643 (VPN services of type OpenVPN only) Authenticate
644 with username and password if this option is non-empty.
645 For this option to work, the "OpenVPN.User" property
646 must also be set. The current value of this property
647 is readable in the "Provider" property of this service.
648
649 string OpenVPN.CACert [writeonly]
650
651 (VPN services of type OpenVPN only) Specify the
652 filename of the certificate to be used to verify the
653 OpenVPN server. Only one of "OpenVPN.CACert",
654 "OpenVPN.CACertNSS" or "OpenVPN.CACertPEM" can be
655 specified. The current value of this property
656 is readable in the "Provider" property of this service.
657
658 string OpenVPN.CACertNSS [writeonly]
659
660 (VPN services of type OpenVPN only) [Deprecated]
661 Specify the NSS nickname for the certificate to be used
662 to verify the OpenVPN server. This certificate will
663 be retrieved from currently logged in user's NSS
664 database. Only one of "OpenVPN.CACert",
665 "OpenVPN.CACertNSS" or "OpenVPN.CACertPEM" can be
666 specified. The current value of this property
667 is readable in the "Provider" property of this service.
668
669 array{string} OpenVPN.CACertPEM [writeonly]
670
671 (VPN services of type OpenVPN only) The list of
672 x509 CA certificates to be used to verify the remote
673 server. Any of these certificates can directly sign
674 the server certificate. Each x509 CA certificate
675 must be in in PEM format; specifically
676 the base64 counterpart of the DER contents, optionally
677 surrounded by a "-----BEGIN CERTIFICATE-----" and
678 "-----END CERTIFICATE-----" line. Only one of
679 "OpenVPN.CACert", "OpenVPN.CACertNSS" or
680 "OpenVPN.CACertPEM" can be specified. The current
681 value of this property is readable in the "Provider"
682 property of this service.
683
684 string OpenVPN.Cert [writeonly]
685
686 (VPN services of type OpenVPN only) Specify a
687 filename of to use as the client certificate in
688 authentication. See the "--cert" option in the
689 OpenVPN documentation. The current value of this
690 property is readable in the "Provider" property of
691 this service.
692
693 string OpenVPN.Cipher [writeonly]
694
695 (VPN services of type OpenVPN only) Specify the
696 cipher algorithm for encrypted packets. See the
697 "--cipher" option in the OpenVPN documentation.
698 The current value of this property is readable in
699 the "Provider" property of this service.
700
701 string OpenVPN.CompLZO [writeonly]
702
703 (VPN services of type OpenVPN only) If non-empty,
704 enable fast LZO compression. See the
705 "--comp-lzo" option in the OpenVPN documentation.
706 The current value of this property is readable in
707 the "Provider" property of this service.
708
709 string OpenVPN.CompNoAdapt [writeonly]
710
711 (VPN services of type OpenVPN only) If non-empty,
712 don't use adaptive compression when fast LZO
713 is enabled compression. See the "--comp-noadapt"
714 option in the OpenVPN documentation. The current
715 value of this property is readable in the "Provider"
716 property of this service.
717
718 array{string} OpenVPN.ExtraCertPEM [writeonly]
719
Paul Stewart8343c0b2013-09-30 11:58:54 -0700720 (VPN services of type OpenVPN only) A list of
721 additonal x509 CA certificates to be used to complete
722 the certificate authentication chain from the CA
723 certificates. Each x509 CA certificate must be in in
724 PEM format; specifically the base64 counterpart of
725 the DER contents, optionally surrounded by a
726 "-----BEGIN CERTIFICATE-----" and
Paul Stewart70804412013-06-17 15:00:59 -0700727 "-----END CERTIFICATE-----" line. The current
728 value of this property is readable in the "Provider"
729 property of this service.
730
731 string OpenVPN.Key [writeonly]
732
733 (VPN services of type OpenVPN only) Specify the
734 filename of the private key the client uses to
735 verify itself to the OpenVPN server. See the
736 "--key" option in the OpenVPN documentation. The
737 current value of this property is readable in the
738 "Provider" property of this service.
739
740 string OpenVPN.KeyDirection [writeonly]
741
742 (VPN services of type OpenVPN only) [Deprecated]
743 This property is only provided for backwards
744 compatibility.
745
746 string OpenVPN.Mgmt.Enable [writeonly]
747
748 (VPN services of type OpenVPN only) [Deprecated]
749 This property is only provided for backwards
750 compatibility.
751
752 string OpenVPN.NsCertType [writeonly]
753
754 (VPN services of type OpenVPN only) If non-empty,
755 specifies that the peer certificate must be signed
756 with an explicit nsCertType designation. The value
757 assigned to this property specified the role that
758 should be assigned to the certificate. See the
759 "--ns-cert-type" option in the OpenVPN documentation.
760 The current value of this property is readable in the
761 "Provider" property of this service.
762
763 string OpenVPN.OTP [writeonly]
764
765 (VPN services of type OpenVPN only) Specifies a
766 one-time-password (OTP) to be used during the
767 authentication phase. The connection manager only
768 stores this value for the duration of a connection
769 attempt and will never persist this to a stored
770 profile.
771
772 string OpenVPN.Password [writeonly]
773
774 (VPN services of type OpenVPN only) Specifies a
775 password to be used during the authentication phase.
776
777 string OpenVPN.Pkcs11.ID [writeonly]
778
779 (VPN services of type OpenVPN only) Specify the
780 PKCS11 certificate id when using a crypto token
781 to perform certificate authentication.
782
783 string OpenVPN.Pkcs11.PIN [writeonly]
784
785 (VPN services of type OpenVPN only) Specifies a
786 PIN used to gain access to the cryptographic token
787 when using the "OpenVPN.Pkcs11.ID" property.
788
789 string OpenVPN.Pkcs11.Provider [writeonly]
790
791 (VPN services of type OpenVPN only) Specifies a
792 the provider for the the cryptographic token
793 when using the "OpenVPN.Pkcs11.ID" property.
794 The current value of this property is readable in the
795 "Provider" property of this service.
796
797 string OpenVPN.Ping [writeonly]
798
799 (VPN services of type OpenVPN only) If non-empty,
800 this specifies the period in seconds between sending
801 pings to the OpenVPN server. See the "--ping" option
802 in the OpenVPN documentation. The current value of
803 this property is readable in the "Provider" property
804 of this service.
805
806 string OpenVPN.PingExit [writeonly]
807
808 (VPN services of type OpenVPN only) If non-empty,
809 exit if this many seconds pass without reception
810 of a ping reply from the OpenVPN server. See the
811 "--ping-exit" option in the OpenVPN documentation.
812 The current value of this property is readable in the
813 "Provider" property of this service.
814
815 string OpenVPN.PingRestart [writeonly]
816
817 (VPN services of type OpenVPN only) If non-empty,
818 restart if this many seconds pass without reception
819 of a ping reply from the OpenVPN server. See the
820 "--ping-restart" option in the OpenVPN documentation.
821 The current value of this property is readable in the
822 "Provider" property of this service.
823
824 string OpenVPN.Port [writeonly]
825
826 (VPN services of type OpenVPN only) If non-empty,
827 use this port for both the local and remote.
828 See the "--port" option in the OpenVPN documentation.
829 The current value of this property is readable in the
830 "Provider" property of this service.
831
832 string OpenVPN.Proto [writeonly]
833
834 (VPN services of type OpenVPN only) If non-empty,
835 sets the protocol ("udp", "tcp-client", "tcp-server)
836 for the OpenVPN connection. See the "--proto" option
837 in the OpenVPN documentation. The current value of
838 this property is readable in the "Provider" property
839 of this service.
840
841 string OpenVPN.PushPeerInfo [writeonly]
842
843 (VPN services of type OpenVPN only) If non-empty,
844 specifies that client information should be pushed
845 to the server. See the "--push-peer-info" option
846 in the OpenVPN documentation. The current value of
847 this property is readable in the "Provider" property
848 of this service.
849
850 string OpenVPN.RemoteCertEKU [writeonly]
851
852 (VPN services of type OpenVPN only) Require that
853 the remote peer certificate be signed with the
854 specified extended key usage OID. See the
855 "--remote-cert-eku" option in the OpenVPN
856 documentation. The current value of this property
857 is readable in the "Provider" property of this service.
858
859 string OpenVPN.RemoteCertKU [writeonly]
860
861 (VPN services of type OpenVPN only) Require that
862 the remote peer certificate be signed with the
863 specified key usage in hex format. See the
864 "--remote-cert-ku" option in the OpenVPN
865 documentation. The current value of this property
866 is readable in the "Provider" property of this service.
867
868 string OpenVPN.RemoteCertTLS [writeonly]
869
870 (VPN services of type OpenVPN only) Require that
871 the remote peer certificate be signed with the
872 specified key usage and extend key usage based on
873 RFC3280 TLS rules. See the "--remote-cert-tls" option
874 in the OpenVPN documentation. The current value of
875 this property is readable in the "Provider" property
876 of this service.
877
878 string OpenVPN.RenegSec [writeonly]
879
880 (VPN services of type OpenVPN only) Specifies the
881 period (in seconds) to re-negotiate the data channel
882 key. See the "--reneg-sec" option in the OpenVPN
883 documentation. The current value of this property is
884 readable in the "Provider" property of this service.
885
886 string OpenVPN.ServerPollTimeout [writeonly]
887
888 (VPN services of type OpenVPN only) Specifies the
889 period (in seconds) to wait to for a response from
890 the server. See the "--server-poll-timeout" option
891 in the OpenVPN documentation. The current value of
892 this property is readable in the "Provider" property
893 of this service.
894
895 string OpenVPN.Shaper [writeonly]
896
897 (VPN services of type OpenVPN only) Restricts the
898 number of bytes per second to be output to the peer.
899 See the "--shaper" option in the OpenVPN documentation.
900 The current value of this property is readable in the
901 "Provider" property of this service.
902
903 string OpenVPN.StaticChallenge [writeonly]
904
905 (VPN services of type OpenVPN only) Enable static
906 challenge/response protocol. See the
907 "--static-challenge" option in the OpenVPN
908 documentation. The current value of this property
909 is readable in the "Provider" property of this service.
910
911 string OpenVPN.TLSAuth [writeonly]
912
913 (VPN services of type OpenVPN only) If non-empty,
914 passes this as the "--tls-auth" argument to OpenVPN.
915 The current value of this property is readable in the
916 "Provider" property of this service.
917
918 string OpenVPN.TLSAuthContents [writeonly]
919
920 (VPN services of type OpenVPN only) Creates a
921 temporary file with the contents of this property
922 and passes it to OpenVPN using the "--tls-auth"
923 option. The current value of this property
924 is readable in the "Provider" property of this service.
925
926 string OpenVPN.TLSRemote [writeonly]
927
928 (VPN services of type OpenVPN only) Specifies
929 the only X509 name that is allowed for the peer. See
930 the" --tls-remote" option in the OpenVPN
931 documentation. The current value of this property
932 is readable in the "Provider" property of this service.
933
934 string OpenVPN.User [writeonly]
935
936 (VPN services of type OpenVPN only) Specifies
937 the username to be specified in authentication to
938 the OpenVPN server. The current value of this property
939 is readable in the "Provider" property of this service.
940
941 string OpenVPN.Verb [writeonly]
942
943 (VPN services of type OpenVPN only) If non-empty,
944 passes this as the "--verb" argument to OpenVPN,
945 which sets the debug verbosity. By default this
946 value is set based on shill's debugging level for VPN.
947 The current value of this property is readable in the
948 "Provider" property of this service.
949
Paul Stewart8343c0b2013-09-30 11:58:54 -0700950 string OpenVPN.VerifyHash [writeonly]
951
952 (VPN services of type OpenVPN only) If non-empty,
953 passes this as the "--verify-hash" argument to OpenVPN,
954 which specifies the SHA1 fingerprint for level-1
955 certificate. The current value of this property is
956 readable in the "Provider" property of this service.
957
958 string OpenVPN.VerifyX509Name [writeonly]
959
960 (VPN services of type OpenVPN only) If non-empty,
961 passes this as the "--verify-x509-name" argument to
962 OpenVPN, which specifies the X509 subject distinguished
963 name we mandate the remote VPN server to have. The
964 current value of this property is readable in the
965 "Provider" property of this service.
966
967 string OpenVPN.VerifyX509Type [writeonly]
968
969 (VPN services of type OpenVPN only) If non-empty,
970 this string is passed as a second parameter to the
971 "--verify-x509-name" flag sent to OpenVPN, which
972 qualifies the type of parameter specified in the
973 "OpenVPN.VerifyX509Name" property of this service.
974 If the "OpenVPN.VerifyX509Name" property is unset or
975 empty, setting this property has no effect during
976 connection. Please see the documentation of the
977 "--verify-x509-name" flag in the OpenVPN documentation
978 to better understand how these two parameters interact.
979 The current value of this property is readable in the
980 "Provider" property of this service.
981
Paul Stewarta4e618b2012-04-25 16:21:22 -0700982 string Passphrase [readwrite]
983
984 If the service type is "wifi", then this property
985 holds a passphrase used in setting up services of
986 type "wep", "wpa", "rsn", "psk", or a private
987 key password used in setting up services of
988 type "802_1x".
989
990 For "wep" services, this must contain the WEP
991 key and, optionally, a key index. Only 40-bit
992 and 104-bit WEP keys are supported. The WEP
993 key can be formatted either as an ASCII string
994 (5 or 13 characters), or as ASCII hex digits
995 (10 or 26). When using ASCII hex digits, the
996 key may optionally be preceded by "0x" or "0X".
997 To specify an optional WEP key index, prepend
998 the key with "0:", "1:", "2:" or "3:". If no
999 index is specified, 0 is used.
1000
1001 By default this property is not included in get
1002 requests. It may be present if a non-default
1003 security policy is configured and the client has
1004 "read secret" privileges.
1005
1006 Note that no PropertyChanged signals are sent for
1007 this property. The PassphraseRequired property
1008 should be monitored instead.
1009
1010 boolean PassphraseRequired [readonly]
1011
1012 If the service type is "wifi", then this property
1013 indicates if a passphrase or key (for WEP) is required.
1014
1015 If a passphrase has been set already or if no
1016 passphrase is needed, then this property will
1017 be set to false.
1018
1019 UI clients may monitor this property for a
1020 PropertyChanged signals to prompt for a required
1021 passphrase or key.
1022
1023 [We will be supporting this soon for VPN]
1024
Alex Deymofddc09a2013-07-03 18:41:31 -07001025 string PhysicalTechnology [readonly, optional]
1026
1027 If the service type is "vpn" and the service is
1028 connected, this property is present and exposes the
1029 Type property of the underliying physical service used.
1030 Otherwise the property is not present.
1031
Paul Stewarta4e618b2012-04-25 16:21:22 -07001032 int32 Priority [readwrite]
1033
1034 An optional value used to calculate the priority order
1035 of this service. Priorities are between 1 to 100.
1036 Services with priorities are sorted ahead of services
1037 without. Services with the same priority are ordered
1038 by other means such as service type and signal
1039 strength.
1040
1041 By default services are not assigned a priority;
1042 clients must set one if they desire. To remove an
1043 existing priority use the ClearProperty method.
1044
1045 object Profile [readwrite]
1046
1047 The object path of the associated Profile object.
1048 This may not be present if the Service object
1049 has not been written to a profile yet.
1050
1051 string ProxyConfig [readwrite]
1052
1053 An externalized json dictionary describing the proxy
1054 configuration that can be stored on the service, and
1055 modified by a user.
1056 Flimflam does not use this information for anything,
1057 but it is left available to the caller, and stored
1058 persistently.
1059 This property may be set by any client and will be
1060 adopted by chrome during run-time. If syntax of the
1061 value is wrong, chrome will ignore this property during
1062 runtime.
1063 The value of this property is a string -> string
1064 dictionary that includes the following keys. The final
1065 string is a comma separated list of key-value pairs
1066 enclosed by "{" and "}"; syntax of a key-value pair is:
1067 <key>":"<value>. Example:
1068 {"mode":"fixed-servers","server":"http=foopy:80"}
1069
1070 "mode"
1071 type of proxy that can be one of:
1072 "direct" --
1073 direct connection to network, other preferences
1074 are ignored
1075 "auto_detect" --
1076 try to retrieve a PAC script from
1077 http://wpad/wpad.dat or fall back to direct
1078 connection
1079 "pac_script" --
1080 try to retrieve PAC script specified for "pac_url"
1081 (see below) or fall back to direct connection
1082 "fixed_servers" --
1083 manual configuration of one or more servers
1084 to be used as proxy
1085
1086 "pac_url"
1087 URL for proxy .pac file (meaningful only if mode=
1088 pac_script); scheme of URL must be specified
1089
1090 "pac_mandatory"
1091 indciate if a valid PAC script is mandatory
1092 (meaningful only if mode=pac_script);
1093 value is either true or false (without quotes), e.g.
1094 "pac_mandatory":true;
1095 if true, network traffic does not fall back to
1096 direct connections in case the PAC script is not
1097 available
1098
1099 "server"
1100 proxy server for manual configuration (meaningful
1101 only if mode=fixed-servers); syntax is
1102 [<proxy-scheme>"://"]<proxy-host>[":"<proxy-port>];
1103 if the proxy to use depends on the scheme of the
1104 URL, specify a semicolon separated list of :
1105 <url-scheme>"="<proxy-uri>
1106 for example:
1107 - "http=foopy:80;ftp=foopy2" --
1108 use HTTP proxy "foopy:80" for http:// URLs, and
1109 HTTP proxy "foopy2:80" for ftp:// URLS
1110 - "foopy:80" -- use HTTP proxy "foopy:80" for all
1111 URLs
1112 - "socks4://foopy" --
1113 use SOCKS v4 proxy "foopy:80" for all URLs
1114
1115 "bypass_list"
1116 proxy bypass rules for manual configuration
1117 (meaningful only if mode=fixed-servers); format
1118 can be any one of the following:
1119 1) [<url_scheme>"://"]<hostname_pattern>[":"<port>]
1120 Match all hostnames that match the pattern
1121 hostname_pattern which can be a substring of the
1122 hostname with asterisks.
1123 Examples: "foobar.com", "*foobar.com",
1124 "*.foobar.com", "*foobar.com:99",
1125 "https://x.*.y.com:99"
1126 2) "."<hostname_suffix_pattern>[":"<port>]
1127 Match a particular domain suffix.
1128 Examples: ".google.com", ".com",
1129 "http://.google.com"
1130 3) [<scheme>"://"]<ip_literal>[":"<port>]
1131 Match URLs that are IP address literals.
1132 Conceptually this is the similar to (1), but with
1133 special cases to handle IP literal
1134 canonicalization. For example matching on
1135 "[0:0:0::1]" would be the same as matching on
1136 "[::1]" since the IPv6 canonicalization is done
1137 internally.
1138 Examples: "127.0.1", "[0:0::1]", "[::1]",
1139 "http://[::1]:99"
1140 4) <ip_literal>"/"<prefix_length_in_bits>
1141 Match any URL that is to an IP literal that falls
1142 in the given range. IP range is specified using
1143 CIDR notation.
1144 Examples: "192.168.1.1/16", "fefe:13::abc/33".
1145 5) "<local>"
1146 Match local addresses; this is a literal string.
1147 "<local>" matches one of: "127.0.0.1", "::1",
1148 "localhost".
1149
1150 dict Provider [readonly]
1151
Paul Stewart70804412013-06-17 15:00:59 -07001152 (VPN only) Provider data. The Provider is a container
1153 which reports all of the VPN-specific properties of a
1154 service.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001155
Paul Stewarta4e618b2012-04-25 16:21:22 -07001156 string Host [readonly]
1157 VPN host IP address.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001158 string Type [readonly]
1159 VPN provider type (e.g. openvpn).
1160
Paul Stewart70804412013-06-17 15:00:59 -07001161 string Provider.Host [writeonly]
1162
1163 (VPN only) Host name of the VPN server. The current
1164 value of this property is readable in the "Provider"
1165 property of this service.
1166
1167 string Provider.Name [writeonly]
1168
1169 (VPN only) The name assigned to this VPN service. The
1170 current value of this property is readable in the
1171 "Provider" property of this service.
1172
1173 string Provider.Type [writeonly]
1174
1175 (VPN only) The type of VPN service. This value is
1176 only settable when creating this service (via the
1177 Manager GetService or ConfigureService methods). The
1178 current value of this property is readable in the
1179 "Provider" property of this service.
1180
Paul Stewarta4e618b2012-04-25 16:21:22 -07001181 boolean SaveCredentials [readwrite]
1182
1183 This property indicates if security credentials
1184 should be reused and/or written to stable storage.
1185 Setting this property to FALSE ensures nothing is
1186 recorded and the client must supply credentials
1187 for each Connect request.
1188
1189 The following credentials are not recorded when
1190 this property is set to FALSE:
Albert Chaulk0e1cdea2013-02-27 15:32:55 -08001191
Paul Stewarta4e618b2012-04-25 16:21:22 -07001192 Passphrase
1193 EAP.Identity
1194 EAP.AnonymousIdentity
1195 EAP.ClientCert
1196 EAP.CertID
1197 EAP.PrivateKey
1198 EAP.PrivateKeyPassword
1199 EAP.KeyID
1200 EAP.PIN
1201 EAP.Password
1202
1203 Note that no PropertyChanged signals are sent for
1204 this property.
1205
1206 string Security [readonly]
1207
1208 If the service type is "wifi", then this property is
1209 present and contains the security method or key
1210 management setting.
1211
1212 Possible values are: "none" (no privacy),
1213 "wep" (fixed key WEP), "wpa" (WPA-PSK), "rsn"
1214 (IEEE 802.11i-PSK), "psk" (either "wpa" or "rsn"),
1215 and "802_1x" (IEEE 802.11i with 802.1x authentication).
1216
1217 This property is only present for WiFi services.
1218
1219 string State [readonly]
1220
1221 The state of the service; one of:
1222
1223 "idle" The service is not enabled or otherwise
1224 operational.
1225
1226 "carrier" The associated device is powered on and
1227 ready for Layer 2 operation; e.g. a
1228 wired Ethernet device that is powered
1229 up and connected to a switch.
1230
1231 "association" Intermediate states associated with
1232 "disconnect" connection-based devices such as WiFi
1233 and Cellular. These are exposed for
1234 UI applications to provide more
1235 fine-grained status.
1236
1237 "configuration" Layer 2 is setup but Layer 3 setup
1238 has yet to completed.
1239
1240 "ready" Layer 3 setup is complete; ready to
1241 transit and receive data.
1242
1243 "portal" Layer 3 setup is complete but
1244 connectivity to the Internet may be
1245 limited or unavailable.
1246
1247 "online" Layer 3 setup is complete and an
1248 Internet connection has been checked
1249 to support HTTP access to the
1250 Manager.PortalURL site.
1251
1252 "failure" An error occurred while trying to
1253 reach the "ready" state. Consult the
1254 Error propery for details.
1255
1256 "activation-failure"
1257 An error occurred while trying to
1258 activate a cellular modem. Consult the
1259 Error property for details.
1260
Paul Stewart1291e082012-04-30 20:08:05 -07001261 string StaticIP.Address [readwrite]
1262 string StaticIP.Gateway [readwrite]
1263 int32 StaticIP.Mtu [readwrite]
1264 string StaticIP.NameServers [readwrite]
1265 string StaticIP.PeerAddress [readwrite]
1266 int32 StaticIP.Prefixlen [readwrite]
1267
1268 The properties above can be set on a service to
1269 selectively override individual parameters received
1270 over DHCP or whatever default IP aquisition technique
1271 is used by the service. The "StaticIP.NameServers"
1272 property should be a comma-separated list of IP
1273 addresses.
1274
1275 Additionally, in services that use DHCP, if the
1276 "StaticIP.Address" and "StaticIP.Prefixlen"
1277 parameters are both set on a service, the service
1278 will be configured as soon as a link is established,
1279 in order to allow full static IP configuration. A
1280 DHCP client will be launched in parallel, which, if
1281 successful, will provide values for any parameters
1282 that were not set statically.
1283
1284 The IPConfig associated with the service (object
1285 path supplied in the "IPConfig" property above)
1286 will display the result of the merged network
1287 parameters.
1288
Paul Stewartdef189e2012-08-02 20:12:09 -07001289 string SavedIP.Address [readonly]
1290 string SavedIP.Gateway [readonly]
1291 int32 SavedIP.Mtu [readonly]
1292 string SavedIP.NameServers [readonly]
1293 string SavedIP.PeerAddress [readonly]
1294 int32 SavedIP.Prefixlen [readonly]
1295
1296 The properties above are set on a service to present
1297 the configuration that was recieved from the DHCP
1298 server prior to applying any "StaticIP.*" parameters
1299 during the most recent connection attempt. All
1300 parameters are saved regardless of whether they were
1301 overridden.
1302
1303 Note that if a "StaticIP.*" parameter is set on
1304 a service, but the service has not been re-connected,
1305 the IPConfig object will still contain the true
1306 value that the interface is set to.
1307
Paul Stewarta4e618b2012-04-25 16:21:22 -07001308 uint8 Strength [readonly]
1309
1310 Indicates the signal strength of the service. This
1311 is a normalized value between 0 and 100.
1312
1313 This property will not be present for Ethernet
1314 devices.
1315
Paul Stewartfa11e282013-12-02 22:04:25 -08001316 string Tethering [readonly]
1317
1318 Returns a string that indicates an estimate of
1319 whether the service is likely to be providing
1320 internet connectivity over a mobile network backhaul.
1321 The possible values of this string are:
1322
1323 NotDetected: Tethering is not detected.
1324 Suspected: Something in the network scan
1325 provides circumstantial evidence
1326 that this service is tethered.
1327 Confirmed: Some definitive evidence has
1328 been discovered that indicates
1329 either this service is tethered
1330 or the server is overtly pretending
1331 to be tethered.
1332
1333 This property is only visible in service types
1334 which can support tethering. Currently only
1335 Ethernet and WiFi services support this property.
1336
Paul Stewarta4e618b2012-04-25 16:21:22 -07001337 string Type [readonly]
1338
1339 The service type; one of:
1340 "ethernet" (802.3 wired Ethernet),
1341 "wifi" (IEEE 802.11),
1342 "wimax" (IEEE 802.16),
1343 "bluetooth" (Bluetooth PAN),
1344 "cellular" (3G Cellular), or
1345 "vpn" (Virtual Private Network).
1346
1347 This information should only be used to determine
1348 advanced properties or showing the correct icon
1349 to the user.
1350
1351 string UIData [readwrite]
1352
1353 This is additional data available about this service
1354 for use by the user interface. This value is opaque
1355 and not used by shill.
1356
1357 string WiFi.AuthMode [readonly]
1358
1359 (WiFi only) If the service state is
1360 "configuration" or "ready", then this property
1361 will be present and contains the negotiated
1362 authentication method.
1363
1364 There are too many possible values to enumerate here.
1365 The complete set depends on the capabilities of the
1366 associated WiFi supplicant.
1367
1368 string WiFi.BSSID [readonly]
1369
1370 (WiFi only) The BSSID of the associated AP.
1371 One can monitor this property for PropertyChanged
1372 signals to identify when roaming changes the
1373 current AP.
1374
Paul Stewart0cab5682012-09-13 18:50:34 -07001375 boolean WiFi.HiddenSSID [readwrite]
Paul Stewarta4e618b2012-04-25 16:21:22 -07001376
1377 (WiFi only) If true, the associated WiFi network
1378 does not broadcast it's SSID in beacon frames.
Paul Stewart0cab5682012-09-13 18:50:34 -07001379 This property instructs shill to actively scan
1380 for this SSID. This value is cleared when this
1381 service is removed from all active profiles.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001382
1383 uint16 WiFi.Frequency [readonly]
1384
1385 (WiFi only) The operating frequency in MHz of
mukesh agrawale7c7e652013-06-18 17:19:39 -07001386 the Service. If the Service is connected, this
1387 is the frequency on which it is connected.
1388 Otherwise, this is the frequency of the best
1389 available BSS (roughly, AP) for this Service.
1390
1391 array{uint16} WiFi.FrequencyList [readonly]
1392
1393 (WiFi only) The operating frequencies in MHz of
1394 the Service. This lists all of the frequencies
1395 where this Service has recently been seen.
1396
1397 This list is not necessarily complete, as:
1398 a) not all scans check every channel,
1399 b) an AP may not have responded in time, and
1400 c) some scan results may have expired from the
1401 cache.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001402
1403 string WiFi.PhyMode [readonly]
1404
1405 (WiFi only) If the service state is
1406 "configuration" or "ready", then this property
1407 will be present and contains the negotiated
1408 operating mode for the channel. Possible values
1409 include "802.11a", "802.11b", "802.11g",
1410 "802.11n". This value is for informational
1411 purposes only.
1412
1413 string WiFi.HexSSID [readonly]
1414
Paul Stewart9d95dad2013-10-10 12:08:14 -07001415 (WiFi only) This property holds a hex-encoded copy
1416 of the SSID. Since the Name property is enforced
1417 by the D-Bus protocol to be a valid UTF-8 string
1418 but SSIDs can be an abitrary sequence of bytes, this
1419 property will always contain the true value of the
1420 SSID, while the Name property may differ from the
1421 true representation.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001422
1423 See also the Name property. (Note that there is
Paul Stewart9d95dad2013-10-10 12:08:14 -07001424 no SSID property for reasons explained above.)
Paul Stewarta4e618b2012-04-25 16:21:22 -07001425
1426 string WiFi.SSID [readonly]
Paul Stewarta5e7d5f2013-01-09 18:06:15 -08001427
Paul Stewarta4e618b2012-04-25 16:21:22 -07001428 (WiFi only) The service's SSID. Must have a non-zero
1429 length less than or equal to 32.
Paul Stewart72b2fdc2012-06-02 08:58:51 -07001430
Paul Stewarta5e7d5f2013-01-09 18:06:15 -08001431 bool WiFi.ProtectedManagementFrameRequired [readonly]
1432
1433 (WiFi only) This property indicates whether an AP for
1434 this service has been seen that requires 802.11w
1435 (Protected Management Frame) support.
1436
Paul Stewart72b2fdc2012-06-02 08:58:51 -07001437 dict WiFi.VendorInformation [readonly]
Paul Stewarta5e7d5f2013-01-09 18:06:15 -08001438
Paul Stewart72b2fdc2012-06-02 08:58:51 -07001439 (WiFi only) Information about the vendor of the
1440 AP, gleaned from WPS and vendor-specific information
1441 elements in the beacon and probe respondss.
1442
1443 string Manufacturer [readonly]
1444 Device manufacturer name as supplied by WPS IE.
1445 string ModelName [readonly]
1446 Device model name as supplied by WPS IE.
1447 string ModelNumber [readonly]
1448 Device model number as supplied by WPS IE.
1449 string DeviceName [readonly]
1450 Device name as supplied by WPS IE.
1451 string OUIList [readonly]
1452 Space separated list of OUI identifiers for
1453 vendor-specific IEs that were neither the
1454 Microsoft nor Epigram identifiers (the former
1455 two are used for platform-neutral information).