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_POLICY_CLOUD_CLOUD_POLICY_CONSTANTS_H_ | |
6 #define CHROME_BROWSER_POLICY_CLOUD_CLOUD_POLICY_CONSTANTS_H_ | |
7 | |
8 #include <string> | |
9 #include <utility> | |
10 | |
11 namespace policy { | |
12 | |
13 // Constants related to the device management protocol. | |
14 namespace dm_protocol { | |
15 | |
16 // Name extern constants for URL query parameters. | |
17 extern const char kParamAgent[]; | |
18 extern const char kParamAppType[]; | |
19 extern const char kParamDeviceID[]; | |
20 extern const char kParamDeviceType[]; | |
21 extern const char kParamOAuthToken[]; | |
22 extern const char kParamPlatform[]; | |
23 extern const char kParamRequest[]; | |
24 extern const char kParamUserAffiliation[]; | |
25 | |
26 // String extern constants for the device and app type we report to the server. | |
27 extern const char kValueAppType[]; | |
28 extern const char kValueDeviceType[]; | |
29 extern const char kValueRequestAutoEnrollment[]; | |
30 extern const char kValueRequestPolicy[]; | |
31 extern const char kValueRequestRegister[]; | |
32 extern const char kValueRequestApiAuthorization[]; | |
33 extern const char kValueRequestUnregister[]; | |
34 extern const char kValueRequestUploadCertificate[]; | |
35 extern const char kValueUserAffiliationManaged[]; | |
36 extern const char kValueUserAffiliationNone[]; | |
37 | |
38 // Policy type strings for the policy_type field in PolicyFetchRequest. | |
39 extern const char kChromeDevicePolicyType[]; | |
40 extern const char kChromeUserPolicyType[]; | |
41 extern const char kChromePublicAccountPolicyType[]; | |
42 extern const char kChromeExtensionPolicyType[]; | |
43 | |
44 // These codes are sent in the |error_code| field of PolicyFetchResponse. | |
45 enum PolicyFetchStatus { | |
46 POLICY_FETCH_SUCCESS = 200, | |
47 POLICY_FETCH_ERROR_NOT_FOUND = 902, | |
48 }; | |
49 | |
50 } // namespace dm_protocol | |
51 | |
52 // Describes the affiliation of a user w.r.t. the device owner. | |
53 enum UserAffiliation { | |
54 // User is on the same domain the device was registered with. | |
55 USER_AFFILIATION_MANAGED, | |
56 // No affiliation between device and user. | |
57 USER_AFFILIATION_NONE, | |
58 }; | |
59 | |
60 // Status codes for communication errors with the device management service. | |
61 enum DeviceManagementStatus { | |
62 // All is good. | |
63 DM_STATUS_SUCCESS, | |
64 // Request payload invalid. | |
65 DM_STATUS_REQUEST_INVALID, | |
66 // The HTTP request failed. | |
67 DM_STATUS_REQUEST_FAILED, | |
68 // The server returned an error code that points to a temporary problem. | |
69 DM_STATUS_TEMPORARY_UNAVAILABLE, | |
70 // The HTTP request returned a non-success code. | |
71 DM_STATUS_HTTP_STATUS_ERROR, | |
72 // Response could not be decoded. | |
73 DM_STATUS_RESPONSE_DECODING_ERROR, | |
74 // Service error: Management not supported. | |
75 DM_STATUS_SERVICE_MANAGEMENT_NOT_SUPPORTED, | |
76 // Service error: Device not found. | |
77 DM_STATUS_SERVICE_DEVICE_NOT_FOUND, | |
78 // Service error: Device token invalid. | |
79 DM_STATUS_SERVICE_MANAGEMENT_TOKEN_INVALID, | |
80 // Service error: Activation pending. | |
81 DM_STATUS_SERVICE_ACTIVATION_PENDING, | |
82 // Service error: The serial number is not valid or not known to the server. | |
83 DM_STATUS_SERVICE_INVALID_SERIAL_NUMBER, | |
84 // Service error: The device id used for registration is already taken. | |
85 DM_STATUS_SERVICE_DEVICE_ID_CONFLICT, | |
86 // Service error: The licenses have expired or have been exhausted. | |
87 DM_STATUS_SERVICE_MISSING_LICENSES, | |
88 // Service error: Policy not found. Error code defined by the DM folks. | |
89 DM_STATUS_SERVICE_POLICY_NOT_FOUND = 902, | |
90 }; | |
91 | |
92 // List of modes that the device can be locked into. | |
93 enum DeviceMode { | |
94 DEVICE_MODE_PENDING, // The device mode is not yet available. | |
95 DEVICE_MODE_NOT_SET, // The device is not yet enrolled or owned. | |
96 DEVICE_MODE_CONSUMER, // The device is locally owned as consumer | |
97 // device. | |
98 DEVICE_MODE_ENTERPRISE, // The device is enrolled as an enterprise | |
99 // device. | |
100 DEVICE_MODE_RETAIL_KIOSK, // The device is enrolled as retail kiosk device. | |
101 DEVICE_MODE_CONSUMER_KIOSK, // The device is locally owned as consumer kiosk. | |
102 }; | |
103 | |
104 // A pair that combines a policy fetch type and entity ID. | |
105 typedef std::pair<std::string, std::string> PolicyNamespaceKey; | |
106 | |
107 // Returns the Chrome user policy type to use. This allows overridding the | |
108 // default user policy type on Android and iOS for testing purposes. | |
109 // TODO(joaodasilva): remove this once the server is ready. | |
110 // http://crbug.com/248527 | |
111 const char* GetChromeUserPolicyType(); | |
112 | |
113 } // namespace policy | |
114 | |
115 #endif // CHROME_BROWSER_POLICY_CLOUD_CLOUD_POLICY_CONSTANTS_H_ | |
OLD | NEW |