OLD | NEW |
| (Empty) |
1 // Copyright 2003-2010 Google Inc. | |
2 // | |
3 // Licensed under the Apache License, Version 2.0 (the "License"); | |
4 // you may not use this file except in compliance with the License. | |
5 // You may obtain a copy of the License at | |
6 // | |
7 // http://www.apache.org/licenses/LICENSE-2.0 | |
8 // | |
9 // Unless required by applicable law or agreed to in writing, software | |
10 // distributed under the License is distributed on an "AS IS" BASIS, | |
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
12 // See the License for the specific language governing permissions and | |
13 // limitations under the License. | |
14 // ======================================================================== | |
15 // | |
16 // Error codes and HRESULTS | |
17 // | |
18 // For all new error codes, please use the macro MAKE_OMAHA_HRESULT instead of | |
19 // MAKE_HRESULT. This macro sets both the custom facility code of kFacilityOmaha | |
20 // and the C bit (0x20000000) to indicate it is a customer code. | |
21 // | |
22 // TODO(omaha): reduce the number of custom error codes below by searching and | |
23 // seeing what is handled and what is not. | |
24 // | |
25 // TODO(omaha): rename CI and GOOPDATE to OMAHA. | |
26 | |
27 #ifndef OMAHA_BASE_ERROR_H_ | |
28 #define OMAHA_BASE_ERROR_H_ | |
29 | |
30 #include <windows.h> | |
31 | |
32 namespace omaha { | |
33 | |
34 // | |
35 // Exception Codes. | |
36 // | |
37 #define EXCEPTION_IMPERSONATION_FAILED 0x1 | |
38 #define EXCEPTION_REVERT_IMPERSONATION_FAILED 0x2 | |
39 | |
40 // | |
41 // HRESULT Functions. | |
42 // | |
43 | |
44 // Returns the last error as an HRESULT or E_FAIL if last error is NO_ERROR. | |
45 // This is not a drop in replacement for the HRESULT_FROM_WIN32 macro. | |
46 // The macro maps a NO_ERROR to S_OK, whereas the function below maps a | |
47 // NO_ERROR to E_FAIL. Also, the macro is evaluating arguments multiple times. | |
48 HRESULT HRESULTFromLastError(); | |
49 | |
50 // Returns the http status_code as an HRESULT. | |
51 HRESULT HRESULTFromHttpStatusCode(int status_code); | |
52 | |
53 // | |
54 // HRESULTs. | |
55 // | |
56 // Top bit indicates success (0) or failure (1) | |
57 // 16 bits available for 'code' field at end | |
58 | |
59 const ULONG kHresultCBit = 0x20000000; | |
60 const ULONG kFacilityOmaha = 67; | |
61 | |
62 #define MAKE_OMAHA_HRESULT(sev, code) \ | |
63 ((HRESULT)(((ULONG)(sev) << 31) | \ | |
64 kHresultCBit | \ | |
65 (kFacilityOmaha << 16) | \ | |
66 ((ULONG)(code)))) | |
67 | |
68 #define CI_E_NOT_ENOUGH_DISK_SPACE \ | |
69 MAKE_HRESULT(SEVERITY_ERROR, kFacilityOmaha, 0x0003) | |
70 | |
71 // CI_E_INVALID_MANIFEST is returned when the manifest file is missing a | |
72 // required field or has some other kind of semantic error | |
73 #define CI_E_INVALID_MANIFEST \ | |
74 MAKE_HRESULT(SEVERITY_ERROR, kFacilityOmaha, 0x0012) | |
75 | |
76 // CI_E_XML_LOAD_ERROR is returned when MSXML can't load the document into DOM. | |
77 // It may be because the document is not well formed (tags, namespaces, etc) | |
78 #define CI_E_XML_LOAD_ERROR \ | |
79 MAKE_HRESULT(SEVERITY_ERROR, kFacilityOmaha, 0x0013) | |
80 | |
81 // CI_E_INVALID_ARG is returned when invalid command line arugment is specified | |
82 #define CI_E_INVALID_ARG \ | |
83 MAKE_HRESULT(SEVERITY_ERROR, kFacilityOmaha, 0x001B) | |
84 | |
85 // CI_E_PROXY_AUTH_REQUIRED is returned when proxy authentication is required | |
86 #define CI_E_PROXY_AUTH_REQUIRED \ | |
87 MAKE_HRESULT(SEVERITY_ERROR, kFacilityOmaha, 0x0028) | |
88 | |
89 // CI_E_INVALID_PROXY_AUTH_SCHEME is returned when the proxy authentication | |
90 // scheme is unknown or not supported | |
91 #define CI_E_INVALID_PROXY_AUTH_SCHEME \ | |
92 MAKE_HRESULT(SEVERITY_ERROR, kFacilityOmaha, 0x0029) | |
93 | |
94 // CI_E_BITS_DISABLED is returned by the download manager when the BITS service | |
95 // is not enabled. | |
96 #define CI_E_BITS_DISABLED \ | |
97 MAKE_HRESULT(SEVERITY_ERROR, kFacilityOmaha, 0x0030) | |
98 | |
99 // CI_E_HTTPS_CERT_FAILURE is returned when the https connection fails. | |
100 // One cause of this is when the system clock is off by a significant | |
101 // amount which makes the server certificate appear invalid. | |
102 #define CI_E_HTTPS_CERT_FAILURE \ | |
103 MAKE_HRESULT(SEVERITY_ERROR, kFacilityOmaha, 0x0035) | |
104 | |
105 // Return values from Process::WaitUntilDeadOrInterrupt | |
106 // TODO(omaha) Move this constants to the Process class. They do not look like | |
107 // error codes. | |
108 #define CI_S_PROCESSWAIT_DEAD \ | |
109 MAKE_HRESULT(SEVERITY_SUCCESS, kFacilityOmaha, 0x0100) | |
110 #define CI_S_PROCESSWAIT_TIMEOUT \ | |
111 MAKE_HRESULT(SEVERITY_SUCCESS, kFacilityOmaha, 0x0101) | |
112 #define CI_S_PROCESSWAIT_MESSAGE \ | |
113 MAKE_HRESULT(SEVERITY_SUCCESS, kFacilityOmaha, 0x0102) | |
114 | |
115 // Signatures error codes. | |
116 #define SIGS_E_INVALID_PFX_CERTIFICATE \ | |
117 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0200) | |
118 #define SIGS_E_INVALID_DER_CERTIFICATE \ | |
119 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0201) | |
120 #define SIGS_E_INVALID_PASSWORD \ | |
121 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0202) | |
122 #define SIGS_E_INVALID_KEY_TYPE \ | |
123 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0203) | |
124 #define SIGS_E_INVALID_SIGNATURE \ | |
125 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0204) | |
126 | |
127 // Goopdate XML parser error codes. | |
128 #define GOOPDATEXML_E_STRTOUINT \ | |
129 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x300) | |
130 #define GOOPDATEXML_E_RESPONSENODE \ | |
131 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x301) | |
132 #define GOOPDATEXML_E_XMLVERSION \ | |
133 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x302) | |
134 #define GOOPDATEXML_E_NEEDSADMIN \ | |
135 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x303) | |
136 #define GOOPDATEXML_E_UNEXPECTED_URI \ | |
137 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x304) | |
138 #define GOOPDATEXML_E_TOO_MANY_APPS \ | |
139 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x305) | |
140 #define GOOPDATEXML_E_PARSE_ERROR \ | |
141 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x306) | |
142 | |
143 // Goopdate job queue error codes. | |
144 // Errors 0x401 - 0x407 are legacy codes and should not be reused. | |
145 | |
146 // Download Manager custom error codes. | |
147 // Obsolete: GOOPDATEDOWNLOAD_E_FILE_ALREADY_DOWNLOADED - 0x500. | |
148 // Obsolete: GOOPDATEDOWNLOAD_E_FAILED_GET_ERROR - 0x501. | |
149 #define GOOPDATEDOWNLOAD_E_INVALID_PATH \ | |
150 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x502) | |
151 #define GOOPDATEDOWNLOAD_E_CRACKURL_FAILED \ | |
152 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x503) | |
153 #define GOOPDATEDOWNLOAD_E_FILE_NAME_EMPTY \ | |
154 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x504) | |
155 #define GOOPDATEDOWNLOAD_E_DEST_FILE_PATH_EMPTY \ | |
156 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x505) | |
157 #define GOOPDATEDOWNLOAD_E_STORAGE_DIR_NOT_EXIST \ | |
158 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x506) | |
159 #define GOOPDATEDOWNLOAD_E_FILE_SIZE_ZERO \ | |
160 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x507) | |
161 #define GOOPDATEDOWNLOAD_E_FILE_SIZE_SMALLER \ | |
162 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x508) | |
163 #define GOOPDATEDOWNLOAD_E_FILE_SIZE_LARGER \ | |
164 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x509) | |
165 #define GOOPDATEDOWNLOAD_E_UNIQUE_FILE_PATH_EMPTY \ | |
166 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x50A) | |
167 #define GOOPDATEDOWNLOAD_E_DEST_PATH_EMPTY \ | |
168 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x50B) | |
169 #define GOOPDATEDOWNLOAD_E_DEST_FILENAME_EMPTY \ | |
170 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x50C) | |
171 | |
172 // The file could not be cached. | |
173 #define GOOPDATEDOWNLOAD_E_CACHING_FAILED \ | |
174 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x50D) | |
175 | |
176 #define GOOPDATEDOWNLOAD_E_FAILED_MOVE \ | |
177 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x5FF) | |
178 | |
179 // Goopdate custom error codes. | |
180 // Obsolete: GOOPDATE_E_NON_ADMINS_CANNOT_INSTALL_ADMIN - 0x600. | |
181 // Obsolete: GOOPDATE_S_WORKER_ALREADY_RUNNING - 0x601. | |
182 // Obsolete: GOOPDATE_E_INVALID_ARG_COMBINATION - 0x602. | |
183 #define GOOPDATE_E_UA_ALREADY_RUNNING \ | |
184 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x603) | |
185 #define GOOPDATE_E_APP_BEING_INSTALLED \ | |
186 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x604) | |
187 #define GOOPDATE_E_RESOURCE_DLL_PATH_EMPTY \ | |
188 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x605) | |
189 #define GOOPDATE_E_NO_ARGS \ | |
190 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x606) | |
191 #define GOOPDATE_E_SHUTDOWN_SIGNALED \ | |
192 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x607) | |
193 | |
194 // Setup and metainstaller custom error codes. | |
195 #define GOOPDATE_E_NONADMIN_INSTALL_ADMIN_APP \ | |
196 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x700) | |
197 // Obsolete: GOOPDATE_E_MANIFEST_FILENAME_EMPTY - 0x701. | |
198 // Obsolete: GOOPDATE_E_MANIFEST_FILE_DOES_NOT_EXIST - 0x702. | |
199 // This error appears in the metainstaller. | |
200 #define GOOPDATE_E_RUNNING_INFERIOR_WINDOWS \ | |
201 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x703) | |
202 #define GOOPDATE_E_RUNNING_INFERIOR_MSXML \ | |
203 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x704) | |
204 // Obsolete: GOOPDATE_E_ELEVATION_FAILED - 0x705 | |
205 #define GOOPDATE_E_FAILED_TO_GET_LOCK \ | |
206 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x706) | |
207 #define GOOPDATE_E_INSTANCES_RUNNING \ | |
208 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x707) | |
209 #define GOOPDATE_E_HANDOFF_FAILED \ | |
210 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x708) | |
211 #define GOOPDATE_E_PATH_APPEND_FAILED \ | |
212 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x709) | |
213 // Obsolete: GOOPDATE_E_SERVICE_NAME_EMPTY - 0x70a | |
214 #define GOOPDATE_E_SETUP_LOCK_INIT_FAILED \ | |
215 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x70b) | |
216 #define GOOPDATE_E_ACCESSDENIED_COPYING_CORE_FILES \ | |
217 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x70c) | |
218 #define GOOPDATE_E_ACCESSDENIED_COPYING_SHELL \ | |
219 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x70d) | |
220 #define GOOPDATE_E_ACCESSDENIED_STOP_PROCESSES \ | |
221 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x70e) | |
222 #define GOOPDATE_E_ACCESSDENIED_SETUP_REG_ACCESS \ | |
223 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x70f) | |
224 // User may have accidentally run the metainstaller twice. | |
225 #define GOOPDATE_E_FAILED_TO_GET_LOCK_MATCHING_INSTALL_PROCESS_RUNNING \ | |
226 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x710) | |
227 #define GOOPDATE_E_FAILED_TO_GET_LOCK_NONMATCHING_INSTALL_PROCESS_RUNNING \ | |
228 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x711) | |
229 #define GOOPDATE_E_FAILED_TO_GET_LOCK_UPDATE_PROCESS_RUNNING \ | |
230 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x712) | |
231 #define GOOPDATE_E_VERIFY_SIGNEE_IS_GOOGLE_FAILED \ | |
232 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x713) | |
233 // Obsolete: GOOPDATE_E_VERIFY_SIGNEE_IS_GOOGLE_FAILED_TIMESTAMP_CHECK - 0x714. | |
234 #define GOOPDATE_E_INSTALL_ELEVATED_PROCESS_NEEDS_ELEVATION \ | |
235 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x715) | |
236 #define GOOPDATE_E_ELEVATION_FAILED_ADMIN \ | |
237 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x716) | |
238 #define GOOPDATE_E_ELEVATION_FAILED_NON_ADMIN \ | |
239 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x717) | |
240 #define GOOPDATE_E_CANT_UNINSTALL \ | |
241 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x718) | |
242 #define GOOPDATE_E_SILENT_INSTALL_NEEDS_ELEVATION \ | |
243 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x719) | |
244 #define GOOPDATE_E_OEM_NOT_MACHINE_AND_PRIVILEGED_AND_AUDIT_MODE \ | |
245 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x71a) | |
246 #define GOOPDATE_E_OEM_WITH_ONLINE_INSTALLER \ | |
247 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x71b) | |
248 // Obsolete: GOOPDATE_E_NON_OEM_INSTALL_IN_AUDIT_MODE - 0x71c | |
249 #define GOOPDATE_E_OEM_INSTALL_SUCCEEDED_BUT_NOT_IN_OEM_INSTALLING_MODE \ | |
250 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x71d) | |
251 #define GOOPDATE_E_EULA_REQURED_WITH_ONLINE_INSTALLER \ | |
252 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x71e) | |
253 #define GOOPDATE_E_COM_LOCAL_SERVER_REGISTER_FAILED \ | |
254 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x71f) | |
255 #define GOOPDATE_E_USER_AND_ELEVATED_WITH_UAC_ON \ | |
256 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x720) | |
257 #define GOOPDATE_E_FAILED_TO_GET_LOCK_UNINSTALL_PROCESS_RUNNING \ | |
258 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x721) | |
259 #define GOOPDATE_E_POST_COPY_VERIFICATION_FAILED \ | |
260 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x722) | |
261 | |
262 // Metainstaller custom error codes. | |
263 #define GOOPDATE_E_UNTAGGED_METAINSTALLER \ | |
264 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x750) | |
265 | |
266 // COM Server error codes. | |
267 // Obsolete: GOOPDATE_E_NO_SERVER_RESPONSE - 0x800. | |
268 #define GOOPDATE_E_NO_NETWORK \ | |
269 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x801) | |
270 // Obsolete: GOOPDATE_E_UPDATE_CHECK_FAILED - 0x802. | |
271 // Obsolete: GOOPDATE_COULD_NOT_GET_IGOOGLEUPDATE - 0x803. | |
272 // Obsolete: GOOPDATE_E_BAD_SERVER_RESPONSE - 0x804. | |
273 #define GOOPDATE_E_UNKNOWN_SERVER_RESPONSE \ | |
274 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x805) | |
275 #define GOOPDATE_E_RESTRICTED_SERVER_RESPONSE \ | |
276 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x806) | |
277 // Obsolete: GOOPDATE_E_ONECLICK_HOSTCHECK_FAILED - 0x807. | |
278 // Obsolete: GOOPDATE_E_ABANDON_UPDATE - 0x808. | |
279 #define GOOPDATE_E_NO_UPDATE_RESPONSE \ | |
280 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x809) | |
281 // Obsolete: GOOPDATE_E_BUNDLE_ERROR - 0x80A. | |
282 // Obsolete: GOOPDATE_E_APP_UNINSTALLED - 0x80B. | |
283 // Obsolete: GOOPDATE_E_CALL_INPROGRESS - 0x80C. | |
284 #define GOOPDATE_E_UNKNOWN_APP_SERVER_RESPONSE \ | |
285 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x80D) | |
286 #define GOOPDATE_E_INTERNAL_ERROR_SERVER_RESPONSE \ | |
287 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x80E) | |
288 #define GOOPDATE_E_NO_SERVER_RESPONSE \ | |
289 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x80F) | |
290 #define GOOPDATE_E_CANCELLED \ | |
291 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x810) | |
292 #define GOOPDATE_E_OS_NOT_SUPPORTED \ | |
293 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x811) | |
294 #define GOOPDATE_E_APP_INSTALL_DISABLED_BY_POLICY \ | |
295 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x812) | |
296 #define GOOPDATE_E_APP_UPDATE_DISABLED_BY_POLICY \ | |
297 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x813) | |
298 // Obsolete: GOOPDATE_E_APP_NOT_REGISTERED - 0x814. | |
299 #define GOOPDATE_E_CANNOT_USE_NETWORK \ | |
300 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x815) | |
301 #define GOOPDATE_E_APP_UPDATE_DISABLED_EULA_NOT_ACCEPTED \ | |
302 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x816) | |
303 #define GOOPDATE_E_NON_BLOCKING_CALL_PENDING \ | |
304 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x817) | |
305 #define GOOPDATE_E_INVALID_STATE_TRANSITION \ | |
306 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x818) | |
307 #define GOOPDATE_E_CALL_UNEXPECTED \ | |
308 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x819) | |
309 // TODO(omaha): Rename other SERVER_RESPONSE errors to match these. | |
310 #define GOOPDATE_E_SERVER_RESPONSE_NO_HASH \ | |
311 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x81a) | |
312 #define GOOPDATE_E_SERVER_RESPONSE_UNSUPPORTED_PROTOCOL \ | |
313 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x81b) | |
314 #define GOOPDATE_E_UPDATE_DEFERRED \ | |
315 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x81c) | |
316 | |
317 // | |
318 // Network stack error codes. | |
319 // | |
320 | |
321 // The CUP response is missing the ETag header containing the server proof. | |
322 #define OMAHA_NET_E_CUP_NO_SERVER_PROOF \ | |
323 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x880) | |
324 | |
325 // The CUP response is not trusted. | |
326 #define OMAHA_NET_E_CUP_NOT_TRUSTED \ | |
327 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x881) | |
328 // Obsolete: OMAHA_NET_E_REQUEST_CANCELLED - 0x882. | |
329 | |
330 // CUP could not instantiate an http client. | |
331 #define OMAHA_NET_E_CUP_NO_HTTP_CLIENT \ | |
332 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x883) | |
333 | |
334 // CUP could not generate random bytes. | |
335 #define OMAHA_NET_E_CUP_NO_ENTROPY \ | |
336 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x884) | |
337 | |
338 // Non-CUP network errors. | |
339 #define OMAHA_NET_E_WINHTTP_NOT_AVAILABLE \ | |
340 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x890) | |
341 | |
342 // Install Manager custom error codes. | |
343 #define GOOPDATEINSTALL_E_FILENAME_INVALID \ | |
344 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x900) | |
345 #define GOOPDATEINSTALL_E_INSTALLER_FAILED_START \ | |
346 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x901) | |
347 #define GOOPDATEINSTALL_E_INSTALLER_FAILED \ | |
348 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x902) | |
349 #define GOOPDATEINSTALL_E_INSTALLER_INTERNAL_ERROR \ | |
350 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x903) | |
351 #define GOOPDATEINSTALL_E_INSTALLER_TIMED_OUT \ | |
352 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x904) | |
353 #define GOOPDATEINSTALL_E_INSTALLER_DID_NOT_WRITE_CLIENTS_KEY \ | |
354 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x905) | |
355 #define GOOPDATEINSTALL_E_FAILED_INIT_INSTALLER_LOCK \ | |
356 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x906) | |
357 #define GOOPDATEINSTALL_E_MSI_INSTALL_ALREADY_RUNNING \ | |
358 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x907) | |
359 #define GOOPDATEINSTALL_E_INSTALLER_DID_NOT_CHANGE_VERSION \ | |
360 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x908) | |
361 #define GOOPDATE_E_INVALID_INSTALL_DATA_INDEX \ | |
362 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x909) | |
363 #define GOOPDATE_E_INVALID_INSTALLER_DATA_IN_APPARGS \ | |
364 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x90A) | |
365 #define GOOPDATEINSTALL_E_INSTALLER_VERSION_MISMATCH \ | |
366 MAKE_OMAHA_HRESULT(SEVERITY_ERROR, 0x90B) | |
367 | |
368 // GoopdateUtils custom error codes. | |
369 #define GOOPDATEUTILS_E_BROWSERTYPE \ | |
370 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xA00) | |
371 | |
372 // GoogleUpdate.exe shell custom error codes. | |
373 #define GOOGLEUPDATE_E_DLL_NOT_FOUND \ | |
374 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xB00) | |
375 #define GOOGLEUPDATE_E_VERIFY_SIGNEE_IS_GOOGLE_FAILED \ | |
376 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xB01) | |
377 | |
378 // Command line parse custom error codes. | |
379 #define GOOGLEUPDATE_COMMANDLINE_E_NO_SCENARIO_HANDLER \ | |
380 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xC00) | |
381 #define GOOGLEUPDATE_COMMANDLINE_E_NO_SCENARIO_HANDLER_MATCHED \ | |
382 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xC01) | |
383 | |
384 // OneClick custom error codes | |
385 #define GOOPDATE_E_ONECLICK_HOSTCHECK_FAILED \ | |
386 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xD01) | |
387 #define GOOPDATE_E_ONECLICK_LANGUAGE_NOT_SUPPORTED \ | |
388 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xD02) | |
389 | |
390 // Usage stats / metrics error codes | |
391 #define GOOPDATE_E_METRICS_LOCK_INIT_FAILED \ | |
392 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xD80) | |
393 #define GOOPDATE_E_METRICS_AGGREGATE_FAILED \ | |
394 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xD81) | |
395 | |
396 // Core error codes | |
397 #define GOOPDATE_E_CORE_INTERNAL_ERROR \ | |
398 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xE00) | |
399 #define GOOPDATE_E_CORE_MISSING_CMD \ | |
400 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xE01) | |
401 | |
402 // UI & Observer error codes | |
403 #define GOOPDATE_E_UI_INTERNAL_ERROR \ | |
404 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xE80) | |
405 #define GOOPDATE_E_OBSERVER_PROGRESS_WND_EVENTS_NULL \ | |
406 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xE81) | |
407 | |
408 // ApplyTagTool error codes. | |
409 #define APPLYTAG_E_ALREADY_TAGGED \ | |
410 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x1000) | |
411 | |
412 // The range [0x2000, 0x2400) is reserved for certain network stack errors | |
413 // when the server returns an HTTP result code that is not a success code. | |
414 // The size of the range is 1024, which is enough to map all the HTTP result | |
415 // codes. | |
416 #define GOOPDATE_E_NETWORK_FIRST \ | |
417 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x2000) | |
418 | |
419 // Http Status Code 401 -- Unauthorized. | |
420 #define GOOPDATE_E_NETWORK_UNAUTHORIZED \ | |
421 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x2191) | |
422 | |
423 // Http Status Code 403 -- Forbidden. | |
424 #define GOOPDATE_E_NETWORK_FORBIDDEN \ | |
425 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x2193) | |
426 | |
427 // Http Status Code 407 -- Proxy Authentication Required. | |
428 #define GOOPDATE_E_NETWORK_PROXYAUTHREQUIRED \ | |
429 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x2197) | |
430 | |
431 #define GOOPDATE_E_NETWORK_LAST \ | |
432 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x23FF) | |
433 | |
434 // Shared Memory Proxy error codes. | |
435 #define GOOPDATE_E_INVALID_SHARED_MEMORY_PTR \ | |
436 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x2401) | |
437 #define GOOPDATE_E_INVALID_INTERFACE_MARSHAL_SIZE \ | |
438 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x2402) | |
439 | |
440 // Crash handling error codes. | |
441 | |
442 // The crash reporting cannot start the crash server for | |
443 // out-of-process crash handling. | |
444 #define GOOPDATE_E_CRASH_START_SERVER_FAILED \ | |
445 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xFFFA) | |
446 | |
447 // The crash reporting cannot set the security descriptors for | |
448 // a securable object. | |
449 #define GOOPDATE_E_CRASH_SECURITY_FAILED \ | |
450 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xFFFB) | |
451 | |
452 // The crash reporting could not get the crash reports dir. | |
453 #define GOOPDATE_E_CRASH_NO_DIR \ | |
454 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xFFFC) | |
455 | |
456 // The crash reporting failed due to the client side metering of the crashes. | |
457 #define GOOPDATE_E_CRASH_THROTTLED \ | |
458 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xFFFD) | |
459 | |
460 // The crash reporting failed due to the server rejecting the crash. | |
461 #define GOOPDATE_E_CRASH_REJECTED \ | |
462 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xFFFE) | |
463 | |
464 // Goopdate crash. The error code is returned when the process is terminated | |
465 // due to a crash handled by breakpad. | |
466 #define GOOPDATE_E_CRASH \ | |
467 MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xFFFF) | |
468 | |
469 | |
470 // This is the end of the range for FACILITY_ITF errors. Do not define errors | |
471 // below. | |
472 | |
473 // Gets or sets the value of the extra code. Use this feature to convey | |
474 // additional error information in canary builds. | |
475 int error_extra_code1(); | |
476 void set_error_extra_code1(int extra_code); | |
477 | |
478 } // namespace omaha | |
479 | |
480 #endif // OMAHA_BASE_ERROR_H_ | |
481 | |
OLD | NEW |