1 // Copyright 2015 The Chromium OS Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef SYSTEM_API_DBUS_SHILL_DBUS_CONSTANTS_H_
6 #define SYSTEM_API_DBUS_SHILL_DBUS_CONSTANTS_H_
7 
8 // TODO(benchan): Reorganize shill constants and remove deprecated ones.
9 namespace shill {
10 // Flimflam D-Bus service identifiers.
11 const char kFlimflamManagerInterface[] = "org.chromium.flimflam.Manager";
12 const char kFlimflamServiceName[] = "org.chromium.flimflam";
13 const char kFlimflamServicePath[] = "/";  // crosbug.com/20135
14 const char kFlimflamServiceInterface[] = "org.chromium.flimflam.Service";
15 const char kFlimflamIPConfigInterface[] = "org.chromium.flimflam.IPConfig";
16 const char kFlimflamDeviceInterface[] = "org.chromium.flimflam.Device";
17 const char kFlimflamProfileInterface[] = "org.chromium.flimflam.Profile";
18 const char kFlimflamNetworkInterface[] = "org.chromium.flimflam.Network";
19 const char kFlimflamThirdPartyVpnInterface[] =
20     "org.chromium.flimflam.ThirdPartyVpn";
21 
22 // Flimflam function names.
23 const char kGetPropertiesFunction[] = "GetProperties";
24 const char kSetPropertyFunction[] = "SetProperty";
25 const char kClearPropertyFunction[] = "ClearProperty";
26 const char kConnectFunction[] = "Connect";
27 const char kDisconnectFunction[] = "Disconnect";
28 const char kRequestScanFunction[] = "RequestScan";
29 const char kGetServiceFunction[] = "GetService";
30 const char kGetWifiServiceFunction[] = "GetWifiService";
31 const char kGetVPNServiceFunction[] = "GetVPNService";
32 const char kRemoveServiceFunction[] = "Remove";
33 const char kEnableTechnologyFunction[] = "EnableTechnology";
34 const char kDisableTechnologyFunction[] = "DisableTechnology";
35 const char kAddIPConfigFunction[] = "AddIPConfig";
36 const char kRemoveConfigFunction[] = "Remove";
37 const char kGetEntryFunction[] = "GetEntry";
38 const char kDeleteEntryFunction[] = "DeleteEntry";
39 const char kActivateCellularModemFunction[] = "ActivateCellularModem";
40 const char kRequirePinFunction[] = "RequirePin";
41 const char kEnterPinFunction[] = "EnterPin";
42 const char kUnblockPinFunction[] = "UnblockPin";
43 const char kChangePinFunction[] = "ChangePin";
44 const char kProposeScanFunction[] = "ProposeScan";
45 const char kRegisterFunction[] = "Register";
46 const char kConfigureServiceFunction[] = "ConfigureService";
47 const char kConfigureWifiServiceFunction[] = "ConfigureWifiService";
48 const char kFindMatchingServiceFunction[] = "FindMatchingService";
49 const char kSetNetworkThrottlingFunction[] = "SetNetworkThrottlingStatus";
50 
51 // Flimflam Service property names.
52 const char kSecurityProperty[] = "Security";
53 const char kPriorityProperty[] = "Priority";
54 const char kPriorityWithinTechnologyProperty[] = "PriorityWithinTechnology";
55 const char kPassphraseProperty[] = "Passphrase";
56 const char kIdentityProperty[] = "Identity";
57 const char kAuthorityPathProperty[] = "AuthorityPath";
58 const char kPassphraseRequiredProperty[] = "PassphraseRequired";
59 const char kSaveCredentialsProperty[] = "SaveCredentials";
60 const char kSignalStrengthProperty[] = "Strength";
61 const char kNameProperty[] = "Name";
62 const char kGuidProperty[] = "GUID";
63 const char kStateProperty[] = "State";
64 const char kTypeProperty[] = "Type";
65 const char kDeviceProperty[] = "Device";
66 const char kProfileProperty[] = "Profile";
67 const char kConnectivityStateProperty[] = "ConnectivityState";
68 const char kConnectableProperty[] = "Connectable";
69 const char kAutoConnectProperty[] = "AutoConnect";
70 const char kIsActiveProperty[] = "IsActive";
71 const char kModeProperty[] = "Mode";
72 const char kErrorProperty[] = "Error";
73 const char kProviderProperty[] = "Provider";
74 const char kHostProperty[] = "Host";
75 const char kDomainProperty[] = "Domain";
76 const char kProxyConfigProperty[] = "ProxyConfig";
77 const char kCheckPortalProperty[] = "CheckPortal";
78 const char kSSIDProperty[] = "SSID";
79 const char kConnectedProperty[] = "Connected";
80 const char kUIDataProperty[] = "UIData";
81 const char kConnectionIdProperty[] = "ConnectionId";
82 const char kVisibleProperty[] = "Visible";
83 const char kDnsAutoFallbackProperty[] = "DNSAutoFallback";
84 const char kPortalDetectionFailedPhaseProperty[] =
85     "PortalDetectionFailedPhase";
86 const char kPortalDetectionFailedStatusProperty[] =
87     "PortalDetectionFailedStatus";
88 const char kSavedIPConfigProperty[] = "SavedIPConfig";
89 const char kStaticIPConfigProperty[] = "StaticIPConfig";
90 const char kLinkMonitorDisableProperty[] = "LinkMonitorDisable";
91 const char kSecurityClassProperty[] = "SecurityClass";
92 
93 // Flimflam provider property names.
94 const char kProviderHostProperty[] = "Provider.Host";
95 const char kProviderNameProperty[] = "Provider.Name";
96 const char kProviderTypeProperty[] = "Provider.Type";
97 
98 // Flimflam Wifi Service property names.
99 const char kWifiBSsid[] = "WiFi.BSSID";
100 const char kWifiHexSsid[] = "WiFi.HexSSID";
101 const char kWifiFrequency[] = "WiFi.Frequency";
102 const char kWifiHiddenSsid[] = "WiFi.HiddenSSID";
103 const char kWifiPhyMode[] = "WiFi.PhyMode";
104 const char kWifiAuthMode[] = "WiFi.AuthMode";
105 const char kWifiChannelProperty[] = "WiFi.Channel";
106 const char kWifiPreferredDeviceProperty[] = "WiFi.PreferredDevice";
107 const char kWifiRoamThresholdProperty[] = "WiFi.RoamThreshold";
108 
109 // Flimflam EAP property names.
110 const char kEapIdentityProperty[] = "EAP.Identity";
111 const char kEapMethodProperty[] = "EAP.EAP";
112 const char kEapPhase2AuthProperty[] = "EAP.InnerEAP";
113 const char kEapAnonymousIdentityProperty[] = "EAP.AnonymousIdentity";
114 const char kEapClientCertProperty[] = "EAP.ClientCert";
115 const char kEapCertIdProperty[] = "EAP.CertID";
116 const char kEapClientCertNssProperty[] = "EAP.ClientCertNSS";
117 const char kEapPrivateKeyProperty[] = "EAP.PrivateKey";
118 const char kEapPrivateKeyPasswordProperty[] = "EAP.PrivateKeyPassword";
119 const char kEapKeyIdProperty[] = "EAP.KeyID";
120 const char kEapCaCertProperty[] = "EAP.CACert";
121 const char kEapCaCertIdProperty[] = "EAP.CACertID";
122 const char kEapCaCertNssProperty[] = "EAP.CACertNSS";
123 const char kEapUseSystemCasProperty[] = "EAP.UseSystemCAs";
124 const char kEapUseProactiveKeyCachingProperty[] = "EAP.UseProactiveKeyCaching";
125 const char kEapPinProperty[] = "EAP.PIN";
126 const char kEapPasswordProperty[] = "EAP.Password";
127 const char kEapKeyMgmtProperty[] = "EAP.KeyMgmt";
128 
129 // Flimflam Cellular Service property names.
130 const char kTechnologyFamilyProperty[] = "Cellular.Family";
131 const char kActivationStateProperty[] = "Cellular.ActivationState";
132 const char kNetworkTechnologyProperty[] = "Cellular.NetworkTechnology";
133 const char kRoamingStateProperty[] = "Cellular.RoamingState";
134 const char kOperatorNameProperty[] = "Cellular.OperatorName";
135 const char kOperatorCodeProperty[] = "Cellular.OperatorCode";
136 const char kServingOperatorProperty[] = "Cellular.ServingOperator";
137 const char kPaymentPortalProperty[] = "Cellular.Olp";
138 const char kUsageURLProperty[] = "Cellular.UsageUrl";
139 const char kCellularApnProperty[] = "Cellular.APN";
140 const char kCellularLastGoodApnProperty[] = "Cellular.LastGoodAPN";
141 const char kCellularApnListProperty[] = "Cellular.APNList";
142 
143 // Flimflam Manager property names.
144 const char kProfilesProperty[] = "Profiles";
145 const char kServicesProperty[] = "Services";
146 const char kServiceWatchListProperty[] = "ServiceWatchList";
147 const char kAvailableTechnologiesProperty[] = "AvailableTechnologies";
148 const char kEnabledTechnologiesProperty[] = "EnabledTechnologies";
149 const char kConnectedTechnologiesProperty[] = "ConnectedTechnologies";
150 const char kDefaultTechnologyProperty[] = "DefaultTechnology";
151 const char kOfflineModeProperty[] = "OfflineMode";
152 const char kActiveProfileProperty[] = "ActiveProfile";
153 const char kDevicesProperty[] = "Devices";
154 const char kCheckPortalListProperty[] = "CheckPortalList";
155 const char kArpGatewayProperty[] = "ArpGateway";
156 const char kCountryProperty[] = "Country";
157 const char kPortalURLProperty[] = "PortalURL";
158 const char kConnectionStateProperty[] = "ConnectionState";
159 const char kClaimedDevicesProperty[] = "ClaimedDevices";
160 
161 // Flimflam Profile property names.
162 const char kEntriesProperty[] = "Entries";
163 
164 // Flimflam Device property names.
165 const char kScanningProperty[] = "Scanning";
166 const char kPoweredProperty[] = "Powered";
167 const char kNetworksProperty[] = "Networks";
168 const char kScanIntervalProperty[] = "ScanInterval";
169 const char kBgscanMethodProperty[] = "BgscanMethod";
170 const char kBgscanShortIntervalProperty[] = "BgscanShortInterval";
171 const char kRoamThresholdProperty[] = "RoamThreshold";
172 const char kDBusObjectProperty[] = "DBus.Object";
173 const char kDBusServiceProperty[] = "DBus.Service";
174 const char kBgscanSignalThresholdProperty[] = "BgscanSignalThreshold";
175 const char kWakeToScanPeriodSecondsProperty[] = "WakeToScanPeriodSeconds";
176 const char kNetDetectScanPeriodSecondsProperty[] = "NetDetectScanPeriodSeconds";
177 const char kForceWakeToScanTimerProperty[] = "ForceWakeToScanTimer";
178 // The name of the network interface, ie. wlan0, eth0, etc.
179 const char kInterfaceProperty[] = "Interface";
180 const char kSelectedServiceProperty[] = "SelectedService";
181 const char kIPConfigsProperty[] = "IPConfigs";
182 const char kMACAddressRandomizationProperty[] = "MACAddressRandomization";
183 
184 // Flimflam Cellular Device property names.
185 const char kCarrierProperty[] = "Cellular.Carrier";
186 const char kCellularAllowRoamingProperty[] = "Cellular.AllowRoaming";
187 const char kHomeProviderProperty[] = "Cellular.HomeProvider";
188 const char kMeidProperty[] = "Cellular.MEID";
189 const char kImeiProperty[] = "Cellular.IMEI";
190 const char kIccidProperty[] = "Cellular.ICCID";
191 const char kImsiProperty[] = "Cellular.IMSI";
192 const char kEsnProperty[] = "Cellular.ESN";
193 const char kMdnProperty[] = "Cellular.MDN";
194 const char kMinProperty[] = "Cellular.MIN";
195 const char kModelIDProperty[] = "Cellular.ModelID";
196 const char kManufacturerProperty[] = "Cellular.Manufacturer";
197 const char kFirmwareRevisionProperty[] = "Cellular.FirmwareRevision";
198 const char kHardwareRevisionProperty[] = "Cellular.HardwareRevision";
199 const char kPRLVersionProperty[] = "Cellular.PRLVersion";
200 const char kSelectedNetworkProperty[] = "Cellular.SelectedNetwork";
201 const char kSupportNetworkScanProperty[] = "Cellular.SupportNetworkScan";
202 const char kFoundNetworksProperty[] = "Cellular.FoundNetworks";
203 
204 // Flimflam state options.
205 const char kStateIdle[] = "idle";
206 const char kStateCarrier[] = "carrier";
207 const char kStateAssociation[] = "association";
208 const char kStateConfiguration[] = "configuration";
209 const char kStateReady[] = "ready";
210 const char kStatePortal[] = "portal";
211 const char kStateOffline[] = "offline";
212 const char kStateOnline[] = "online";
213 const char kStateDisconnect[] = "disconnect";
214 const char kStateFailure[] = "failure";
215 const char kStateActivationFailure[] = "activation-failure";
216 
217 // Flimflam portal phase and status.
218 const char kPortalDetectionPhaseConnection[] = "Connection";
219 const char kPortalDetectionPhaseDns[] = "DNS";
220 const char kPortalDetectionPhaseHttp[] = "HTTP";
221 const char kPortalDetectionPhaseContent[] = "Content";
222 const char kPortalDetectionPhaseUnknown[] = "Unknown";
223 const char kPortalDetectionStatusFailure[] = "Failure";
224 const char kPortalDetectionStatusTimeout[] = "Timeout";
225 const char kPortalDetectionStatusSuccess[] = "Success";
226 
227 // Flimflam property names for SIMLock status.
228 const char kSIMLockStatusProperty[] = "Cellular.SIMLockStatus";
229 const char kSIMLockTypeProperty[] = "LockType";
230 const char kSIMLockRetriesLeftProperty[] = "RetriesLeft";
231 const char kSIMLockEnabledProperty[] = "LockEnabled";
232 
233 // Flimflam property names for Cellular.FoundNetworks.
234 const char kLongNameProperty[] = "long_name";
235 const char kStatusProperty[] = "status";
236 const char kShortNameProperty[] = "short_name";
237 const char kTechnologyProperty[] = "technology";
238 const char kNetworkIdProperty[] = "network_id";
239 
240 // Flimflam SIMLock status types.
241 const char kSIMLockPin[] = "sim-pin";
242 const char kSIMLockPuk[] = "sim-puk";
243 
244 // APN info property names.
245 const char kApnProperty[] = "apn";
246 const char kApnNetworkIdProperty[] = "network_id";
247 const char kApnUsernameProperty[] = "username";
248 const char kApnPasswordProperty[] = "password";
249 const char kApnNameProperty[] = "name";
250 const char kApnLocalizedNameProperty[] = "localized_name";
251 const char kApnLanguageProperty[] = "language";
252 
253 // Payment Portal property names.
254 const char kPaymentPortalURL[] = "url";
255 const char kPaymentPortalMethod[] = "method";
256 const char kPaymentPortalPostData[] = "postdata";
257 
258 // Operator info property names.
259 const char kOperatorNameKey[] = "name";
260 const char kOperatorCodeKey[] = "code";
261 const char kOperatorCountryKey[] = "country";
262 
263 // Flimflam network technology options.
264 const char kNetworkTechnology1Xrtt[] = "1xRTT";
265 const char kNetworkTechnologyEvdo[] = "EVDO";
266 const char kNetworkTechnologyGsm[] = "GSM";
267 const char kNetworkTechnologyGprs[] = "GPRS";
268 const char kNetworkTechnologyEdge[] = "EDGE";
269 const char kNetworkTechnologyUmts[] = "UMTS";
270 const char kNetworkTechnologyHspa[] = "HSPA";
271 const char kNetworkTechnologyHspaPlus[] = "HSPA+";
272 const char kNetworkTechnologyLte[] = "LTE";
273 const char kNetworkTechnologyLteAdvanced[] = "LTE Advanced";
274 
275 // Flimflam roaming state options
276 const char kRoamingStateHome[] = "home";
277 const char kRoamingStateRoaming[] = "roaming";
278 const char kRoamingStateUnknown[] = "unknown";
279 
280 // Flimflam activation state options
281 const char kActivationStateActivated[] = "activated";
282 const char kActivationStateActivating[] = "activating";
283 const char kActivationStateNotActivated[] = "not-activated";
284 const char kActivationStatePartiallyActivated[] = "partially-activated";
285 const char kActivationStateUnknown[] = "unknown";
286 
287 // Flimflam EAP method options.
288 const char kEapMethodPEAP[] = "PEAP";
289 const char kEapMethodTLS[] = "TLS";
290 const char kEapMethodTTLS[] = "TTLS";
291 const char kEapMethodLEAP[] = "LEAP";
292 
293 // Flimflam EAP phase 2 auth options.
294 const char kEapPhase2AuthPEAPMD5[] = "auth=MD5";
295 const char kEapPhase2AuthPEAPMSCHAPV2[] = "auth=MSCHAPV2";
296 const char kEapPhase2AuthPEAPGTC[] = "auth=GTC";
297 const char kEapPhase2AuthTTLSMD5[] = "autheap=MD5";  // crosbug/26822
298 const char kEapPhase2AuthTTLSEAPMD5[] = "autheap=MD5";
299 const char kEapPhase2AuthTTLSEAPMSCHAPV2[] = "autheap=MSCHAPV2";
300 const char kEapPhase2AuthTTLSMSCHAPV2[] = "auth=MSCHAPV2";
301 const char kEapPhase2AuthTTLSMSCHAP[] = "auth=MSCHAP";
302 const char kEapPhase2AuthTTLSPAP[] = "auth=PAP";
303 const char kEapPhase2AuthTTLSCHAP[] = "auth=CHAP";
304 const char kEapPhase2AuthTTLSGTC[] = "auth=GTC";
305 const char kEapPhase2AuthTTLSEAPGTC[] = "autheap=GTC";
306 
307 // Flimflam VPN provider types.
308 const char kProviderL2tpIpsec[] = "l2tpipsec";
309 const char kProviderOpenVpn[] = "openvpn";
310 const char kProviderThirdPartyVpn[] = "thirdpartyvpn";
311 
312 // Flimflam VPN service properties
313 const char kVPNDomainProperty[] = "VPN.Domain";
314 
315 // Flimflam monitored properties
316 const char kMonitorPropertyChanged[] = "PropertyChanged";
317 
318 // Flimflam type options.
319 const char kTypeEthernet[] = "ethernet";
320 const char kTypeWifi[] = "wifi";
321 const char kTypeWimax[] = "wimax";
322 const char kTypeBluetooth[] = "bluetooth";
323 const char kTypeCellular[] = "cellular";
324 const char kTypeVPN[] = "vpn";
325 const char kTypePPPoE[] = "pppoe";
326 
327 // Flimflam mode options.
328 const char kModeManaged[] = "managed";
329 const char kModeAdhoc[] = "adhoc";
330 
331 // Flimflam security options.
332 const char kSecurityWpa[] = "wpa";
333 const char kSecurityWep[] = "wep";
334 const char kSecurityRsn[] = "rsn";
335 const char kSecurity8021x[] = "802_1x";
336 const char kSecurityPsk[] = "psk";
337 const char kSecurityNone[] = "none";
338 
339 // Flimflam L2TPIPsec property names.
340 const char kL2tpIpsecAuthenticationType[] = "L2TPIPsec.AuthenticationType";
341 const char kL2tpIpsecCaCertNssProperty[] = "L2TPIPsec.CACertNSS";
342 const char kL2tpIpsecClientCertIdProperty[] = "L2TPIPsec.ClientCertID";
343 const char kL2tpIpsecClientCertSlotProperty[] = "L2TPIPsec.ClientCertSlot";
344 const char kL2tpIpsecIkeVersion[] = "L2TPIPsec.IKEVersion";
345 const char kL2tpIpsecPinProperty[] = "L2TPIPsec.PIN";
346 const char kL2tpIpsecPskProperty[] = "L2TPIPsec.PSK";
347 const char kL2tpIpsecPskRequiredProperty[] = "L2TPIPsec.PSKRequired";
348 const char kL2tpIpsecUserProperty[] = "L2TPIPsec.User";
349 const char kL2tpIpsecPasswordProperty[] = "L2TPIPsec.Password";
350 
351 // Flimflam OpenVPN property names.
352 const char kOpenVPNAuthNoCacheProperty[] = "OpenVPN.AuthNoCache";
353 const char kOpenVPNAuthProperty[] = "OpenVPN.Auth";
354 const char kOpenVPNAuthRetryProperty[] = "OpenVPN.AuthRetry";
355 const char kOpenVPNAuthUserPassProperty[] = "OpenVPN.AuthUserPass";
356 const char kOpenVPNCaCertProperty[] = "OpenVPN.CACert";
357 const char kOpenVPNCaCertNSSProperty[] = "OpenVPN.CACertNSS";
358 const char kOpenVPNClientCertIdProperty[] = "OpenVPN.Pkcs11.ID";
359 const char kOpenVPNClientCertSlotProperty[] = "OpenVPN.Pkcs11.Slot";
360 const char kOpenVPNCipherProperty[] = "OpenVPN.Cipher";
361 const char kOpenVPNCompLZOProperty[] = "OpenVPN.CompLZO";
362 const char kOpenVPNCompNoAdaptProperty[] = "OpenVPN.CompNoAdapt";
363 const char kOpenVPNIgnoreDefaultRouteProperty[] = "OpenVPN.IgnoreDefaultRoute";
364 const char kOpenVPNKeyDirectionProperty[] = "OpenVPN.KeyDirection";
365 const char kOpenVPNMgmtEnableProperty[] = "OpenVPN.Mgmt.Enable";
366 const char kOpenVPNNsCertTypeProperty[] = "OpenVPN.NsCertType";
367 const char kOpenVPNOTPProperty[] = "OpenVPN.OTP";
368 const char kOpenVPNPasswordProperty[] = "OpenVPN.Password";
369 const char kOpenVPNPinProperty[] = "OpenVPN.Pkcs11.PIN";
370 const char kOpenVPNPortProperty[] = "OpenVPN.Port";
371 const char kOpenVPNProtoProperty[] = "OpenVPN.Proto";
372 const char kOpenVPNProviderProperty[] = "OpenVPN.Pkcs11.Provider";
373 const char kOpenVPNPushPeerInfoProperty[] = "OpenVPN.PushPeerInfo";
374 const char kOpenVPNRemoteCertEKUProperty[] = "OpenVPN.RemoteCertEKU";
375 const char kOpenVPNRemoteCertKUProperty[] = "OpenVPN.RemoteCertKU";
376 const char kOpenVPNRemoteCertTLSProperty[] = "OpenVPN.RemoteCertTLS";
377 const char kOpenVPNRenegSecProperty[] = "OpenVPN.RenegSec";
378 const char kOpenVPNServerPollTimeoutProperty[] = "OpenVPN.ServerPollTimeout";
379 const char kOpenVPNShaperProperty[] = "OpenVPN.Shaper";
380 const char kOpenVPNStaticChallengeProperty[] = "OpenVPN.StaticChallenge";
381 const char kOpenVPNTLSAuthContentsProperty[] = "OpenVPN.TLSAuthContents";
382 const char kOpenVPNTLSRemoteProperty[] = "OpenVPN.TLSRemote";
383 const char kOpenVPNUserProperty[] = "OpenVPN.User";
384 
385 // FlimFlam PPPoE property names.
386 const char kPPPoEUsernameProperty[] = "PPPoE.Username";
387 const char kPPPoEPasswordProperty[] = "PPPoE.Password";
388 const char kPPPoELCPEchoIntervalProperty[] = "PPPoE.LCPEchoInterval";
389 const char kPPPoELCPEchoFailureProperty[] = "PPPoE.LCPEchoFailure";
390 const char kPPPoEMaxAuthFailureProperty[] = "PPPoE.MaxAuthFailure";
391 
392 // FlimFlam technology family options
393 const char kTechnologyFamilyCdma[] = "CDMA";
394 const char kTechnologyFamilyGsm[] = "GSM";
395 
396 // IPConfig property names.
397 const char kMethodProperty[] = "Method";
398 const char kAddressProperty[] = "Address";
399 const char kMtuProperty[] = "Mtu";
400 const char kPrefixlenProperty[] = "Prefixlen";
401 const char kBroadcastProperty[] = "Broadcast";
402 const char kPeerAddressProperty[] = "PeerAddress";
403 const char kGatewayProperty[] = "Gateway";
404 const char kDomainNameProperty[] = "DomainName";
405 const char kAcceptedHostnameProperty[] = "AcceptedHostname";
406 const char kNameServersProperty[] = "NameServers";
407 const char kDhcpv6AddressesProperty[] = "Dhcpv6Addresses";
408 const char kDhcpv6DelegatedPrefixesProperty[] = "Dhcpv6DelegatedPrefixes";
409 const char kLeaseDurationSecondsProperty[] = "LeaseDurationSeconds";
410 
411 // These constants are deprecated in favor of kDhcpv6DelegatedPrefixesProperty.
412 // TODO(tjennison): Remove when shill no longer uses them b/26778228
413 const char kDelegatedPrefixProperty[] = "DelegatedPrefix";
414 const char kDelegatedPrefixLengthProperty[] = "DelegatedPrefixLength";
415 
416 // IPConfig DHCPv6 address/prefix property names.
417 const char kDhcpv6AddressProperty[] = "Address";
418 const char kDhcpv6LengthProperty[] = "Length";
419 const char kDhcpv6LeaseDurationSecondsProperty[] = "LeaseDurationSeconds";
420 const char kDhcpv6PreferredLeaseDurationSecondsProperty[] =
421     "PreferredLeaseDurationSeconds";
422 
423 // IPConfig type options.
424 const char kTypeIPv4[] = "ipv4";
425 const char kTypeIPv6[] = "ipv6";
426 const char kTypeDHCP[] = "dhcp";
427 const char kTypeBOOTP[] = "bootp";
428 const char kTypeZeroConf[] = "zeroconf";
429 const char kTypeDHCP6[] = "dhcp6";
430 const char kTypePPP[] = "ppp";
431 
432 // Flimflam error options.
433 const char kErrorAaaFailed[] = "aaa-failed";
434 const char kErrorActivationFailed[] = "activation-failed";
435 const char kErrorBadPassphrase[] = "bad-passphrase";
436 const char kErrorBadWEPKey[] = "bad-wepkey";
437 const char kErrorConnectFailed[] = "connect-failed";
438 const char kErrorDNSLookupFailed[] = "dns-lookup-failed";
439 const char kErrorDhcpFailed[] = "dhcp-failed";
440 const char kErrorHTTPGetFailed[] = "http-get-failed";
441 const char kErrorInternal[] = "internal-error";
442 const char kErrorInvalidFailure[] = "invalid-failure";
443 const char kErrorIpsecCertAuthFailed[] = "ipsec-cert-auth-failed";
444 const char kErrorIpsecPskAuthFailed[] = "ipsec-psk-auth-failed";
445 const char kErrorNeedEvdo[] = "need-evdo";
446 const char kErrorNeedHomeNetwork[] = "need-home-network";
447 const char kErrorNoFailure[] = "no-failure";
448 const char kErrorOtaspFailed[] = "otasp-failed";
449 const char kErrorOutOfRange[] = "out-of-range";
450 const char kErrorPinMissing[] = "pin-missing";
451 const char kErrorPppAuthFailed[] = "ppp-auth-failed";
452 const char kErrorUnknownFailure[] = "unknown-failure";
453 
454 // Flimflam error result codes.
455 const char kErrorResultSuccess[] = "org.chromium.flimflam.Error.Success";
456 const char kErrorResultFailure[] = "org.chromium.flimflam.Error.Failure";
457 const char kErrorResultAlreadyConnected[] =
458     "org.chromium.flimflam.Error.AlreadyConnected";
459 const char kErrorResultAlreadyExists[] =
460     "org.chromium.flimflam.Error.AlreadyExists";
461 const char kErrorResultIncorrectPin[] =
462      "org.chromium.flimflam.Error.IncorrectPin";
463 const char kErrorResultInProgress[] = "org.chromium.flimflam.Error.InProgress";
464 const char kErrorResultInternalError[] =
465     "org.chromium.flimflam.Error.InternalError";
466 const char kErrorResultInvalidApn[] = "org.chromium.flimflam.Error.InvalidApn";
467 const char kErrorResultInvalidArguments[] =
468     "org.chromium.flimflam.Error.InvalidArguments";
469 const char kErrorResultInvalidNetworkName[] =
470     "org.chromium.flimflam.Error.InvalidNetworkName";
471 const char kErrorResultInvalidPassphrase[] =
472     "org.chromium.flimflam.Error.InvalidPassphrase";
473 const char kErrorResultInvalidProperty[] =
474     "org.chromium.flimflam.Error.InvalidProperty";
475 const char kErrorResultNoCarrier[] = "org.chromium.flimflam.Error.NoCarrier";
476 const char kErrorResultNotConnected[] =
477      "org.chromium.flimflam.Error.NotConnected";
478 const char kErrorResultNotFound[] = "org.chromium.flimflam.Error.NotFound";
479 const char kErrorResultNotImplemented[] =
480     "org.chromium.flimflam.Error.NotImplemented";
481 const char kErrorResultNotOnHomeNetwork[] =
482     "org.chromium.flimflam.Error.NotOnHomeNetwork";
483 const char kErrorResultNotRegistered[] =
484     "org.chromium.flimflam.Error.NotRegistered";
485 const char kErrorResultNotSupported[] =
486      "org.chromium.flimflam.Error.NotSupported";
487 const char kErrorResultOperationAborted[] =
488     "org.chromium.flimflam.Error.OperationAborted";
489 const char kErrorResultOperationInitiated[] =
490     "org.chromium.flimflam.Error.OperationInitiated";
491 const char kErrorResultOperationTimeout[] =
492     "org.chromium.flimflam.Error.OperationTimeout";
493 const char kErrorResultPassphraseRequired[] =
494     "org.chromium.flimflam.Error.PassphraseRequired";
495 const char kErrorResultPermissionDenied[] =
496     "org.chromium.flimflam.Error.PermissionDenied";
497 const char kErrorResultPinBlocked[] = "org.chromium.flimflam.Error.PinBlocked";
498 const char kErrorResultPinRequired[] =
499      "org.chromium.flimflam.Error.PinRequired";
500 const char kErrorResultWrongState[] = "org.chromium.flimflam.Error.WrongState";
501 
502 const char kUnknownString[] = "UNKNOWN";
503 
504 // Function names.
505 const char kClearPropertiesFunction[] = "ClearProperties";
506 const char kCompleteCellularActivationFunction[] = "CompleteCellularActivation";
507 const char kConfigureServiceForProfileFunction[] = "ConfigureServiceForProfile";
508 const char kConnectToBestServicesFunction[] = "ConnectToBestServices";
509 const char kCreateConnectivityReportFunction[] = "CreateConnectivityReport";
510 const char kAddWakeOnPacketConnectionFunction[] = "AddWakeOnPacketConnection";
511 const char kRemoveWakeOnPacketConnectionFunction[] =
512     "RemoveWakeOnPacketConnection";
513 const char kRemoveAllWakeOnPacketConnectionsFunction[] =
514     "RemoveAllWakeOnPacketConnections";
515 const char kGetLoadableProfileEntriesFunction[] = "GetLoadableProfileEntries";
516 const char kGetNetworksForGeolocation[] = "GetNetworksForGeolocation";
517 const char kPerformTDLSOperationFunction[] = "PerformTDLSOperation";
518 const char kRefreshFunction[] = "Refresh";
519 const char kResetFunction[] = "Reset";
520 const char kSetCarrierFunction[] = "SetCarrier";
521 const char kSetPropertiesFunction[] = "SetProperties";
522 const char kVerifyAndEncryptCredentialsFunction[] =
523     "VerifyAndEncryptCredentials";
524 const char kVerifyAndEncryptDataFunction[] = "VerifyAndEncryptData";
525 const char kVerifyDestinationFunction[] = "VerifyDestination";
526 
527 // ThirdPartyVpn functions.
528 const char kSetParametersFunction[] = "SetParameters";
529 const char kSendPacketFunction[] = "SendPacket";
530 const char kUpdateConnectionStateFunction[] = "UpdateConnectionState";
531 const char kOnPacketReceivedFunction[] = "OnPacketReceived";
532 const char kOnPlatformMessageFunction[] = "OnPlatformMessage";
533 
534 // Device property names.
535 const char kEapAuthenticationCompletedProperty[] = "EapAuthenticationCompleted";
536 const char kEapAuthenticatorDetectedProperty[] = "EapAuthenticatorDetected";
537 const char kLinkMonitorResponseTimeProperty[] = "LinkMonitorResponseTime";
538 const char kLinkUpProperty[] = "Ethernet.LinkUp";
539 const char kProviderRequiresRoamingProperty[] =
540     "Cellular.ProviderRequiresRoaming";
541 const char kPPPoEProperty[] = "Ethernet.PPPoE";
542 const char kReceiveByteCountProperty[] = "ReceiveByteCount";
543 const char kSIMPresentProperty[] = "Cellular.SIMPresent";
544 const char kSupportedCarriersProperty[] = "Cellular.SupportedCarriers";
545 const char kTransmitByteCountProperty[] = "TransmitByteCount";
546 const char kWifiSupportedFrequenciesProperty[] = "WiFi.SupportedFrequencies";
547 
548 // Technology types (augments "Flimflam type options" above).
549 const char kTypeEthernetEap[] = "etherneteap";
550 
551 // Error strings.
552 const char kErrorEapAuthenticationFailed[] = "eap-authentication-failed";
553 const char kErrorEapLocalTlsFailed[] = "eap-local-tls-failed";
554 const char kErrorEapRemoteTlsFailed[] = "eap-remote-tls-failed";
555 
556 // IPConfig property names.
557 const char kSearchDomainsProperty[] = "SearchDomains";
558 const char kVendorEncapsulatedOptionsProperty[] = "VendorEncapsulatedOptions";
559 const char kWebProxyAutoDiscoveryUrlProperty[] = "WebProxyAutoDiscoveryUrl";
560 // DHCP Option for iSNS (RFC 4174)
561 const char kiSNSOptionDataProperty[] = "iSNSOptionData";
562 
563 // Manager property names.
564 const char kDefaultServiceProperty[] = "DefaultService";
565 const char kDisableWiFiVHTProperty[] = "DisableWiFiVHT";
566 const char kHostNameProperty[] = "HostName";
567 const char kIgnoredDNSSearchPathsProperty[] = "IgnoredDNSSearchPaths";
568 const char kLinkMonitorTechnologiesProperty[] =
569     "LinkMonitorTechnologies";
570 const char kNoAutoConnectTechnologiesProperty[] = "NoAutoConnectTechnologies";
571 const char kPortalCheckIntervalProperty[] = "PortalCheckInterval";
572 const char kProhibitedTechnologiesProperty[] = "ProhibitedTechnologies";
573 const char kServiceCompleteListProperty[] = "ServiceCompleteList";
574 const char kShortDNSTimeoutTechnologiesProperty[] =
575     "ShortDNSTimeoutTechnologies";
576 const char kUninitializedTechnologiesProperty[] = "UninitializedTechnologies";
577 const char kWakeOnLanEnabledProperty[] = "WakeOnLanEnabled";
578 const char kWakeOnWiFiFeaturesEnabledProperty[] = "WakeOnWiFiFeaturesEnabled";
579 
580 // Service property names.
581 const char kActivationTypeProperty[] = "Cellular.ActivationType";
582 const char kDiagnosticsDisconnectsProperty[] = "Diagnostics.Disconnects";
583 const char kDiagnosticsMisconnectsProperty[] = "Diagnostics.Misconnects";
584 const char kEapRemoteCertificationProperty[] = "EAP.RemoteCertification";
585 const char kEapCaCertPemProperty[] = "EAP.CACertPEM";
586 const char kEapSubjectMatchProperty[] = "EAP.SubjectMatch";
587 const char kErrorDetailsProperty[] = "ErrorDetails";
588 const char kKeyManagementIEEE8021X[] = "IEEE8021X";
589 const char kIPConfigProperty[] = "IPConfig";
590 const char kL2tpIpsecCaCertPemProperty[] = "L2TPIPsec.CACertPEM";
591 const char kL2tpIpsecTunnelGroupProperty[] = "L2TPIPsec.TunnelGroup";
592 const char kL2tpIpsecXauthPasswordProperty[] = "L2TPIPsec.XauthPassword";
593 const char kL2tpIpsecXauthUserProperty[] = "L2TPIPsec.XauthUser";
594 const char kL2tpIpsecLcpEchoDisabledProperty[] = "L2TPIPsec.LCPEchoDisabled";
595 const char kManagedCredentialsProperty[] = "ManagedCredentials";
596 const char kOpenVPNCaCertPemProperty[] = "OpenVPN.CACertPEM";
597 const char kOpenVPNCertProperty[] = "OpenVPN.Cert";
598 const char kOpenVPNExtraCertPemProperty[] = "OpenVPN.ExtraCertPEM";
599 const char kOpenVPNKeyProperty[] = "OpenVPN.Key";
600 const char kOpenVPNPingProperty[] = "OpenVPN.Ping";
601 const char kOpenVPNPingExitProperty[] = "OpenVPN.PingExit";
602 const char kOpenVPNPingRestartProperty[] = "OpenVPN.PingRestart";
603 const char kOpenVPNTLSAuthProperty[] = "OpenVPN.TLSAuth";
604 const char kOpenVPNTokenProperty[] = "OpenVPN.Token";
605 const char kOpenVPNVerbProperty[] = "OpenVPN.Verb";
606 const char kOpenVPNVerifyHashProperty[] = "OpenVPN.VerifyHash";
607 const char kOpenVPNVerifyX509NameProperty[] = "OpenVPN.VerifyX509Name";
608 const char kOpenVPNVerifyX509TypeProperty[] = "OpenVPN.VerifyX509Type";
609 const char kOutOfCreditsProperty[] = "Cellular.OutOfCredits";
610 const char kPhysicalTechnologyProperty[] = "PhysicalTechnology";
611 const char kPreviousErrorProperty[] = "PreviousError";
612 const char kPreviousErrorSerialNumberProperty[] = "PreviousErrorSerialNumber";
613 const char kStaticIPAddressProperty[] = "StaticIP.Address";
614 const char kStaticIPGatewayProperty[] = "StaticIP.Gateway";
615 const char kStaticIPMtuProperty[] = "StaticIP.Mtu";
616 const char kStaticIPNameServersProperty[] = "StaticIP.NameServers";
617 const char kStaticIPPeerAddressProperty[] = "StaticIP.PeerAddress";
618 const char kStaticIPPrefixlenProperty[] = "StaticIP.Prefixlen";
619 const char kSavedIPAddressProperty[] = "SavedIP.Address";
620 const char kSavedIPGatewayProperty[] = "SavedIP.Gateway";
621 const char kSavedIPMtuProperty[] = "SavedIP.Mtu";
622 const char kSavedIPNameServersProperty[] = "SavedIP.NameServers";
623 const char kSavedIPPeerAddressProperty[] = "SavedIP.PeerAddress";
624 const char kSavedIPPrefixlenProperty[] = "SavedIP.Prefixlen";
625 const char kTetheringProperty[] = "Tethering";
626 const char kVPNMTUProperty[] = "VPN.MTU";
627 const char kWifiFrequencyListProperty[] = "WiFi.FrequencyList";
628 const char kWifiVendorInformationProperty[] = "WiFi.VendorInformation";
629 const char kWifiProtectedManagementFrameRequiredProperty[] =
630     "WiFi.ProtectedManagementFrameRequired";
631 
632 // Profile property names.
633 const char kUserHashProperty[] = "UserHash";
634 
635 // Service Tethering property values.
636 const char kTetheringNotDetectedState[] = "NotDetected";
637 const char kTetheringSuspectedState[] = "Suspected";
638 const char kTetheringConfirmedState[] = "Confirmed";
639 
640 // WiFi Service Vendor Information dictionary properties.
641 const char kVendorWPSManufacturerProperty[] = "Manufacturer";
642 const char kVendorWPSModelNameProperty[] = "ModelName";
643 const char kVendorWPSModelNumberProperty[] = "ModelNumber";
644 const char kVendorWPSDeviceNameProperty[] = "DeviceName";
645 const char kVendorOUIListProperty[] = "OUIList";
646 
647 // WiFi Device link property names.
648 const char kLinkStatisticsProperty[] = "LinkStatistics";
649 const char kAverageReceiveSignalDbmProperty[] = "AverageReceiveSignalDbm";
650 const char kInactiveTimeMillisecondsProperty[] =
651     "InactiveTimeMilliseconds";
652 const char kLastReceiveSignalDbmProperty[] = "LastReceiveSignalDbm";
653 const char kPacketReceiveSuccessesProperty[] = "PacketReceiveSuccesses";
654 const char kPacketTransmitFailuresProperty[] = "PacketTransmitFailures";
655 const char kPacketTransmitSuccessesProperty[] = "PacketTrasmitSuccesses";
656 const char kTransmitBitrateProperty[] = "TransmitBitrate";
657 const char kTransmitRetriesProperty[] = "TransmitRetries";
658 
659 // WiFi TDLS operations.
660 const char kTDLSDiscoverOperation[] = "Discover";
661 const char kTDLSSetupOperation[] = "Setup";
662 const char kTDLSStatusOperation[] = "Status";
663 const char kTDLSTeardownOperation[] = "Teardown";
664 
665 // WiFi TDLS states.
666 const char kTDLSConnectedState[] = "Connected";
667 const char kTDLSDisabledState[] = "Disabled";
668 const char kTDLSDisconnectedState[] = "Disconnected";
669 const char kTDLSNonexistentState[] = "Nonexistent";
670 const char kTDLSUnknownState[] = "Unknown";
671 
672 // Wake on WiFi features.
673 const char kWakeOnWiFiFeaturesEnabledPacket[] = "packet";
674 const char kWakeOnWiFiFeaturesEnabledDarkConnect[] = "darkconnect";
675 const char kWakeOnWiFiFeaturesEnabledPacketDarkConnect[] =
676     "packet_and_darkconnect";
677 const char kWakeOnWiFiFeaturesEnabledNone[] = "none";
678 const char kWakeOnWiFiFeaturesEnabledNotSupported[] = "not_supported";
679 
680 // Cellular service carriers.
681 const char kCarrierGenericUMTS[] = "Generic UMTS";
682 const char kCarrierSprint[] = "Sprint";
683 const char kCarrierVerizon[] = "Verizon Wireless";
684 
685 // Cellular activation types.
686 const char kActivationTypeNonCellular[] = "NonCellular";  // For future use
687 const char kActivationTypeOMADM[] = "OMADM";  // For future use
688 const char kActivationTypeOTA[] = "OTA";
689 const char kActivationTypeOTASP[] = "OTASP";
690 
691 // Geolocation property field names.
692 // Reference:
693 //    https://devsite.googleplex.com/maps/documentation/business/geolocation/
694 // Top level properties for a Geolocation request.
695 const char kGeoHomeMobileCountryCodeProperty[] = "homeMobileCountryCode";
696 const char kGeoHomeMobileNetworkCodeProperty[] = "homeMobileNetworkCode";
697 const char kGeoRadioTypePropertyProperty[] = "radioType";
698 const char kGeoCellTowersProperty[] = "cellTowers";
699 const char kGeoWifiAccessPointsProperty[] = "wifiAccessPoints";
700 // Cell tower object property names.
701 const char kGeoCellIdProperty[] = "cellId";
702 const char kGeoLocationAreaCodeProperty[] = "locationAreaCode";
703 const char kGeoMobileCountryCodeProperty[] = "mobileCountryCode";
704 const char kGeoMobileNetworkCodeProperty[] = "mobileNetworkCode";
705 const char kGeoTimingAdvanceProperty[] = "timingAdvance";
706 // WiFi access point property names.
707 const char kGeoMacAddressProperty[] = "macAddress";
708 const char kGeoChannelProperty[] = "channel";
709 const char kGeoSignalToNoiseRatioProperty[] = "signalToNoiseRatio";
710 // Common property names for geolocation objects.
711 const char kGeoAgeProperty[] = "age";
712 const char kGeoSignalStrengthProperty[] = "signalStrength";
713 // ThirdPartyVpn parameters, properties and constants.
714 const char kAddressParameterThirdPartyVpn[] = "address";
715 const char kBroadcastAddressParameterThirdPartyVpn[] = "broadcast_address";
716 const char kGatewayParameterThirdPartyVpn[] = "gateway";
717 const char kBypassTunnelForIpParameterThirdPartyVpn[] = "bypass_tunnel_for_ip";
718 const char kSubnetPrefixParameterThirdPartyVpn[] = "subnet_prefix";
719 const char kMtuParameterThirdPartyVpn[] = "mtu";
720 const char kDomainSearchParameterThirdPartyVpn[] = "domain_search";
721 const char kDnsServersParameterThirdPartyVpn[] = "dns_servers";
722 const char kInclusionListParameterThirdPartyVpn[] = "inclusion_list";
723 const char kExclusionListParameterThirdPartyVpn[] = "exclusion_list";
724 const char kReconnectParameterThirdPartyVpn[] = "reconnect";
725 const char kObjectPathSuffixProperty[] = "ObjectPathSuffix";
726 const char kExtensionNameProperty[] = "ExtensionName";
727 const char kConfigurationNameProperty[] = "ConfigurationName";
728 const char kObjectPathBase[] = "/thirdpartyvpn/";
729 const char kNonIPDelimiter = ':';
730 const char kIPDelimiter = ' ';
731 }  // namespace shill
732 
733 #endif  // SYSTEM_API_DBUS_SHILL_DBUS_CONSTANTS_H_
734