OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012 The Chromium 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 CHROME_BROWSER_CHROMEOS_CROS_NETWORK_CONSTANTS_H_ | |
6 #define CHROME_BROWSER_CHROMEOS_CROS_NETWORK_CONSTANTS_H_ | |
7 | |
8 namespace chromeos { | |
9 | |
10 // This enumerates the various property indices that can be found in a | |
11 // dictionary being parsed. | |
12 enum PropertyIndex { | |
13 PROPERTY_INDEX_ACTIVATE_OVER_NON_CELLULAR_NETWORK, | |
14 PROPERTY_INDEX_ACTIVATION_STATE, | |
15 PROPERTY_INDEX_ACTIVE_PROFILE, | |
16 PROPERTY_INDEX_ARP_GATEWAY, | |
17 PROPERTY_INDEX_AUTHENTICATION, | |
18 PROPERTY_INDEX_AUTO_CONNECT, | |
19 PROPERTY_INDEX_AVAILABLE_TECHNOLOGIES, | |
20 PROPERTY_INDEX_CARRIER, | |
21 PROPERTY_INDEX_CELLULAR_ALLOW_ROAMING, | |
22 PROPERTY_INDEX_CELLULAR_APN, | |
23 PROPERTY_INDEX_CELLULAR_APN_LIST, | |
24 PROPERTY_INDEX_CELLULAR_LAST_GOOD_APN, | |
25 PROPERTY_INDEX_CHECK_PORTAL, | |
26 PROPERTY_INDEX_CHECK_PORTAL_LIST, | |
27 PROPERTY_INDEX_CONNECTABLE, | |
28 PROPERTY_INDEX_CONNECTED_TECHNOLOGIES, | |
29 PROPERTY_INDEX_CONNECTIVITY_STATE, | |
30 PROPERTY_INDEX_DEFAULT_TECHNOLOGY, | |
31 PROPERTY_INDEX_DEVICE, | |
32 PROPERTY_INDEX_DEVICES, | |
33 PROPERTY_INDEX_EAP, | |
34 PROPERTY_INDEX_EAP_ANONYMOUS_IDENTITY, | |
35 PROPERTY_INDEX_EAP_CA_CERT_ID, | |
36 PROPERTY_INDEX_EAP_CA_CERT_PEM, | |
37 PROPERTY_INDEX_EAP_CERT_ID, | |
38 PROPERTY_INDEX_EAP_CLIENT_CERT, | |
39 PROPERTY_INDEX_EAP_CLIENT_CERT_NSS, | |
40 PROPERTY_INDEX_EAP_CLIENT_CERT_PATTERN, | |
41 PROPERTY_INDEX_EAP_IDENTITY, | |
42 PROPERTY_INDEX_EAP_KEY_ID, | |
43 PROPERTY_INDEX_EAP_KEY_MGMT, | |
44 PROPERTY_INDEX_EAP_METHOD, | |
45 PROPERTY_INDEX_EAP_PASSWORD, | |
46 PROPERTY_INDEX_EAP_PHASE_2_AUTH, | |
47 PROPERTY_INDEX_EAP_PIN, | |
48 PROPERTY_INDEX_EAP_PRIVATE_KEY, | |
49 PROPERTY_INDEX_EAP_PRIVATE_KEY_PASSWORD, | |
50 PROPERTY_INDEX_EAP_USE_SYSTEM_CAS, | |
51 PROPERTY_INDEX_ENABLED_TECHNOLOGIES, | |
52 PROPERTY_INDEX_ERROR, | |
53 PROPERTY_INDEX_ESN, | |
54 PROPERTY_INDEX_FAVORITE, | |
55 PROPERTY_INDEX_FIRMWARE_REVISION, | |
56 PROPERTY_INDEX_FOUND_NETWORKS, | |
57 PROPERTY_INDEX_GUID, | |
58 PROPERTY_INDEX_HARDWARE_REVISION, | |
59 PROPERTY_INDEX_HOME_PROVIDER, | |
60 PROPERTY_INDEX_HOST, | |
61 PROPERTY_INDEX_ICCID, | |
62 PROPERTY_INDEX_IDENTITY, | |
63 PROPERTY_INDEX_IMEI, | |
64 PROPERTY_INDEX_IMSI, | |
65 PROPERTY_INDEX_IPSEC_AUTHENTICATIONTYPE, | |
66 PROPERTY_INDEX_IPSEC_IKEVERSION, | |
67 PROPERTY_INDEX_ISSUER_SUBJECT_PATTERN_COMMON_NAME, | |
68 PROPERTY_INDEX_ISSUER_SUBJECT_PATTERN_LOCALITY, | |
69 PROPERTY_INDEX_ISSUER_SUBJECT_PATTERN_ORGANIZATION, | |
70 PROPERTY_INDEX_ISSUER_SUBJECT_PATTERN_ORGANIZATIONAL_UNIT, | |
71 PROPERTY_INDEX_IS_ACTIVE, | |
72 PROPERTY_INDEX_L2TPIPSEC_CA_CERT_PEM, | |
73 PROPERTY_INDEX_L2TPIPSEC_CLIENT_CERT_ID, | |
74 PROPERTY_INDEX_L2TPIPSEC_CLIENT_CERT_SLOT, | |
75 PROPERTY_INDEX_L2TPIPSEC_GROUP_NAME, | |
76 PROPERTY_INDEX_L2TPIPSEC_PASSWORD, | |
77 PROPERTY_INDEX_L2TPIPSEC_PIN, | |
78 PROPERTY_INDEX_L2TPIPSEC_PSK, | |
79 PROPERTY_INDEX_L2TPIPSEC_PSK_REQUIRED, | |
80 PROPERTY_INDEX_L2TPIPSEC_USER, | |
81 PROPERTY_INDEX_MANUFACTURER, | |
82 PROPERTY_INDEX_MDN, | |
83 PROPERTY_INDEX_MEID, | |
84 PROPERTY_INDEX_MIN, | |
85 PROPERTY_INDEX_MODEL_ID, | |
86 PROPERTY_INDEX_NAME, | |
87 PROPERTY_INDEX_NETWORKS, | |
88 PROPERTY_INDEX_NETWORK_TECHNOLOGY, | |
89 PROPERTY_INDEX_OFFLINE_MODE, | |
90 PROPERTY_INDEX_OLP, | |
91 PROPERTY_INDEX_OLP_URL, | |
92 PROPERTY_INDEX_OPEN_VPN_AUTH, | |
93 PROPERTY_INDEX_OPEN_VPN_AUTHNOCACHE, | |
94 PROPERTY_INDEX_OPEN_VPN_AUTHRETRY, | |
95 PROPERTY_INDEX_OPEN_VPN_AUTHUSERPASS, | |
96 PROPERTY_INDEX_OPEN_VPN_CA_CERT_PEM, | |
97 PROPERTY_INDEX_OPEN_VPN_CERT, | |
98 PROPERTY_INDEX_OPEN_VPN_CIPHER, | |
99 PROPERTY_INDEX_OPEN_VPN_CLIENT_CERT_ID, | |
100 PROPERTY_INDEX_OPEN_VPN_CLIENT_CERT_SLOT, | |
101 PROPERTY_INDEX_OPEN_VPN_COMPLZO, | |
102 PROPERTY_INDEX_OPEN_VPN_COMPNOADAPT, | |
103 PROPERTY_INDEX_OPEN_VPN_KEYDIRECTION, | |
104 PROPERTY_INDEX_OPEN_VPN_MGMT_ENABLE, | |
105 PROPERTY_INDEX_OPEN_VPN_NSCERTTYPE, | |
106 PROPERTY_INDEX_OPEN_VPN_OTP, | |
107 PROPERTY_INDEX_OPEN_VPN_PASSWORD, | |
108 PROPERTY_INDEX_OPEN_VPN_PIN, | |
109 PROPERTY_INDEX_OPEN_VPN_PKCS11_PROVIDER, | |
110 PROPERTY_INDEX_OPEN_VPN_PORT, | |
111 PROPERTY_INDEX_OPEN_VPN_PROTO, | |
112 PROPERTY_INDEX_OPEN_VPN_PUSHPEERINFO, | |
113 PROPERTY_INDEX_OPEN_VPN_REMOTECERTEKU, | |
114 PROPERTY_INDEX_OPEN_VPN_REMOTECERTKU, | |
115 PROPERTY_INDEX_OPEN_VPN_REMOTECERTTLS, | |
116 PROPERTY_INDEX_OPEN_VPN_RENEGSEC, | |
117 PROPERTY_INDEX_OPEN_VPN_SERVERPOLLTIMEOUT, | |
118 PROPERTY_INDEX_OPEN_VPN_SHAPER, | |
119 PROPERTY_INDEX_OPEN_VPN_STATICCHALLENGE, | |
120 PROPERTY_INDEX_OPEN_VPN_TLSAUTHCONTENTS, | |
121 PROPERTY_INDEX_OPEN_VPN_TLSREMOTE, | |
122 PROPERTY_INDEX_OPEN_VPN_USER, | |
123 PROPERTY_INDEX_OPERATOR_CODE, | |
124 PROPERTY_INDEX_OPERATOR_NAME, | |
125 PROPERTY_INDEX_OUT_OF_CREDITS, | |
126 PROPERTY_INDEX_PASSPHRASE, | |
127 PROPERTY_INDEX_PASSPHRASE_REQUIRED, | |
128 PROPERTY_INDEX_PORTAL_URL, | |
129 PROPERTY_INDEX_POWERED, | |
130 PROPERTY_INDEX_PRIORITY, | |
131 PROPERTY_INDEX_PRL_VERSION, | |
132 PROPERTY_INDEX_PROFILE, | |
133 PROPERTY_INDEX_PROFILES, | |
134 PROPERTY_INDEX_PROVIDER, | |
135 PROPERTY_INDEX_PROVIDER_HOST, | |
136 PROPERTY_INDEX_PROVIDER_REQUIRES_ROAMING, | |
137 PROPERTY_INDEX_PROVIDER_TYPE, | |
138 PROPERTY_INDEX_ROAMING_STATE, | |
139 PROPERTY_INDEX_SAVE_CREDENTIALS, | |
140 PROPERTY_INDEX_SCANNING, | |
141 PROPERTY_INDEX_SECURITY, | |
142 PROPERTY_INDEX_SELECTED_NETWORK, | |
143 PROPERTY_INDEX_SERVICES, | |
144 PROPERTY_INDEX_SERVICE_WATCH_LIST, | |
145 PROPERTY_INDEX_SERVING_OPERATOR, | |
146 PROPERTY_INDEX_SIGNAL_STRENGTH, | |
147 PROPERTY_INDEX_SIM_LOCK, | |
148 PROPERTY_INDEX_SIM_PRESENT, | |
149 PROPERTY_INDEX_SSID, | |
150 PROPERTY_INDEX_STATE, | |
151 PROPERTY_INDEX_SUPPORT_NETWORK_SCAN, | |
152 PROPERTY_INDEX_SUPPORTED_CARRIERS, | |
153 PROPERTY_INDEX_TECHNOLOGY_FAMILY, | |
154 PROPERTY_INDEX_TYPE, | |
155 PROPERTY_INDEX_UI_DATA, | |
156 PROPERTY_INDEX_UNINITIALIZED_TECHNOLOGIES, | |
157 PROPERTY_INDEX_UNKNOWN, | |
158 PROPERTY_INDEX_USAGE_URL, | |
159 PROPERTY_INDEX_VPN_DOMAIN, | |
160 PROPERTY_INDEX_WIFI_AUTH_MODE, | |
161 PROPERTY_INDEX_WIFI_BSSID, | |
162 PROPERTY_INDEX_WIFI_FREQUENCY, | |
163 PROPERTY_INDEX_WIFI_HEX_SSID, | |
164 PROPERTY_INDEX_WIFI_HIDDEN_SSID, | |
165 PROPERTY_INDEX_WIFI_PHY_MODE | |
166 }; | |
167 | |
168 // Connection enums (see flimflam/include/service.h) | |
169 enum ConnectionType { | |
170 TYPE_UNKNOWN = 0, | |
171 TYPE_ETHERNET = 1, | |
172 TYPE_WIFI = 2, | |
173 TYPE_WIMAX = 3, | |
174 TYPE_BLUETOOTH = 4, | |
175 TYPE_CELLULAR = 5, | |
176 TYPE_VPN = 6, | |
177 }; | |
178 | |
179 enum ConnectionSecurity { | |
180 SECURITY_UNKNOWN = 0, | |
181 SECURITY_NONE = 1, | |
182 SECURITY_WEP = 2, | |
183 SECURITY_WPA = 3, | |
184 SECURITY_RSN = 4, | |
185 SECURITY_8021X = 5, | |
186 SECURITY_PSK = 6, | |
187 }; | |
188 | |
189 enum ConnectionState { | |
190 STATE_UNKNOWN = 0, | |
191 STATE_IDLE = 1, | |
192 STATE_CARRIER = 2, | |
193 STATE_ASSOCIATION = 3, | |
194 STATE_CONFIGURATION = 4, | |
195 STATE_READY = 5, | |
196 STATE_DISCONNECT = 6, | |
197 STATE_FAILURE = 7, | |
198 STATE_ACTIVATION_FAILURE = 8, | |
199 STATE_PORTAL = 9, | |
200 STATE_ONLINE = 10, | |
201 STATE_CONNECT_REQUESTED = 11, // Chrome only state | |
202 }; | |
203 | |
204 // Chrome only state set for user initiated connection attempts. | |
205 enum UserConnectState { | |
206 USER_CONNECT_NONE = 0, | |
207 USER_CONNECT_STARTED = 1, | |
208 USER_CONNECT_CONNECTED = 2, | |
209 USER_CONNECT_FAILED = 3 | |
210 }; | |
211 | |
212 // Network enums (see flimflam/include/network.h) | |
213 enum NetworkTechnology { | |
214 NETWORK_TECHNOLOGY_UNKNOWN = 0, | |
215 NETWORK_TECHNOLOGY_1XRTT = 1, | |
216 NETWORK_TECHNOLOGY_EVDO = 2, | |
217 NETWORK_TECHNOLOGY_GPRS = 3, | |
218 NETWORK_TECHNOLOGY_EDGE = 4, | |
219 NETWORK_TECHNOLOGY_UMTS = 5, | |
220 NETWORK_TECHNOLOGY_HSPA = 6, | |
221 NETWORK_TECHNOLOGY_HSPA_PLUS = 7, | |
222 NETWORK_TECHNOLOGY_LTE = 8, | |
223 NETWORK_TECHNOLOGY_LTE_ADVANCED = 9, | |
224 NETWORK_TECHNOLOGY_GSM = 10, | |
225 }; | |
226 | |
227 enum ActivationState { | |
228 ACTIVATION_STATE_UNKNOWN = 0, | |
229 ACTIVATION_STATE_ACTIVATED = 1, | |
230 ACTIVATION_STATE_ACTIVATING = 2, | |
231 ACTIVATION_STATE_NOT_ACTIVATED = 3, | |
232 ACTIVATION_STATE_PARTIALLY_ACTIVATED = 4, | |
233 }; | |
234 | |
235 enum NetworkRoamingState { | |
236 ROAMING_STATE_UNKNOWN = 0, | |
237 ROAMING_STATE_HOME = 1, | |
238 ROAMING_STATE_ROAMING = 2, | |
239 }; | |
240 | |
241 // Device enums (see flimflam/include/device.h) | |
242 enum TechnologyFamily { | |
243 TECHNOLOGY_FAMILY_UNKNOWN = 0, | |
244 TECHNOLOGY_FAMILY_CDMA = 1, | |
245 TECHNOLOGY_FAMILY_GSM = 2 | |
246 }; | |
247 | |
248 // Type of a pending SIM operation. | |
249 enum SimOperationType { | |
250 SIM_OPERATION_NONE = 0, | |
251 SIM_OPERATION_CHANGE_PIN = 1, | |
252 SIM_OPERATION_CHANGE_REQUIRE_PIN = 2, | |
253 SIM_OPERATION_ENTER_PIN = 3, | |
254 SIM_OPERATION_UNBLOCK_PIN = 4, | |
255 }; | |
256 | |
257 // SIMLock states (see gobi-cromo-plugin/gobi_gsm_modem.cc) | |
258 enum SimLockState { | |
259 SIM_UNKNOWN = 0, | |
260 SIM_UNLOCKED = 1, | |
261 SIM_LOCKED_PIN = 2, | |
262 SIM_LOCKED_PUK = 3, // also when SIM is blocked, then retries = 0. | |
263 }; | |
264 | |
265 // SIM PinRequire states. | |
266 // SIM_PIN_REQUIRE_UNKNOWN - SIM card is absent or SimLockState initial value | |
267 // hasn't been received yet. | |
268 // SIM_PIN_REQUIRED - SIM card is locked when booted/wake from sleep and | |
269 // requires user to enter PIN. | |
270 // SIM_PIN_NOT_REQUIRED - SIM card is unlocked all the time and requires PIN | |
271 // only on certain operations, such as ChangeRequirePin, ChangePin, EnterPin. | |
272 enum SimPinRequire { | |
273 SIM_PIN_REQUIRE_UNKNOWN = 0, | |
274 SIM_PIN_NOT_REQUIRED = 1, | |
275 SIM_PIN_REQUIRED = 2, | |
276 }; | |
277 | |
278 // Any PIN operation result (EnterPin, UnblockPin etc.). | |
279 enum PinOperationError { | |
280 PIN_ERROR_NONE = 0, | |
281 PIN_ERROR_UNKNOWN = 1, | |
282 PIN_ERROR_INCORRECT_CODE = 2, // Either PIN/PUK specified is incorrect. | |
283 PIN_ERROR_BLOCKED = 3, // No more PIN retries left, SIM is blocked. | |
284 }; | |
285 | |
286 // connection errors (see flimflam/include/service.h) | |
287 enum ConnectionError { | |
288 ERROR_NO_ERROR = 0, | |
289 ERROR_OUT_OF_RANGE = 1, | |
290 ERROR_PIN_MISSING = 2, | |
291 ERROR_DHCP_FAILED = 3, | |
292 ERROR_CONNECT_FAILED = 4, | |
293 ERROR_BAD_PASSPHRASE = 5, | |
294 ERROR_BAD_WEPKEY = 6, | |
295 ERROR_ACTIVATION_FAILED = 7, | |
296 ERROR_NEED_EVDO = 8, | |
297 ERROR_NEED_HOME_NETWORK = 9, | |
298 ERROR_OTASP_FAILED = 10, | |
299 ERROR_AAA_FAILED = 11, | |
300 ERROR_INTERNAL = 12, | |
301 ERROR_DNS_LOOKUP_FAILED = 13, | |
302 ERROR_HTTP_GET_FAILED = 14, | |
303 ERROR_IPSEC_PSK_AUTH_FAILED = 15, | |
304 ERROR_IPSEC_CERT_AUTH_FAILED = 16, | |
305 ERROR_PPP_AUTH_FAILED = 17, | |
306 ERROR_EAP_AUTHENTICATION_FAILED = 18, | |
307 ERROR_EAP_LOCAL_TLS_FAILED = 19, | |
308 ERROR_EAP_REMOTE_TLS_FAILED = 20, | |
309 ERROR_UNKNOWN = 255 | |
310 }; | |
311 | |
312 // We are currently only supporting setting a single EAP Method. | |
313 enum EAPMethod { | |
314 EAP_METHOD_UNKNOWN = 0, | |
315 EAP_METHOD_PEAP = 1, | |
316 EAP_METHOD_TLS = 2, | |
317 EAP_METHOD_TTLS = 3, | |
318 EAP_METHOD_LEAP = 4 | |
319 }; | |
320 | |
321 // We are currently only supporting setting a single EAP phase 2 authentication. | |
322 enum EAPPhase2Auth { | |
323 EAP_PHASE_2_AUTH_AUTO = 0, | |
324 EAP_PHASE_2_AUTH_MD5 = 1, | |
325 EAP_PHASE_2_AUTH_MSCHAPV2 = 2, | |
326 EAP_PHASE_2_AUTH_MSCHAP = 3, | |
327 EAP_PHASE_2_AUTH_PAP = 4, | |
328 EAP_PHASE_2_AUTH_CHAP = 5 | |
329 }; | |
330 | |
331 // Misc enums | |
332 enum NetworkProfileType { | |
333 PROFILE_NONE, // Not in any profile (not remembered). | |
334 PROFILE_SHARED, // In the local profile, shared by all users on device. | |
335 PROFILE_USER // In the user provile, not visible to other users. | |
336 }; | |
337 | |
338 // Virtual Network provider type. | |
339 enum ProviderType { | |
340 PROVIDER_TYPE_L2TP_IPSEC_PSK, | |
341 PROVIDER_TYPE_L2TP_IPSEC_USER_CERT, | |
342 PROVIDER_TYPE_OPEN_VPN, | |
343 // Add new provider types before PROVIDER_TYPE_MAX. | |
344 PROVIDER_TYPE_MAX, | |
345 }; | |
346 | |
347 } // namespace chromeos | |
348 | |
349 #endif // CHROME_BROWSER_CHROMEOS_CROS_NETWORK_CONSTANTS_H_ | |
OLD | NEW |