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