blob: 889a9b41b5f771dfba269a4f7cc1f08c35436e5c [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
Paul Stewartb5768232014-02-27 07:21:34 -0800934 string OpenVPN.Token [writeonly]
935
936 (VPN services of type OpenVPN only) Specifies a
Paul Stewart5351cbd2014-03-12 09:07:44 -0700937 single-use token to be used during the static challenge
938 phase of authentication. This will be used instead of
939 the standard OpenVPN "SCRV1:" response containing the
940 password and OTP parameters. This is useful in
941 installations where the default base64 encoding may be
942 too large to fit in the buffer size available, and
943 server implementations have been changed to avoid this.
Paul Stewartb5768232014-02-27 07:21:34 -0800944 The connection manager only stores this value for the
945 duration of a connection attempt and will never persist
946 this to a stored profile.
947
Paul Stewart70804412013-06-17 15:00:59 -0700948 string OpenVPN.User [writeonly]
949
950 (VPN services of type OpenVPN only) Specifies
951 the username to be specified in authentication to
952 the OpenVPN server. The current value of this property
953 is readable in the "Provider" property of this service.
954
955 string OpenVPN.Verb [writeonly]
956
957 (VPN services of type OpenVPN only) If non-empty,
958 passes this as the "--verb" argument to OpenVPN,
959 which sets the debug verbosity. By default this
960 value is set based on shill's debugging level for VPN.
961 The current value of this property is readable in the
962 "Provider" property of this service.
963
Paul Stewart8343c0b2013-09-30 11:58:54 -0700964 string OpenVPN.VerifyHash [writeonly]
965
966 (VPN services of type OpenVPN only) If non-empty,
967 passes this as the "--verify-hash" argument to OpenVPN,
968 which specifies the SHA1 fingerprint for level-1
969 certificate. The current value of this property is
970 readable in the "Provider" property of this service.
971
972 string OpenVPN.VerifyX509Name [writeonly]
973
974 (VPN services of type OpenVPN only) If non-empty,
975 passes this as the "--verify-x509-name" argument to
976 OpenVPN, which specifies the X509 subject distinguished
977 name we mandate the remote VPN server to have. The
978 current value of this property is readable in the
979 "Provider" property of this service.
980
981 string OpenVPN.VerifyX509Type [writeonly]
982
983 (VPN services of type OpenVPN only) If non-empty,
984 this string is passed as a second parameter to the
985 "--verify-x509-name" flag sent to OpenVPN, which
986 qualifies the type of parameter specified in the
987 "OpenVPN.VerifyX509Name" property of this service.
988 If the "OpenVPN.VerifyX509Name" property is unset or
989 empty, setting this property has no effect during
990 connection. Please see the documentation of the
991 "--verify-x509-name" flag in the OpenVPN documentation
992 to better understand how these two parameters interact.
993 The current value of this property is readable in the
994 "Provider" property of this service.
995
Paul Stewarta4e618b2012-04-25 16:21:22 -0700996 string Passphrase [readwrite]
997
998 If the service type is "wifi", then this property
999 holds a passphrase used in setting up services of
1000 type "wep", "wpa", "rsn", "psk", or a private
1001 key password used in setting up services of
1002 type "802_1x".
1003
1004 For "wep" services, this must contain the WEP
1005 key and, optionally, a key index. Only 40-bit
1006 and 104-bit WEP keys are supported. The WEP
1007 key can be formatted either as an ASCII string
1008 (5 or 13 characters), or as ASCII hex digits
1009 (10 or 26). When using ASCII hex digits, the
1010 key may optionally be preceded by "0x" or "0X".
1011 To specify an optional WEP key index, prepend
1012 the key with "0:", "1:", "2:" or "3:". If no
1013 index is specified, 0 is used.
1014
1015 By default this property is not included in get
1016 requests. It may be present if a non-default
1017 security policy is configured and the client has
1018 "read secret" privileges.
1019
1020 Note that no PropertyChanged signals are sent for
1021 this property. The PassphraseRequired property
1022 should be monitored instead.
1023
1024 boolean PassphraseRequired [readonly]
1025
1026 If the service type is "wifi", then this property
1027 indicates if a passphrase or key (for WEP) is required.
1028
1029 If a passphrase has been set already or if no
1030 passphrase is needed, then this property will
1031 be set to false.
1032
1033 UI clients may monitor this property for a
1034 PropertyChanged signals to prompt for a required
1035 passphrase or key.
1036
1037 [We will be supporting this soon for VPN]
1038
Alex Deymofddc09a2013-07-03 18:41:31 -07001039 string PhysicalTechnology [readonly, optional]
1040
1041 If the service type is "vpn" and the service is
1042 connected, this property is present and exposes the
1043 Type property of the underliying physical service used.
1044 Otherwise the property is not present.
1045
Paul Stewartd7c09a52014-02-19 12:50:29 -08001046 string PreviousError [readonly]
1047
1048 The most recent service error status logged. Even
1049 after the service leaves the failed state, this
1050 property retains the last value that the Error property
1051 contained.
1052
1053 Note that no PropertyChanged signals are sent for
1054 this property. The Error property should be monitored
1055 instead.
1056
1057 int32 PreviousErrorSerialNumber [readonly]
1058
1059 This number increases by one every time a service
1060 failure is logged. It returns to zero if shill
1061 restarts.
1062
1063 Note that no PropertyChanged signals are sent for
1064 this property. The Error property should be monitored
1065 instead.
1066
Paul Stewarta4e618b2012-04-25 16:21:22 -07001067 int32 Priority [readwrite]
1068
1069 An optional value used to calculate the priority order
1070 of this service. Priorities are between 1 to 100.
1071 Services with priorities are sorted ahead of services
1072 without. Services with the same priority are ordered
1073 by other means such as service type and signal
1074 strength.
1075
1076 By default services are not assigned a priority;
1077 clients must set one if they desire. To remove an
1078 existing priority use the ClearProperty method.
1079
1080 object Profile [readwrite]
1081
1082 The object path of the associated Profile object.
1083 This may not be present if the Service object
1084 has not been written to a profile yet.
1085
1086 string ProxyConfig [readwrite]
1087
1088 An externalized json dictionary describing the proxy
1089 configuration that can be stored on the service, and
1090 modified by a user.
1091 Flimflam does not use this information for anything,
1092 but it is left available to the caller, and stored
1093 persistently.
1094 This property may be set by any client and will be
1095 adopted by chrome during run-time. If syntax of the
1096 value is wrong, chrome will ignore this property during
1097 runtime.
1098 The value of this property is a string -> string
1099 dictionary that includes the following keys. The final
1100 string is a comma separated list of key-value pairs
1101 enclosed by "{" and "}"; syntax of a key-value pair is:
1102 <key>":"<value>. Example:
1103 {"mode":"fixed-servers","server":"http=foopy:80"}
1104
1105 "mode"
1106 type of proxy that can be one of:
1107 "direct" --
1108 direct connection to network, other preferences
1109 are ignored
1110 "auto_detect" --
1111 try to retrieve a PAC script from
1112 http://wpad/wpad.dat or fall back to direct
1113 connection
1114 "pac_script" --
1115 try to retrieve PAC script specified for "pac_url"
1116 (see below) or fall back to direct connection
1117 "fixed_servers" --
1118 manual configuration of one or more servers
1119 to be used as proxy
1120
1121 "pac_url"
1122 URL for proxy .pac file (meaningful only if mode=
1123 pac_script); scheme of URL must be specified
1124
1125 "pac_mandatory"
1126 indciate if a valid PAC script is mandatory
1127 (meaningful only if mode=pac_script);
1128 value is either true or false (without quotes), e.g.
1129 "pac_mandatory":true;
1130 if true, network traffic does not fall back to
1131 direct connections in case the PAC script is not
1132 available
1133
1134 "server"
1135 proxy server for manual configuration (meaningful
1136 only if mode=fixed-servers); syntax is
1137 [<proxy-scheme>"://"]<proxy-host>[":"<proxy-port>];
1138 if the proxy to use depends on the scheme of the
1139 URL, specify a semicolon separated list of :
1140 <url-scheme>"="<proxy-uri>
1141 for example:
1142 - "http=foopy:80;ftp=foopy2" --
1143 use HTTP proxy "foopy:80" for http:// URLs, and
1144 HTTP proxy "foopy2:80" for ftp:// URLS
1145 - "foopy:80" -- use HTTP proxy "foopy:80" for all
1146 URLs
1147 - "socks4://foopy" --
1148 use SOCKS v4 proxy "foopy:80" for all URLs
1149
1150 "bypass_list"
1151 proxy bypass rules for manual configuration
1152 (meaningful only if mode=fixed-servers); format
1153 can be any one of the following:
1154 1) [<url_scheme>"://"]<hostname_pattern>[":"<port>]
1155 Match all hostnames that match the pattern
1156 hostname_pattern which can be a substring of the
1157 hostname with asterisks.
1158 Examples: "foobar.com", "*foobar.com",
1159 "*.foobar.com", "*foobar.com:99",
1160 "https://x.*.y.com:99"
1161 2) "."<hostname_suffix_pattern>[":"<port>]
1162 Match a particular domain suffix.
1163 Examples: ".google.com", ".com",
1164 "http://.google.com"
1165 3) [<scheme>"://"]<ip_literal>[":"<port>]
1166 Match URLs that are IP address literals.
1167 Conceptually this is the similar to (1), but with
1168 special cases to handle IP literal
1169 canonicalization. For example matching on
1170 "[0:0:0::1]" would be the same as matching on
1171 "[::1]" since the IPv6 canonicalization is done
1172 internally.
1173 Examples: "127.0.1", "[0:0::1]", "[::1]",
1174 "http://[::1]:99"
1175 4) <ip_literal>"/"<prefix_length_in_bits>
1176 Match any URL that is to an IP literal that falls
1177 in the given range. IP range is specified using
1178 CIDR notation.
1179 Examples: "192.168.1.1/16", "fefe:13::abc/33".
1180 5) "<local>"
1181 Match local addresses; this is a literal string.
1182 "<local>" matches one of: "127.0.0.1", "::1",
1183 "localhost".
1184
1185 dict Provider [readonly]
1186
Paul Stewart70804412013-06-17 15:00:59 -07001187 (VPN only) Provider data. The Provider is a container
1188 which reports all of the VPN-specific properties of a
1189 service.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001190
Paul Stewarta4e618b2012-04-25 16:21:22 -07001191 string Host [readonly]
1192 VPN host IP address.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001193 string Type [readonly]
1194 VPN provider type (e.g. openvpn).
1195
Paul Stewart70804412013-06-17 15:00:59 -07001196 string Provider.Host [writeonly]
1197
1198 (VPN only) Host name of the VPN server. The current
1199 value of this property is readable in the "Provider"
1200 property of this service.
1201
1202 string Provider.Name [writeonly]
1203
1204 (VPN only) The name assigned to this VPN service. The
1205 current value of this property is readable in the
1206 "Provider" property of this service.
1207
1208 string Provider.Type [writeonly]
1209
1210 (VPN only) The type of VPN service. This value is
1211 only settable when creating this service (via the
1212 Manager GetService or ConfigureService methods). The
1213 current value of this property is readable in the
1214 "Provider" property of this service.
1215
Paul Stewarta4e618b2012-04-25 16:21:22 -07001216 boolean SaveCredentials [readwrite]
1217
1218 This property indicates if security credentials
1219 should be reused and/or written to stable storage.
1220 Setting this property to FALSE ensures nothing is
1221 recorded and the client must supply credentials
1222 for each Connect request.
1223
1224 The following credentials are not recorded when
1225 this property is set to FALSE:
Albert Chaulk0e1cdea2013-02-27 15:32:55 -08001226
Paul Stewarta4e618b2012-04-25 16:21:22 -07001227 Passphrase
1228 EAP.Identity
1229 EAP.AnonymousIdentity
1230 EAP.ClientCert
1231 EAP.CertID
1232 EAP.PrivateKey
1233 EAP.PrivateKeyPassword
1234 EAP.KeyID
1235 EAP.PIN
1236 EAP.Password
1237
1238 Note that no PropertyChanged signals are sent for
1239 this property.
1240
1241 string Security [readonly]
1242
1243 If the service type is "wifi", then this property is
1244 present and contains the security method or key
1245 management setting.
1246
1247 Possible values are: "none" (no privacy),
1248 "wep" (fixed key WEP), "wpa" (WPA-PSK), "rsn"
1249 (IEEE 802.11i-PSK), "psk" (either "wpa" or "rsn"),
1250 and "802_1x" (IEEE 802.11i with 802.1x authentication).
1251
1252 This property is only present for WiFi services.
1253
1254 string State [readonly]
1255
1256 The state of the service; one of:
1257
1258 "idle" The service is not enabled or otherwise
1259 operational.
1260
1261 "carrier" The associated device is powered on and
1262 ready for Layer 2 operation; e.g. a
1263 wired Ethernet device that is powered
1264 up and connected to a switch.
1265
1266 "association" Intermediate states associated with
1267 "disconnect" connection-based devices such as WiFi
1268 and Cellular. These are exposed for
1269 UI applications to provide more
1270 fine-grained status.
1271
1272 "configuration" Layer 2 is setup but Layer 3 setup
1273 has yet to completed.
1274
1275 "ready" Layer 3 setup is complete; ready to
1276 transit and receive data.
1277
1278 "portal" Layer 3 setup is complete but
1279 connectivity to the Internet may be
1280 limited or unavailable.
1281
1282 "online" Layer 3 setup is complete and an
1283 Internet connection has been checked
1284 to support HTTP access to the
1285 Manager.PortalURL site.
1286
1287 "failure" An error occurred while trying to
1288 reach the "ready" state. Consult the
1289 Error propery for details.
1290
1291 "activation-failure"
1292 An error occurred while trying to
1293 activate a cellular modem. Consult the
1294 Error property for details.
1295
Paul Stewart1291e082012-04-30 20:08:05 -07001296 string StaticIP.Address [readwrite]
1297 string StaticIP.Gateway [readwrite]
1298 int32 StaticIP.Mtu [readwrite]
1299 string StaticIP.NameServers [readwrite]
1300 string StaticIP.PeerAddress [readwrite]
1301 int32 StaticIP.Prefixlen [readwrite]
1302
1303 The properties above can be set on a service to
1304 selectively override individual parameters received
1305 over DHCP or whatever default IP aquisition technique
1306 is used by the service. The "StaticIP.NameServers"
1307 property should be a comma-separated list of IP
1308 addresses.
1309
1310 Additionally, in services that use DHCP, if the
1311 "StaticIP.Address" and "StaticIP.Prefixlen"
1312 parameters are both set on a service, the service
1313 will be configured as soon as a link is established,
1314 in order to allow full static IP configuration. A
1315 DHCP client will be launched in parallel, which, if
1316 successful, will provide values for any parameters
1317 that were not set statically.
1318
1319 The IPConfig associated with the service (object
1320 path supplied in the "IPConfig" property above)
1321 will display the result of the merged network
1322 parameters.
1323
Paul Stewartdef189e2012-08-02 20:12:09 -07001324 string SavedIP.Address [readonly]
1325 string SavedIP.Gateway [readonly]
1326 int32 SavedIP.Mtu [readonly]
1327 string SavedIP.NameServers [readonly]
1328 string SavedIP.PeerAddress [readonly]
1329 int32 SavedIP.Prefixlen [readonly]
1330
1331 The properties above are set on a service to present
1332 the configuration that was recieved from the DHCP
1333 server prior to applying any "StaticIP.*" parameters
1334 during the most recent connection attempt. All
1335 parameters are saved regardless of whether they were
1336 overridden.
1337
1338 Note that if a "StaticIP.*" parameter is set on
1339 a service, but the service has not been re-connected,
1340 the IPConfig object will still contain the true
1341 value that the interface is set to.
1342
Paul Stewarta4e618b2012-04-25 16:21:22 -07001343 uint8 Strength [readonly]
1344
1345 Indicates the signal strength of the service. This
1346 is a normalized value between 0 and 100.
1347
1348 This property will not be present for Ethernet
1349 devices.
1350
Paul Stewartfa11e282013-12-02 22:04:25 -08001351 string Tethering [readonly]
1352
1353 Returns a string that indicates an estimate of
1354 whether the service is likely to be providing
1355 internet connectivity over a mobile network backhaul.
1356 The possible values of this string are:
1357
1358 NotDetected: Tethering is not detected.
1359 Suspected: Something in the network scan
1360 provides circumstantial evidence
1361 that this service is tethered.
1362 Confirmed: Some definitive evidence has
1363 been discovered that indicates
1364 either this service is tethered
1365 or the server is overtly pretending
1366 to be tethered.
1367
1368 This property is only visible in service types
1369 which can support tethering. Currently only
Paul Stewart7f5d9c02013-12-03 18:26:00 -08001370 Ethernet and WiFi services support this property
1371 directly. VPN services make this property visible
1372 if the service they're using for connectivity does
1373 (i.e., if VPN connectivity is gained via Ethernet
1374 or WiFi).
Paul Stewartfa11e282013-12-02 22:04:25 -08001375
Paul Stewarta4e618b2012-04-25 16:21:22 -07001376 string Type [readonly]
1377
1378 The service type; one of:
1379 "ethernet" (802.3 wired Ethernet),
1380 "wifi" (IEEE 802.11),
1381 "wimax" (IEEE 802.16),
1382 "bluetooth" (Bluetooth PAN),
1383 "cellular" (3G Cellular), or
1384 "vpn" (Virtual Private Network).
1385
1386 This information should only be used to determine
1387 advanced properties or showing the correct icon
1388 to the user.
1389
1390 string UIData [readwrite]
1391
1392 This is additional data available about this service
1393 for use by the user interface. This value is opaque
1394 and not used by shill.
1395
1396 string WiFi.AuthMode [readonly]
1397
1398 (WiFi only) If the service state is
1399 "configuration" or "ready", then this property
1400 will be present and contains the negotiated
1401 authentication method.
1402
1403 There are too many possible values to enumerate here.
1404 The complete set depends on the capabilities of the
1405 associated WiFi supplicant.
1406
1407 string WiFi.BSSID [readonly]
1408
1409 (WiFi only) The BSSID of the associated AP.
1410 One can monitor this property for PropertyChanged
1411 signals to identify when roaming changes the
1412 current AP.
1413
Paul Stewart0cab5682012-09-13 18:50:34 -07001414 boolean WiFi.HiddenSSID [readwrite]
Paul Stewarta4e618b2012-04-25 16:21:22 -07001415
1416 (WiFi only) If true, the associated WiFi network
1417 does not broadcast it's SSID in beacon frames.
Paul Stewart0cab5682012-09-13 18:50:34 -07001418 This property instructs shill to actively scan
1419 for this SSID. This value is cleared when this
1420 service is removed from all active profiles.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001421
1422 uint16 WiFi.Frequency [readonly]
1423
1424 (WiFi only) The operating frequency in MHz of
mukesh agrawale7c7e652013-06-18 17:19:39 -07001425 the Service. If the Service is connected, this
1426 is the frequency on which it is connected.
1427 Otherwise, this is the frequency of the best
1428 available BSS (roughly, AP) for this Service.
1429
1430 array{uint16} WiFi.FrequencyList [readonly]
1431
1432 (WiFi only) The operating frequencies in MHz of
1433 the Service. This lists all of the frequencies
1434 where this Service has recently been seen.
1435
1436 This list is not necessarily complete, as:
1437 a) not all scans check every channel,
1438 b) an AP may not have responded in time, and
1439 c) some scan results may have expired from the
1440 cache.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001441
1442 string WiFi.PhyMode [readonly]
1443
1444 (WiFi only) If the service state is
1445 "configuration" or "ready", then this property
1446 will be present and contains the negotiated
1447 operating mode for the channel. Possible values
1448 include "802.11a", "802.11b", "802.11g",
1449 "802.11n". This value is for informational
1450 purposes only.
1451
1452 string WiFi.HexSSID [readonly]
1453
Paul Stewart9d95dad2013-10-10 12:08:14 -07001454 (WiFi only) This property holds a hex-encoded copy
1455 of the SSID. Since the Name property is enforced
1456 by the D-Bus protocol to be a valid UTF-8 string
1457 but SSIDs can be an abitrary sequence of bytes, this
1458 property will always contain the true value of the
1459 SSID, while the Name property may differ from the
1460 true representation.
Paul Stewarta4e618b2012-04-25 16:21:22 -07001461
1462 See also the Name property. (Note that there is
Paul Stewart9d95dad2013-10-10 12:08:14 -07001463 no SSID property for reasons explained above.)
Paul Stewarta4e618b2012-04-25 16:21:22 -07001464
1465 string WiFi.SSID [readonly]
Paul Stewarta5e7d5f2013-01-09 18:06:15 -08001466
Paul Stewarta4e618b2012-04-25 16:21:22 -07001467 (WiFi only) The service's SSID. Must have a non-zero
1468 length less than or equal to 32.
Paul Stewart72b2fdc2012-06-02 08:58:51 -07001469
Paul Stewarta5e7d5f2013-01-09 18:06:15 -08001470 bool WiFi.ProtectedManagementFrameRequired [readonly]
1471
1472 (WiFi only) This property indicates whether an AP for
1473 this service has been seen that requires 802.11w
1474 (Protected Management Frame) support.
1475
Paul Stewart72b2fdc2012-06-02 08:58:51 -07001476 dict WiFi.VendorInformation [readonly]
Paul Stewarta5e7d5f2013-01-09 18:06:15 -08001477
Paul Stewart72b2fdc2012-06-02 08:58:51 -07001478 (WiFi only) Information about the vendor of the
1479 AP, gleaned from WPS and vendor-specific information
1480 elements in the beacon and probe respondss.
1481
1482 string Manufacturer [readonly]
1483 Device manufacturer name as supplied by WPS IE.
1484 string ModelName [readonly]
1485 Device model name as supplied by WPS IE.
1486 string ModelNumber [readonly]
1487 Device model number as supplied by WPS IE.
1488 string DeviceName [readonly]
1489 Device name as supplied by WPS IE.
1490 string OUIList [readonly]
1491 Space separated list of OUI identifiers for
1492 vendor-specific IEs that were neither the
1493 Microsoft nor Epigram identifiers (the former
1494 two are used for platform-neutral information).