1c5b5f21b9b954bbafc1d83767672190ee6a805b
[reactos.git] / reactos / lib / rtl / error.c
1 /*
2 * NTDLL error handling
3 *
4 * Copyright 2000 Alexandre Julliard
5 * Copyright 2002 Andriy Palamarchuk
6 * Copyright 2010 André Hentschel
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 */
22
23 #include <rtl.h>
24
25 #define NDEBUG
26 #include <debug.h>
27
28 #define RTL_SEM_FAILCRITICALERRORS (SEM_FAILCRITICALERRORS << 4)
29 #define RTL_SEM_NOGPFAULTERRORBOX (SEM_NOGPFAULTERRORBOX << 4)
30 #define RTL_SEM_NOALIGNMENTFAULTEXCEPT (SEM_NOALIGNMENTFAULTEXCEPT << 4)
31
32 struct error_table
33 {
34 DWORD start;
35 DWORD end;
36 const DWORD *table;
37 };
38
39 static const struct error_table error_table[20];
40
41 /**************************************************************************
42 * RtlNtStatusToDosErrorNoTeb (NTDLL.@)
43 *
44 * Convert an NTSTATUS code to a Win32 error code.
45 *
46 * PARAMS
47 * status [I] Nt error code to map.
48 *
49 * RETURNS
50 * The mapped Win32 error code, or ERROR_MR_MID_NOT_FOUND if there is no
51 * mapping defined.
52 */
53 ULONG WINAPI RtlNtStatusToDosErrorNoTeb( NTSTATUS status )
54 {
55 const struct error_table *table = error_table;
56
57 if (!status || (status & 0x20000000)) return status;
58
59 /* 0xd... is equivalent to 0xc... */
60 if ((status & 0xf0000000) == 0xd0000000) status &= ~0x10000000;
61
62 while (table->start)
63 {
64 if ((ULONG)status < table->start) break;
65 if ((ULONG)status < table->end)
66 {
67 DWORD ret = table->table[status - table->start];
68 /* unknown entries are 0 */
69 if (!ret) goto no_mapping;
70 return ret;
71 }
72 table++;
73 }
74
75 /* now some special cases */
76 if (HIWORD(status) == 0xc001) return LOWORD(status);
77 if (HIWORD(status) == 0x8007) return LOWORD(status);
78
79 no_mapping:
80 DPRINT1( "no mapping for %08x\n", status );
81 return ERROR_MR_MID_NOT_FOUND;
82 }
83
84 /**************************************************************************
85 * RtlNtStatusToDosError (NTDLL.@)
86 *
87 * Convert an NTSTATUS code to a Win32 error code.
88 *
89 * PARAMS
90 * status [I] Nt error code to map.
91 *
92 * RETURNS
93 * The mapped Win32 error code, or ERROR_MR_MID_NOT_FOUND if there is no
94 * mapping defined.
95 */
96 ULONG WINAPI RtlNtStatusToDosError( NTSTATUS status )
97 {
98 PTEB Teb = NtCurrentTeb ();
99
100 if (NULL != Teb)
101 {
102 Teb->LastStatusValue = status;
103 }
104 return RtlNtStatusToDosErrorNoTeb( status );
105 }
106
107 /**********************************************************************
108 * RtlGetLastNtStatus (NTDLL.@)
109 *
110 * Get the current per-thread status.
111 */
112 NTSTATUS WINAPI RtlGetLastNtStatus(void)
113 {
114 return NtCurrentTeb()->LastStatusValue;
115 }
116
117 /**********************************************************************
118 * RtlGetLastWin32Error (NTDLL.@)
119 *
120 * Get the current per-thread error value set by a system function or the user.
121 *
122 * PARAMS
123 * None.
124 *
125 * RETURNS
126 * The current error value for the thread, as set by SetLastWin32Error() or SetLastError().
127 */
128 DWORD WINAPI RtlGetLastWin32Error(void)
129 {
130 return NtCurrentTeb()->LastErrorValue;
131 }
132
133 /***********************************************************************
134 * RtlSetLastWin32Error (NTDLL.@)
135 * RtlRestoreLastWin32Error (NTDLL.@)
136 *
137 * Set the per-thread error value.
138 *
139 * PARAMS
140 * err [I] The new error value to set
141 *
142 * RETURNS
143 * Nothing.
144 */
145 void WINAPI RtlSetLastWin32Error( DWORD err )
146 {
147 NtCurrentTeb()->LastErrorValue = err;
148 }
149
150 /***********************************************************************
151 * RtlSetLastWin32ErrorAndNtStatusFromNtStatus (NTDLL.@)
152 *
153 * Set the per-thread status and error values.
154 *
155 * PARAMS
156 * err [I] The new status value to set
157 *
158 * RETURNS
159 * Nothing.
160 */
161 void WINAPI RtlSetLastWin32ErrorAndNtStatusFromNtStatus( NTSTATUS status )
162 {
163 NtCurrentTeb()->LastErrorValue = RtlNtStatusToDosError( status );
164 }
165
166 /*
167 * @unimplemented
168 */
169 NTSTATUS
170 NTAPI
171 RtlMapSecurityErrorToNtStatus(
172 IN ULONG SecurityError
173 )
174 {
175 UNIMPLEMENTED;
176 return STATUS_NOT_IMPLEMENTED;
177 }
178
179 /*
180 * @implemented
181 */
182 NTSTATUS
183 NTAPI
184 RtlSetThreadErrorMode(IN ULONG NewMode,
185 OUT PULONG OldMode OPTIONAL)
186 {
187 PTEB Teb = NtCurrentTeb();
188
189 /* Ignore invalid error modes */
190 if (NewMode & ~(RTL_SEM_FAILCRITICALERRORS |
191 RTL_SEM_NOGPFAULTERRORBOX |
192 RTL_SEM_NOALIGNMENTFAULTEXCEPT))
193 {
194 DPRINT1("Invalid error mode\n");
195 return STATUS_INVALID_PARAMETER_1;
196 }
197
198 /* Return old mode */
199 if (OldMode) *OldMode = Teb->HardErrorMode;
200
201 /* Set new one and return success */
202 Teb->HardErrorMode = NewMode;
203 return STATUS_SUCCESS;
204 }
205
206 /*
207 * @implemented
208 */
209 ULONG
210 NTAPI
211 RtlGetThreadErrorMode(VOID)
212 {
213 /* Return it from the TEB */
214 return NtCurrentTeb()->HardErrorMode;
215 }
216
217 /* conversion tables */
218
219 static const DWORD table_00000102[32] =
220 {
221 ERROR_TIMEOUT, /* 00000102 (STATUS_TIMEOUT) */
222 ERROR_IO_PENDING, /* 00000103 (STATUS_PENDING) */
223 0, /* 00000104 (STATUS_REPARSE) */
224 ERROR_MORE_DATA, /* 00000105 (STATUS_MORE_ENTRIES) */
225 ERROR_NOT_ALL_ASSIGNED, /* 00000106 (STATUS_NOT_ALL_ASSIGNED) */
226 ERROR_SOME_NOT_MAPPED, /* 00000107 (STATUS_SOME_NOT_MAPPED) */
227 0, /* 00000108 (STATUS_OPLOCK_BREAK_IN_PROGRESS) */
228 0, /* 00000109 (STATUS_VOLUME_MOUNTED) */
229 0, /* 0000010a (STATUS_RXACT_COMMITTED) */
230 0, /* 0000010b (STATUS_NOTIFY_CLEANUP) */
231 ERROR_NOTIFY_ENUM_DIR, /* 0000010c (STATUS_NOTIFY_ENUM_DIR) */
232 ERROR_NO_QUOTAS_FOR_ACCOUNT, /* 0000010d (STATUS_NO_QUOTAS_FOR_ACCOUNT) */
233 0, /* 0000010e (STATUS_PRIMARY_TRANSPORT_CONNECT_FAILED) */
234 0, /* 0000010f */
235 0, /* 00000110 (STATUS_PAGE_FAULT_TRANSITION) */
236 0, /* 00000111 (STATUS_PAGE_FAULT_DEMAND_ZERO) */
237 0, /* 00000112 (STATUS_PAGE_FAULT_COPY_ON_WRITE) */
238 0, /* 00000113 (STATUS_PAGE_FAULT_GUARD_PAGE) */
239 0, /* 00000114 (STATUS_PAGE_FAULT_PAGING_FILE) */
240 0, /* 00000115 (STATUS_CACHE_PAGE_LOCKED) */
241 0, /* 00000116 (STATUS_CRASH_DUMP) */
242 0, /* 00000117 (STATUS_BUFFER_ALL_ZEROS) */
243 0, /* 00000118 (STATUS_REPARSE_OBJECT) */
244 0, /* 00000119 (STATUS_RESOURCE_REQUIREMENTS_CHANGED) */
245 0, /* 0000011a */
246 0, /* 0000011b */
247 0, /* 0000011c */
248 0, /* 0000011d */
249 0, /* 0000011e */
250 0, /* 0000011f */
251 0, /* 00000120 (STATUS_TRANSLATION_COMPLETE) */
252 ERROR_DS_MEMBERSHIP_EVALUATED_LOCALLY /* 00000121 (STATUS_DS_MEMBERSHIP_EVALUATED_LOCALLY) */
253 };
254
255 static const DWORD table_40000002[36] =
256 {
257 ERROR_INVALID_PARAMETER, /* 40000002 (STATUS_WORKING_SET_LIMIT_RANGE) */
258 ERROR_IMAGE_NOT_AT_BASE, /* 40000003 (STATUS_IMAGE_NOT_AT_BASE) */
259 0, /* 40000004 (STATUS_RXACT_STATE_CREATED) */
260 0, /* 40000005 (STATUS_SEGMENT_NOTIFICATION) */
261 ERROR_LOCAL_USER_SESSION_KEY, /* 40000006 (STATUS_LOCAL_USER_SESSION_KEY) */
262 0, /* 40000007 (STATUS_BAD_CURRENT_DIRECTORY) */
263 ERROR_MORE_WRITES, /* 40000008 (STATUS_SERIAL_MORE_WRITES) */
264 ERROR_REGISTRY_RECOVERED, /* 40000009 (STATUS_REGISTRY_RECOVERED) */
265 0, /* 4000000a (STATUS_FT_READ_RECOVERY_FROM_BACKUP) */
266 0, /* 4000000b (STATUS_FT_WRITE_RECOVERY) */
267 ERROR_COUNTER_TIMEOUT, /* 4000000c (STATUS_SERIAL_COUNTER_TIMEOUT) */
268 ERROR_NULL_LM_PASSWORD, /* 4000000d (STATUS_NULL_LM_PASSWORD) */
269 ERROR_IMAGE_MACHINE_TYPE_MISMATCH, /* 4000000e (STATUS_IMAGE_MACHINE_TYPE_MISMATCH) */
270 ERROR_RECEIVE_PARTIAL, /* 4000000f (STATUS_RECEIVE_PARTIAL) */
271 ERROR_RECEIVE_EXPEDITED, /* 40000010 (STATUS_RECEIVE_EXPEDITED) */
272 ERROR_RECEIVE_PARTIAL_EXPEDITED, /* 40000011 (STATUS_RECEIVE_PARTIAL_EXPEDITED) */
273 ERROR_EVENT_DONE, /* 40000012 (STATUS_EVENT_DONE) */
274 ERROR_EVENT_PENDING, /* 40000013 (STATUS_EVENT_PENDING) */
275 ERROR_CHECKING_FILE_SYSTEM, /* 40000014 (STATUS_CHECKING_FILE_SYSTEM) */
276 ERROR_FATAL_APP_EXIT, /* 40000015 (STATUS_FATAL_APP_EXIT) */
277 ERROR_PREDEFINED_HANDLE, /* 40000016 (STATUS_PREDEFINED_HANDLE) */
278 ERROR_WAS_UNLOCKED, /* 40000017 (STATUS_WAS_UNLOCKED) */
279 ERROR_SERVICE_NOTIFICATION, /* 40000018 (STATUS_SERVICE_NOTIFICATION) */
280 ERROR_WAS_LOCKED, /* 40000019 (STATUS_WAS_LOCKED) */
281 ERROR_LOG_HARD_ERROR, /* 4000001a (STATUS_LOG_HARD_ERROR) */
282 ERROR_ALREADY_WIN32, /* 4000001b (STATUS_ALREADY_WIN32) */
283 0, /* 4000001c (STATUS_WX86_UNSIMULATE) */
284 0, /* 4000001d (STATUS_WX86_CONTINUE) */
285 0, /* 4000001e (STATUS_WX86_SINGLE_STEP) */
286 0, /* 4000001f (STATUS_WX86_BREAKPOINT) */
287 0, /* 40000020 (STATUS_WX86_EXCEPTION_CONTINUE) */
288 0, /* 40000021 (STATUS_WX86_EXCEPTION_LASTCHANCE) */
289 0, /* 40000022 (STATUS_WX86_EXCEPTION_CHAIN) */
290 ERROR_IMAGE_MACHINE_TYPE_MISMATCH_EXE, /* 40000023 (STATUS_IMAGE_MACHINE_TYPE_MISMATCH_EXE) */
291 ERROR_NO_YIELD_PERFORMED, /* 40000024 (STATUS_NO_YIELD_PERFORMED) */
292 ERROR_TIMER_RESUME_IGNORED /* 40000025 (STATUS_TIMER_RESUME_IGNORED) */
293 };
294
295 static const DWORD table_40000370[1] =
296 {
297 ERROR_DS_SHUTTING_DOWN /* 40000370 (STATUS_DS_SHUTTING_DOWN) */
298 };
299
300 static const DWORD table_40020056[1] =
301 {
302 RPC_S_UUID_LOCAL_ONLY /* 40020056 (RPC_NT_UUID_LOCAL_ONLY) */
303 };
304
305 static const DWORD table_400200af[1] =
306 {
307 RPC_S_SEND_INCOMPLETE /* 400200af (RPC_NT_SEND_INCOMPLETE) */
308 };
309
310 static const DWORD table_80000001[39] =
311 {
312 STATUS_GUARD_PAGE_VIOLATION, /* 80000001 (STATUS_GUARD_PAGE_VIOLATION) */
313 ERROR_NOACCESS, /* 80000002 (STATUS_DATATYPE_MISALIGNMENT) */
314 STATUS_BREAKPOINT, /* 80000003 (STATUS_BREAKPOINT) */
315 STATUS_SINGLE_STEP, /* 80000004 (STATUS_SINGLE_STEP) */
316 ERROR_MORE_DATA, /* 80000005 (STATUS_BUFFER_OVERFLOW) */
317 ERROR_NO_MORE_FILES, /* 80000006 (STATUS_NO_MORE_FILES) */
318 0, /* 80000007 (STATUS_WAKE_SYSTEM_DEBUGGER) */
319 0, /* 80000008 */
320 0, /* 80000009 */
321 ERROR_HANDLES_CLOSED, /* 8000000a (STATUS_HANDLES_CLOSED) */
322 ERROR_NO_INHERITANCE, /* 8000000b (STATUS_NO_INHERITANCE) */
323 0, /* 8000000c (STATUS_GUID_SUBSTITUTION_MADE) */
324 ERROR_PARTIAL_COPY, /* 8000000d (STATUS_PARTIAL_COPY) */
325 ERROR_OUT_OF_PAPER, /* 8000000e (STATUS_DEVICE_PAPER_EMPTY) */
326 ERROR_NOT_READY, /* 8000000f (STATUS_DEVICE_POWERED_OFF) */
327 ERROR_NOT_READY, /* 80000010 (STATUS_DEVICE_OFF_LINE) */
328 ERROR_BUSY, /* 80000011 (STATUS_DEVICE_BUSY) */
329 ERROR_NO_MORE_ITEMS, /* 80000012 (STATUS_NO_MORE_EAS) */
330 ERROR_INVALID_EA_NAME, /* 80000013 (STATUS_INVALID_EA_NAME) */
331 ERROR_EA_LIST_INCONSISTENT, /* 80000014 (STATUS_EA_LIST_INCONSISTENT) */
332 ERROR_EA_LIST_INCONSISTENT, /* 80000015 (STATUS_INVALID_EA_FLAG) */
333 ERROR_MEDIA_CHANGED, /* 80000016 (STATUS_VERIFY_REQUIRED) */
334 0, /* 80000017 (STATUS_EXTRANEOUS_INFORMATION) */
335 0, /* 80000018 (STATUS_RXACT_COMMIT_NECESSARY) */
336 0, /* 80000019 */
337 ERROR_NO_MORE_ITEMS, /* 8000001a (STATUS_NO_MORE_ENTRIES) */
338 ERROR_FILEMARK_DETECTED, /* 8000001b (STATUS_FILEMARK_DETECTED) */
339 ERROR_MEDIA_CHANGED, /* 8000001c (STATUS_MEDIA_CHANGED) */
340 ERROR_BUS_RESET, /* 8000001d (STATUS_BUS_RESET) */
341 ERROR_END_OF_MEDIA, /* 8000001e (STATUS_END_OF_MEDIA) */
342 ERROR_BEGINNING_OF_MEDIA, /* 8000001f (STATUS_BEGINNING_OF_MEDIA) */
343 0, /* 80000020 (STATUS_MEDIA_CHECK) */
344 ERROR_SETMARK_DETECTED, /* 80000021 (STATUS_SETMARK_DETECTED) */
345 ERROR_NO_DATA_DETECTED, /* 80000022 (STATUS_NO_DATA_DETECTED) */
346 0, /* 80000023 (STATUS_REDIRECTOR_HAS_OPEN_HANDLES) */
347 0, /* 80000024 (STATUS_SERVER_HAS_OPEN_HANDLES) */
348 ERROR_ACTIVE_CONNECTIONS, /* 80000025 (STATUS_ALREADY_DISCONNECTED) */
349 0, /* 80000026 (STATUS_LONGJUMP) */
350 ERROR_CLEANER_CARTRIDGE_INSTALLED /* 80000027 (STATUS_CLEANER_CARTRIDGE_INSTALLED) */
351 };
352
353 static const DWORD table_80000288[2] =
354 {
355 ERROR_DEVICE_REQUIRES_CLEANING, /* 80000288 (STATUS_DEVICE_REQUIRES_CLEANING) */
356 ERROR_DEVICE_DOOR_OPEN /* 80000289 (STATUS_DEVICE_DOOR_OPEN) */
357 };
358
359 static const DWORD table_80090300[72] =
360 {
361 ERROR_NO_SYSTEM_RESOURCES, /* 80090300 (SEC_E_INSUFFICIENT_MEMORY) */
362 ERROR_INVALID_HANDLE, /* 80090301 (SEC_E_INVALID_HANDLE) */
363 ERROR_INVALID_FUNCTION, /* 80090302 (SEC_E_UNSUPPORTED_FUNCTION) */
364 ERROR_BAD_NETPATH, /* 80090303 (SEC_E_TARGET_UNKNOWN) */
365 ERROR_INTERNAL_ERROR, /* 80090304 (SEC_E_INTERNAL_ERROR) */
366 ERROR_NO_SUCH_PACKAGE, /* 80090305 (SEC_E_SECPKG_NOT_FOUND) */
367 ERROR_NOT_OWNER, /* 80090306 (SEC_E_NOT_OWNER) */
368 ERROR_NO_SUCH_PACKAGE, /* 80090307 (SEC_E_CANNOT_INSTALL) */
369 ERROR_INVALID_PARAMETER, /* 80090308 (SEC_E_INVALID_TOKEN) */
370 ERROR_INVALID_PARAMETER, /* 80090309 (SEC_E_CANNOT_PACK) */
371 ERROR_NOT_SUPPORTED, /* 8009030a (SEC_E_QOP_NOT_SUPPORTED) */
372 ERROR_CANNOT_IMPERSONATE, /* 8009030b (SEC_E_NO_IMPERSONATION) */
373 ERROR_LOGON_FAILURE, /* 8009030c (SEC_E_LOGON_DENIED) */
374 ERROR_INVALID_PARAMETER, /* 8009030d (SEC_E_UNKNOWN_CREDENTIALS) */
375 ERROR_NO_SUCH_LOGON_SESSION, /* 8009030e (SEC_E_NO_CREDENTIALS) */
376 ERROR_ACCESS_DENIED, /* 8009030f (SEC_E_MESSAGE_ALTERED) */
377 ERROR_ACCESS_DENIED, /* 80090310 (SEC_E_OUT_OF_SEQUENCE) */
378 ERROR_NO_LOGON_SERVERS, /* 80090311 (SEC_E_NO_AUTHENTICATING_AUTHORITY) */
379 0, /* 80090312 */
380 0, /* 80090313 */
381 0, /* 80090314 */
382 0, /* 80090315 */
383 ERROR_NO_SUCH_PACKAGE, /* 80090316 (SEC_E_BAD_PKGID) */
384 ERROR_CONTEXT_EXPIRED, /* 80090317 (SEC_E_CONTEXT_EXPIRED) */
385 ERROR_INVALID_USER_BUFFER, /* 80090318 (SEC_E_INCOMPLETE_MESSAGE) */
386 0, /* 80090319 */
387 0, /* 8009031a */
388 0, /* 8009031b */
389 0, /* 8009031c */
390 0, /* 8009031d */
391 0, /* 8009031e */
392 0, /* 8009031f */
393 ERROR_INVALID_PARAMETER, /* 80090320 (SEC_E_INCOMPLETE_CREDENTIALS) */
394 ERROR_INSUFFICIENT_BUFFER, /* 80090321 (SEC_E_BUFFER_TOO_SMALL) */
395 ERROR_WRONG_TARGET_NAME, /* 80090322 (SEC_E_WRONG_PRINCIPAL) */
396 0, /* 80090323 */
397 0, /* 80090324 (SEC_E_TIME_SKEW) */
398 ERROR_TRUST_FAILURE, /* 80090325 (SEC_E_UNTRUSTED_ROOT) */
399 ERROR_INVALID_PARAMETER, /* 80090326 (SEC_E_ILLEGAL_MESSAGE) */
400 ERROR_INVALID_PARAMETER, /* 80090327 (SEC_E_CERT_UNKNOWN) */
401 ERROR_PASSWORD_EXPIRED, /* 80090328 (SEC_E_CERT_EXPIRED) */
402 ERROR_ENCRYPTION_FAILED, /* 80090329 (SEC_E_ENCRYPT_FAILURE) */
403 0, /* 8009032a */
404 0, /* 8009032b */
405 0, /* 8009032c */
406 0, /* 8009032d */
407 0, /* 8009032e */
408 0, /* 8009032f */
409 ERROR_DECRYPTION_FAILED, /* 80090330 (SEC_E_DECRYPT_FAILURE) */
410 ERROR_INVALID_FUNCTION, /* 80090331 (SEC_E_ALGORITHM_MISMATCH) */
411 0, /* 80090332 (SEC_E_SECURITY_QOS_FAILED) */
412 0, /* 80090333 (SEC_E_UNFINISHED_CONTEXT_DELETED) */
413 0, /* 80090334 (SEC_E_NO_TGT_REPLY) */
414 0, /* 80090335 (SEC_E_NO_IP_ADDRESSES) */
415 0, /* 80090336 (SEC_E_WRONG_CREDENTIAL_HANDLE) */
416 0, /* 80090337 (SEC_E_CRYPTO_SYSTEM_INVALID) */
417 0, /* 80090338 (SEC_E_MAX_REFERRALS_EXCEEDED) */
418 0, /* 80090339 (SEC_E_MUST_BE_KDC) */
419 0, /* 8009033a (SEC_E_STRONG_CRYPTO_NOT_SUPPORTED) */
420 0, /* 8009033b (SEC_E_TOO_MANY_PRINCIPALS) */
421 0, /* 8009033c (SEC_E_NO_PA_DATA) */
422 0, /* 8009033d (SEC_E_PKINIT_NAME_MISMATCH) */
423 0, /* 8009033e (SEC_E_SMARTCARD_LOGON_REQUIRED) */
424 0, /* 8009033f (SEC_E_SHUTDOWN_IN_PROGRESS) */
425 0, /* 80090340 (SEC_E_KDC_INVALID_REQUEST) */
426 0, /* 80090341 (SEC_E_KDC_UNABLE_TO_REFER) */
427 0, /* 80090342 (SEC_E_KDC_UNKNOWN_ETYPE) */
428 0, /* 80090343 (SEC_E_UNSUPPORTED_PREAUTH) */
429 0, /* 80090344 */
430 0, /* 80090345 (SEC_E_DELEGATION_REQUIRED) */
431 0, /* 80090346 (SEC_E_BAD_BINDINGS) */
432 ERROR_CANNOT_IMPERSONATE /* 80090347 (SEC_E_MULTIPLE_ACCOUNTS) */
433 };
434
435 static const DWORD table_80092010[4] =
436 {
437 ERROR_MUTUAL_AUTH_FAILED, /* 80092010 (CRYPT_E_REVOKED) */
438 0, /* 80092011 (CRYPT_E_NO_REVOCATION_DLL) */
439 ERROR_MUTUAL_AUTH_FAILED, /* 80092012 (CRYPT_E_NO_REVOCATION_CHECK) */
440 ERROR_MUTUAL_AUTH_FAILED /* 80092013 (CRYPT_E_REVOCATION_OFFLINE) */
441 };
442
443 static const DWORD table_80096004[1] =
444 {
445 ERROR_MUTUAL_AUTH_FAILED /* 80096004 (TRUST_E_CERT_SIGNATURE) */
446 };
447
448 static const DWORD table_80130001[5] =
449 {
450 ERROR_CLUSTER_NODE_ALREADY_UP, /* 80130001 (STATUS_CLUSTER_NODE_ALREADY_UP) */
451 ERROR_CLUSTER_NODE_ALREADY_DOWN, /* 80130002 (STATUS_CLUSTER_NODE_ALREADY_DOWN) */
452 ERROR_CLUSTER_NETWORK_ALREADY_ONLINE, /* 80130003 (STATUS_CLUSTER_NETWORK_ALREADY_ONLINE) */
453 ERROR_CLUSTER_NETWORK_ALREADY_OFFLINE, /* 80130004 (STATUS_CLUSTER_NETWORK_ALREADY_OFFLINE) */
454 ERROR_CLUSTER_NODE_ALREADY_MEMBER /* 80130005 (STATUS_CLUSTER_NODE_ALREADY_MEMBER) */
455 };
456
457 static const DWORD table_c0000001[411] =
458 {
459 ERROR_GEN_FAILURE, /* c0000001 (STATUS_UNSUCCESSFUL) */
460 ERROR_INVALID_FUNCTION, /* c0000002 (STATUS_NOT_IMPLEMENTED) */
461 ERROR_INVALID_PARAMETER, /* c0000003 (STATUS_INVALID_INFO_CLASS) */
462 ERROR_BAD_LENGTH, /* c0000004 (STATUS_INFO_LENGTH_MISMATCH) */
463 ERROR_NOACCESS, /* c0000005 (STATUS_ACCESS_VIOLATION) */
464 ERROR_SWAPERROR, /* c0000006 (STATUS_IN_PAGE_ERROR) */
465 ERROR_PAGEFILE_QUOTA, /* c0000007 (STATUS_PAGEFILE_QUOTA) */
466 ERROR_INVALID_HANDLE, /* c0000008 (STATUS_INVALID_HANDLE) */
467 ERROR_STACK_OVERFLOW, /* c0000009 (STATUS_BAD_INITIAL_STACK) */
468 ERROR_BAD_EXE_FORMAT, /* c000000a (STATUS_BAD_INITIAL_PC) */
469 ERROR_INVALID_PARAMETER, /* c000000b (STATUS_INVALID_CID) */
470 0, /* c000000c (STATUS_TIMER_NOT_CANCELED) */
471 ERROR_INVALID_PARAMETER, /* c000000d (STATUS_INVALID_PARAMETER) */
472 ERROR_FILE_NOT_FOUND, /* c000000e (STATUS_NO_SUCH_DEVICE) */
473 ERROR_FILE_NOT_FOUND, /* c000000f (STATUS_NO_SUCH_FILE) */
474 ERROR_INVALID_FUNCTION, /* c0000010 (STATUS_INVALID_DEVICE_REQUEST) */
475 ERROR_HANDLE_EOF, /* c0000011 (STATUS_END_OF_FILE) */
476 ERROR_WRONG_DISK, /* c0000012 (STATUS_WRONG_VOLUME) */
477 ERROR_NOT_READY, /* c0000013 (STATUS_NO_MEDIA_IN_DEVICE) */
478 ERROR_UNRECOGNIZED_MEDIA, /* c0000014 (STATUS_UNRECOGNIZED_MEDIA) */
479 ERROR_SECTOR_NOT_FOUND, /* c0000015 (STATUS_NONEXISTENT_SECTOR) */
480 ERROR_MORE_DATA, /* c0000016 (STATUS_MORE_PROCESSING_REQUIRED) */
481 ERROR_NOT_ENOUGH_MEMORY, /* c0000017 (STATUS_NO_MEMORY) */
482 ERROR_INVALID_ADDRESS, /* c0000018 (STATUS_CONFLICTING_ADDRESSES) */
483 ERROR_INVALID_ADDRESS, /* c0000019 (STATUS_NOT_MAPPED_VIEW) */
484 ERROR_INVALID_PARAMETER, /* c000001a (STATUS_UNABLE_TO_FREE_VM) */
485 ERROR_INVALID_PARAMETER, /* c000001b (STATUS_UNABLE_TO_DELETE_SECTION) */
486 ERROR_INVALID_FUNCTION, /* c000001c (STATUS_INVALID_SYSTEM_SERVICE) */
487 ERROR_INVALID_FUNCTION, /* c000001d (STATUS_ILLEGAL_INSTRUCTION) */
488 ERROR_ACCESS_DENIED, /* c000001e (STATUS_INVALID_LOCK_SEQUENCE) */
489 ERROR_ACCESS_DENIED, /* c000001f (STATUS_INVALID_VIEW_SIZE) */
490 ERROR_BAD_EXE_FORMAT, /* c0000020 (STATUS_INVALID_FILE_FOR_SECTION) */
491 ERROR_ACCESS_DENIED, /* c0000021 (STATUS_ALREADY_COMMITTED) */
492 ERROR_ACCESS_DENIED, /* c0000022 (STATUS_ACCESS_DENIED) */
493 ERROR_INSUFFICIENT_BUFFER, /* c0000023 (STATUS_BUFFER_TOO_SMALL) */
494 ERROR_INVALID_HANDLE, /* c0000024 (STATUS_OBJECT_TYPE_MISMATCH) */
495 STATUS_NONCONTINUABLE_EXCEPTION, /* c0000025 (STATUS_NONCONTINUABLE_EXCEPTION) */
496 STATUS_INVALID_DISPOSITION, /* c0000026 (STATUS_INVALID_DISPOSITION) */
497 0, /* c0000027 (STATUS_UNWIND) */
498 0, /* c0000028 (STATUS_BAD_STACK) */
499 0, /* c0000029 (STATUS_INVALID_UNWIND_TARGET) */
500 ERROR_NOT_LOCKED, /* c000002a (STATUS_NOT_LOCKED) */
501 STATUS_PARITY_ERROR, /* c000002b (STATUS_PARITY_ERROR) */
502 ERROR_INVALID_ADDRESS, /* c000002c (STATUS_UNABLE_TO_DECOMMIT_VM) */
503 ERROR_INVALID_ADDRESS, /* c000002d (STATUS_NOT_COMMITTED) */
504 0, /* c000002e (STATUS_INVALID_PORT_ATTRIBUTES) */
505 0, /* c000002f (STATUS_PORT_MESSAGE_TOO_LONG) */
506 ERROR_INVALID_PARAMETER, /* c0000030 (STATUS_INVALID_PARAMETER_MIX) */
507 0, /* c0000031 (STATUS_INVALID_QUOTA_LOWER) */
508 ERROR_DISK_CORRUPT, /* c0000032 (STATUS_DISK_CORRUPT_ERROR) */
509 ERROR_INVALID_NAME, /* c0000033 (STATUS_OBJECT_NAME_INVALID) */
510 ERROR_FILE_NOT_FOUND, /* c0000034 (STATUS_OBJECT_NAME_NOT_FOUND) */
511 ERROR_ALREADY_EXISTS, /* c0000035 (STATUS_OBJECT_NAME_COLLISION) */
512 0, /* c0000036 */
513 ERROR_INVALID_HANDLE, /* c0000037 (STATUS_PORT_DISCONNECTED) */
514 0, /* c0000038 (STATUS_DEVICE_ALREADY_ATTACHED) */
515 ERROR_BAD_PATHNAME, /* c0000039 (STATUS_OBJECT_PATH_INVALID) */
516 ERROR_PATH_NOT_FOUND, /* c000003a (STATUS_OBJECT_PATH_NOT_FOUND) */
517 ERROR_BAD_PATHNAME, /* c000003b (STATUS_OBJECT_PATH_SYNTAX_BAD) */
518 ERROR_IO_DEVICE, /* c000003c (STATUS_DATA_OVERRUN) */
519 ERROR_IO_DEVICE, /* c000003d (STATUS_DATA_LATE_ERROR) */
520 ERROR_CRC, /* c000003e (STATUS_DATA_ERROR) */
521 ERROR_CRC, /* c000003f (STATUS_CRC_ERROR) */
522 ERROR_NOT_ENOUGH_MEMORY, /* c0000040 (STATUS_SECTION_TOO_BIG) */
523 ERROR_ACCESS_DENIED, /* c0000041 (STATUS_PORT_CONNECTION_REFUSED) */
524 ERROR_INVALID_HANDLE, /* c0000042 (STATUS_INVALID_PORT_HANDLE) */
525 ERROR_SHARING_VIOLATION, /* c0000043 (STATUS_SHARING_VIOLATION) */
526 ERROR_NOT_ENOUGH_QUOTA, /* c0000044 (STATUS_QUOTA_EXCEEDED) */
527 ERROR_INVALID_PARAMETER, /* c0000045 (STATUS_INVALID_PAGE_PROTECTION) */
528 ERROR_NOT_OWNER, /* c0000046 (STATUS_MUTANT_NOT_OWNED) */
529 ERROR_TOO_MANY_POSTS, /* c0000047 (STATUS_SEMAPHORE_LIMIT_EXCEEDED) */
530 ERROR_INVALID_PARAMETER, /* c0000048 (STATUS_PORT_ALREADY_SET) */
531 ERROR_INVALID_PARAMETER, /* c0000049 (STATUS_SECTION_NOT_IMAGE) */
532 ERROR_SIGNAL_REFUSED, /* c000004a (STATUS_SUSPEND_COUNT_EXCEEDED) */
533 ERROR_ACCESS_DENIED, /* c000004b (STATUS_THREAD_IS_TERMINATING) */
534 ERROR_INVALID_PARAMETER, /* c000004c (STATUS_BAD_WORKING_SET_LIMIT) */
535 ERROR_INVALID_PARAMETER, /* c000004d (STATUS_INCOMPATIBLE_FILE_MAP) */
536 ERROR_INVALID_PARAMETER, /* c000004e (STATUS_SECTION_PROTECTION) */
537 ERROR_EAS_NOT_SUPPORTED, /* c000004f (STATUS_EAS_NOT_SUPPORTED) */
538 ERROR_EA_LIST_INCONSISTENT, /* c0000050 (STATUS_EA_TOO_LARGE) */
539 ERROR_FILE_CORRUPT, /* c0000051 (STATUS_NONEXISTENT_EA_ENTRY) */
540 ERROR_FILE_CORRUPT, /* c0000052 (STATUS_NO_EAS_ON_FILE) */
541 ERROR_FILE_CORRUPT, /* c0000053 (STATUS_EA_CORRUPT_ERROR) */
542 ERROR_LOCK_VIOLATION, /* c0000054 (STATUS_FILE_LOCK_CONFLICT) */
543 ERROR_LOCK_VIOLATION, /* c0000055 (STATUS_LOCK_NOT_GRANTED) */
544 ERROR_ACCESS_DENIED, /* c0000056 (STATUS_DELETE_PENDING) */
545 ERROR_NOT_SUPPORTED, /* c0000057 (STATUS_CTL_FILE_NOT_SUPPORTED) */
546 ERROR_UNKNOWN_REVISION, /* c0000058 (STATUS_UNKNOWN_REVISION) */
547 ERROR_REVISION_MISMATCH, /* c0000059 (STATUS_REVISION_MISMATCH) */
548 ERROR_INVALID_OWNER, /* c000005a (STATUS_INVALID_OWNER) */
549 ERROR_INVALID_PRIMARY_GROUP, /* c000005b (STATUS_INVALID_PRIMARY_GROUP) */
550 ERROR_NO_IMPERSONATION_TOKEN, /* c000005c (STATUS_NO_IMPERSONATION_TOKEN) */
551 ERROR_CANT_DISABLE_MANDATORY, /* c000005d (STATUS_CANT_DISABLE_MANDATORY) */
552 ERROR_NO_LOGON_SERVERS, /* c000005e (STATUS_NO_LOGON_SERVERS) */
553 ERROR_NO_SUCH_LOGON_SESSION, /* c000005f (STATUS_NO_SUCH_LOGON_SESSION) */
554 ERROR_NO_SUCH_PRIVILEGE, /* c0000060 (STATUS_NO_SUCH_PRIVILEGE) */
555 ERROR_PRIVILEGE_NOT_HELD, /* c0000061 (STATUS_PRIVILEGE_NOT_HELD) */
556 ERROR_INVALID_ACCOUNT_NAME, /* c0000062 (STATUS_INVALID_ACCOUNT_NAME) */
557 ERROR_USER_EXISTS, /* c0000063 (STATUS_USER_EXISTS) */
558 ERROR_NO_SUCH_USER, /* c0000064 (STATUS_NO_SUCH_USER) */
559 ERROR_GROUP_EXISTS, /* c0000065 (STATUS_GROUP_EXISTS) */
560 ERROR_NO_SUCH_GROUP, /* c0000066 (STATUS_NO_SUCH_GROUP) */
561 ERROR_MEMBER_IN_GROUP, /* c0000067 (STATUS_MEMBER_IN_GROUP) */
562 ERROR_MEMBER_NOT_IN_GROUP, /* c0000068 (STATUS_MEMBER_NOT_IN_GROUP) */
563 ERROR_LAST_ADMIN, /* c0000069 (STATUS_LAST_ADMIN) */
564 ERROR_INVALID_PASSWORD, /* c000006a (STATUS_WRONG_PASSWORD) */
565 ERROR_ILL_FORMED_PASSWORD, /* c000006b (STATUS_ILL_FORMED_PASSWORD) */
566 ERROR_PASSWORD_RESTRICTION, /* c000006c (STATUS_PASSWORD_RESTRICTION) */
567 ERROR_LOGON_FAILURE, /* c000006d (STATUS_LOGON_FAILURE) */
568 ERROR_ACCOUNT_RESTRICTION, /* c000006e (STATUS_ACCOUNT_RESTRICTION) */
569 ERROR_INVALID_LOGON_HOURS, /* c000006f (STATUS_INVALID_LOGON_HOURS) */
570 ERROR_INVALID_WORKSTATION, /* c0000070 (STATUS_INVALID_WORKSTATION) */
571 ERROR_PASSWORD_EXPIRED, /* c0000071 (STATUS_PASSWORD_EXPIRED) */
572 ERROR_ACCOUNT_DISABLED, /* c0000072 (STATUS_ACCOUNT_DISABLED) */
573 ERROR_NONE_MAPPED, /* c0000073 (STATUS_NONE_MAPPED) */
574 ERROR_TOO_MANY_LUIDS_REQUESTED, /* c0000074 (STATUS_TOO_MANY_LUIDS_REQUESTED) */
575 ERROR_LUIDS_EXHAUSTED, /* c0000075 (STATUS_LUIDS_EXHAUSTED) */
576 ERROR_INVALID_SUB_AUTHORITY, /* c0000076 (STATUS_INVALID_SUB_AUTHORITY) */
577 ERROR_INVALID_ACL, /* c0000077 (STATUS_INVALID_ACL) */
578 ERROR_INVALID_SID, /* c0000078 (STATUS_INVALID_SID) */
579 ERROR_INVALID_SECURITY_DESCR, /* c0000079 (STATUS_INVALID_SECURITY_DESCR) */
580 ERROR_PROC_NOT_FOUND, /* c000007a (STATUS_PROCEDURE_NOT_FOUND) */
581 ERROR_BAD_EXE_FORMAT, /* c000007b (STATUS_INVALID_IMAGE_FORMAT) */
582 ERROR_NO_TOKEN, /* c000007c (STATUS_NO_TOKEN) */
583 ERROR_BAD_INHERITANCE_ACL, /* c000007d (STATUS_BAD_INHERITANCE_ACL) */
584 ERROR_NOT_LOCKED, /* c000007e (STATUS_RANGE_NOT_LOCKED) */
585 ERROR_DISK_FULL, /* c000007f (STATUS_DISK_FULL) */
586 ERROR_SERVER_DISABLED, /* c0000080 (STATUS_SERVER_DISABLED) */
587 ERROR_SERVER_NOT_DISABLED, /* c0000081 (STATUS_SERVER_NOT_DISABLED) */
588 ERROR_TOO_MANY_NAMES, /* c0000082 (STATUS_TOO_MANY_GUIDS_REQUESTED) */
589 ERROR_NO_MORE_ITEMS, /* c0000083 (STATUS_GUIDS_EXHAUSTED) */
590 ERROR_INVALID_ID_AUTHORITY, /* c0000084 (STATUS_INVALID_ID_AUTHORITY) */
591 ERROR_NO_MORE_ITEMS, /* c0000085 (STATUS_AGENTS_EXHAUSTED) */
592 ERROR_LABEL_TOO_LONG, /* c0000086 (STATUS_INVALID_VOLUME_LABEL) */
593 ERROR_OUTOFMEMORY, /* c0000087 (STATUS_SECTION_NOT_EXTENDED) */
594 ERROR_INVALID_ADDRESS, /* c0000088 (STATUS_NOT_MAPPED_DATA) */
595 ERROR_RESOURCE_DATA_NOT_FOUND, /* c0000089 (STATUS_RESOURCE_DATA_NOT_FOUND) */
596 ERROR_RESOURCE_TYPE_NOT_FOUND, /* c000008a (STATUS_RESOURCE_TYPE_NOT_FOUND) */
597 ERROR_RESOURCE_NAME_NOT_FOUND, /* c000008b (STATUS_RESOURCE_NAME_NOT_FOUND) */
598 STATUS_ARRAY_BOUNDS_EXCEEDED, /* c000008c (STATUS_ARRAY_BOUNDS_EXCEEDED) */
599 STATUS_FLOAT_DENORMAL_OPERAND, /* c000008d (STATUS_FLOAT_DENORMAL_OPERAND) */
600 STATUS_FLOAT_DIVIDE_BY_ZERO, /* c000008e (STATUS_FLOAT_DIVIDE_BY_ZERO) */
601 STATUS_FLOAT_INEXACT_RESULT, /* c000008f (STATUS_FLOAT_INEXACT_RESULT) */
602 STATUS_FLOAT_INVALID_OPERATION, /* c0000090 (STATUS_FLOAT_INVALID_OPERATION) */
603 STATUS_FLOAT_OVERFLOW, /* c0000091 (STATUS_FLOAT_OVERFLOW) */
604 STATUS_FLOAT_STACK_CHECK, /* c0000092 (STATUS_FLOAT_STACK_CHECK) */
605 STATUS_FLOAT_UNDERFLOW, /* c0000093 (STATUS_FLOAT_UNDERFLOW) */
606 STATUS_INTEGER_DIVIDE_BY_ZERO, /* c0000094 (STATUS_INTEGER_DIVIDE_BY_ZERO) */
607 ERROR_ARITHMETIC_OVERFLOW, /* c0000095 (STATUS_INTEGER_OVERFLOW) */
608 STATUS_PRIVILEGED_INSTRUCTION, /* c0000096 (STATUS_PRIVILEGED_INSTRUCTION) */
609 ERROR_NOT_ENOUGH_MEMORY, /* c0000097 (STATUS_TOO_MANY_PAGING_FILES) */
610 ERROR_FILE_INVALID, /* c0000098 (STATUS_FILE_INVALID) */
611 ERROR_ALLOTTED_SPACE_EXCEEDED, /* c0000099 (STATUS_ALLOTTED_SPACE_EXCEEDED) */
612 ERROR_NO_SYSTEM_RESOURCES, /* c000009a (STATUS_INSUFFICIENT_RESOURCES) */
613 ERROR_PATH_NOT_FOUND, /* c000009b (STATUS_DFS_EXIT_PATH_FOUND) */
614 ERROR_CRC, /* c000009c (STATUS_DEVICE_DATA_ERROR) */
615 ERROR_DEVICE_NOT_CONNECTED, /* c000009d (STATUS_DEVICE_NOT_CONNECTED) */
616 ERROR_NOT_READY, /* c000009e (STATUS_DEVICE_POWER_FAILURE) */
617 ERROR_INVALID_ADDRESS, /* c000009f (STATUS_FREE_VM_NOT_AT_BASE) */
618 ERROR_INVALID_ADDRESS, /* c00000a0 (STATUS_MEMORY_NOT_ALLOCATED) */
619 ERROR_WORKING_SET_QUOTA, /* c00000a1 (STATUS_WORKING_SET_QUOTA) */
620 ERROR_WRITE_PROTECT, /* c00000a2 (STATUS_MEDIA_WRITE_PROTECTED) */
621 ERROR_NOT_READY, /* c00000a3 (STATUS_DEVICE_NOT_READY) */
622 ERROR_INVALID_GROUP_ATTRIBUTES, /* c00000a4 (STATUS_INVALID_GROUP_ATTRIBUTES) */
623 ERROR_BAD_IMPERSONATION_LEVEL, /* c00000a5 (STATUS_BAD_IMPERSONATION_LEVEL) */
624 ERROR_CANT_OPEN_ANONYMOUS, /* c00000a6 (STATUS_CANT_OPEN_ANONYMOUS) */
625 ERROR_BAD_VALIDATION_CLASS, /* c00000a7 (STATUS_BAD_VALIDATION_CLASS) */
626 ERROR_BAD_TOKEN_TYPE, /* c00000a8 (STATUS_BAD_TOKEN_TYPE) */
627 ERROR_INVALID_PARAMETER, /* c00000a9 (STATUS_BAD_MASTER_BOOT_RECORD) */
628 0, /* c00000aa (STATUS_INSTRUCTION_MISALIGNMENT) */
629 ERROR_PIPE_BUSY, /* c00000ab (STATUS_INSTANCE_NOT_AVAILABLE) */
630 ERROR_PIPE_BUSY, /* c00000ac (STATUS_PIPE_NOT_AVAILABLE) */
631 ERROR_BAD_PIPE, /* c00000ad (STATUS_INVALID_PIPE_STATE) */
632 ERROR_PIPE_BUSY, /* c00000ae (STATUS_PIPE_BUSY) */
633 ERROR_INVALID_FUNCTION, /* c00000af (STATUS_ILLEGAL_FUNCTION) */
634 ERROR_PIPE_NOT_CONNECTED, /* c00000b0 (STATUS_PIPE_DISCONNECTED) */
635 ERROR_NO_DATA, /* c00000b1 (STATUS_PIPE_CLOSING) */
636 ERROR_PIPE_CONNECTED, /* c00000b2 (STATUS_PIPE_CONNECTED) */
637 ERROR_PIPE_LISTENING, /* c00000b3 (STATUS_PIPE_LISTENING) */
638 ERROR_BAD_PIPE, /* c00000b4 (STATUS_INVALID_READ_MODE) */
639 ERROR_SEM_TIMEOUT, /* c00000b5 (STATUS_IO_TIMEOUT) */
640 ERROR_HANDLE_EOF, /* c00000b6 (STATUS_FILE_FORCED_CLOSED) */
641 0, /* c00000b7 (STATUS_PROFILING_NOT_STARTED) */
642 0, /* c00000b8 (STATUS_PROFILING_NOT_STOPPED) */
643 0, /* c00000b9 (STATUS_COULD_NOT_INTERPRET) */
644 ERROR_ACCESS_DENIED, /* c00000ba (STATUS_FILE_IS_A_DIRECTORY) */
645 ERROR_NOT_SUPPORTED, /* c00000bb (STATUS_NOT_SUPPORTED) */
646 ERROR_REM_NOT_LIST, /* c00000bc (STATUS_REMOTE_NOT_LISTENING) */
647 ERROR_DUP_NAME, /* c00000bd (STATUS_DUPLICATE_NAME) */
648 ERROR_BAD_NETPATH, /* c00000be (STATUS_BAD_NETWORK_PATH) */
649 ERROR_NETWORK_BUSY, /* c00000bf (STATUS_NETWORK_BUSY) */
650 ERROR_DEV_NOT_EXIST, /* c00000c0 (STATUS_DEVICE_DOES_NOT_EXIST) */
651 ERROR_TOO_MANY_CMDS, /* c00000c1 (STATUS_TOO_MANY_COMMANDS) */
652 ERROR_ADAP_HDW_ERR, /* c00000c2 (STATUS_ADAPTER_HARDWARE_ERROR) */
653 ERROR_BAD_NET_RESP, /* c00000c3 (STATUS_INVALID_NETWORK_RESPONSE) */
654 ERROR_UNEXP_NET_ERR, /* c00000c4 (STATUS_UNEXPECTED_NETWORK_ERROR) */
655 ERROR_BAD_REM_ADAP, /* c00000c5 (STATUS_BAD_REMOTE_ADAPTER) */
656 ERROR_PRINTQ_FULL, /* c00000c6 (STATUS_PRINT_QUEUE_FULL) */
657 ERROR_NO_SPOOL_SPACE, /* c00000c7 (STATUS_NO_SPOOL_SPACE) */
658 ERROR_PRINT_CANCELLED, /* c00000c8 (STATUS_PRINT_CANCELLED) */
659 ERROR_NETNAME_DELETED, /* c00000c9 (STATUS_NETWORK_NAME_DELETED) */
660 ERROR_NETWORK_ACCESS_DENIED, /* c00000ca (STATUS_NETWORK_ACCESS_DENIED) */
661 ERROR_BAD_DEV_TYPE, /* c00000cb (STATUS_BAD_DEVICE_TYPE) */
662 ERROR_BAD_NET_NAME, /* c00000cc (STATUS_BAD_NETWORK_NAME) */
663 ERROR_TOO_MANY_NAMES, /* c00000cd (STATUS_TOO_MANY_NAMES) */
664 ERROR_TOO_MANY_SESS, /* c00000ce (STATUS_TOO_MANY_SESSIONS) */
665 ERROR_SHARING_PAUSED, /* c00000cf (STATUS_SHARING_PAUSED) */
666 ERROR_REQ_NOT_ACCEP, /* c00000d0 (STATUS_REQUEST_NOT_ACCEPTED) */
667 ERROR_REDIR_PAUSED, /* c00000d1 (STATUS_REDIRECTOR_PAUSED) */
668 ERROR_NET_WRITE_FAULT, /* c00000d2 (STATUS_NET_WRITE_FAULT) */
669 0, /* c00000d3 (STATUS_PROFILING_AT_LIMIT) */
670 ERROR_NOT_SAME_DEVICE, /* c00000d4 (STATUS_NOT_SAME_DEVICE) */
671 ERROR_ACCESS_DENIED, /* c00000d5 (STATUS_FILE_RENAMED) */
672 ERROR_VC_DISCONNECTED, /* c00000d6 (STATUS_VIRTUAL_CIRCUIT_CLOSED) */
673 ERROR_NO_SECURITY_ON_OBJECT, /* c00000d7 (STATUS_NO_SECURITY_ON_OBJECT) */
674 0, /* c00000d8 (STATUS_CANT_WAIT) */
675 ERROR_NO_DATA, /* c00000d9 (STATUS_PIPE_EMPTY) */
676 ERROR_CANT_ACCESS_DOMAIN_INFO, /* c00000da (STATUS_CANT_ACCESS_DOMAIN_INFO) */
677 0, /* c00000db (STATUS_CANT_TERMINATE_SELF) */
678 ERROR_INVALID_SERVER_STATE, /* c00000dc (STATUS_INVALID_SERVER_STATE) */
679 ERROR_INVALID_DOMAIN_STATE, /* c00000dd (STATUS_INVALID_DOMAIN_STATE) */
680 ERROR_INVALID_DOMAIN_ROLE, /* c00000de (STATUS_INVALID_DOMAIN_ROLE) */
681 ERROR_NO_SUCH_DOMAIN, /* c00000df (STATUS_NO_SUCH_DOMAIN) */
682 ERROR_DOMAIN_EXISTS, /* c00000e0 (STATUS_DOMAIN_EXISTS) */
683 ERROR_DOMAIN_LIMIT_EXCEEDED, /* c00000e1 (STATUS_DOMAIN_LIMIT_EXCEEDED) */
684 ERROR_OPLOCK_NOT_GRANTED, /* c00000e2 (STATUS_OPLOCK_NOT_GRANTED) */
685 ERROR_INVALID_OPLOCK_PROTOCOL, /* c00000e3 (STATUS_INVALID_OPLOCK_PROTOCOL) */
686 ERROR_INTERNAL_DB_CORRUPTION, /* c00000e4 (STATUS_INTERNAL_DB_CORRUPTION) */
687 ERROR_INTERNAL_ERROR, /* c00000e5 (STATUS_INTERNAL_ERROR) */
688 ERROR_GENERIC_NOT_MAPPED, /* c00000e6 (STATUS_GENERIC_NOT_MAPPED) */
689 ERROR_BAD_DESCRIPTOR_FORMAT, /* c00000e7 (STATUS_BAD_DESCRIPTOR_FORMAT) */
690 ERROR_INVALID_USER_BUFFER, /* c00000e8 (STATUS_INVALID_USER_BUFFER) */
691 0, /* c00000e9 (STATUS_UNEXPECTED_IO_ERROR) */
692 0, /* c00000ea (STATUS_UNEXPECTED_MM_CREATE_ERR) */
693 0, /* c00000eb (STATUS_UNEXPECTED_MM_MAP_ERROR) */
694 0, /* c00000ec (STATUS_UNEXPECTED_MM_EXTEND_ERR) */
695 ERROR_NOT_LOGON_PROCESS, /* c00000ed (STATUS_NOT_LOGON_PROCESS) */
696 ERROR_LOGON_SESSION_EXISTS, /* c00000ee (STATUS_LOGON_SESSION_EXISTS) */
697 ERROR_INVALID_PARAMETER, /* c00000ef (STATUS_INVALID_PARAMETER_1) */
698 ERROR_INVALID_PARAMETER, /* c00000f0 (STATUS_INVALID_PARAMETER_2) */
699 ERROR_INVALID_PARAMETER, /* c00000f1 (STATUS_INVALID_PARAMETER_3) */
700 ERROR_INVALID_PARAMETER, /* c00000f2 (STATUS_INVALID_PARAMETER_4) */
701 ERROR_INVALID_PARAMETER, /* c00000f3 (STATUS_INVALID_PARAMETER_5) */
702 ERROR_INVALID_PARAMETER, /* c00000f4 (STATUS_INVALID_PARAMETER_6) */
703 ERROR_INVALID_PARAMETER, /* c00000f5 (STATUS_INVALID_PARAMETER_7) */
704 ERROR_INVALID_PARAMETER, /* c00000f6 (STATUS_INVALID_PARAMETER_8) */
705 ERROR_INVALID_PARAMETER, /* c00000f7 (STATUS_INVALID_PARAMETER_9) */
706 ERROR_INVALID_PARAMETER, /* c00000f8 (STATUS_INVALID_PARAMETER_10) */
707 ERROR_INVALID_PARAMETER, /* c00000f9 (STATUS_INVALID_PARAMETER_11) */
708 ERROR_INVALID_PARAMETER, /* c00000fa (STATUS_INVALID_PARAMETER_12) */
709 ERROR_PATH_NOT_FOUND, /* c00000fb (STATUS_REDIRECTOR_NOT_STARTED) */
710 ERROR_SERVICE_ALREADY_RUNNING, /* c00000fc (STATUS_REDIRECTOR_STARTED) */
711 ERROR_STACK_OVERFLOW, /* c00000fd (STATUS_STACK_OVERFLOW) */
712 ERROR_NO_SUCH_PACKAGE, /* c00000fe (STATUS_NO_SUCH_PACKAGE) */
713 0, /* c00000ff (STATUS_BAD_FUNCTION_TABLE) */
714 ERROR_ENVVAR_NOT_FOUND, /* c0000100 (STATUS_VARIABLE_NOT_FOUND) */
715 ERROR_DIR_NOT_EMPTY, /* c0000101 (STATUS_DIRECTORY_NOT_EMPTY) */
716 ERROR_FILE_CORRUPT, /* c0000102 (STATUS_FILE_CORRUPT_ERROR) */
717 ERROR_DIRECTORY, /* c0000103 (STATUS_NOT_A_DIRECTORY) */
718 ERROR_BAD_LOGON_SESSION_STATE, /* c0000104 (STATUS_BAD_LOGON_SESSION_STATE) */
719 ERROR_LOGON_SESSION_COLLISION, /* c0000105 (STATUS_LOGON_SESSION_COLLISION) */
720 ERROR_FILENAME_EXCED_RANGE, /* c0000106 (STATUS_NAME_TOO_LONG) */
721 ERROR_OPEN_FILES, /* c0000107 (STATUS_FILES_OPEN) */
722 ERROR_DEVICE_IN_USE, /* c0000108 (STATUS_CONNECTION_IN_USE) */
723 ERROR_MR_MID_NOT_FOUND, /* c0000109 (STATUS_MESSAGE_NOT_FOUND) */
724 ERROR_ACCESS_DENIED, /* c000010a (STATUS_PROCESS_IS_TERMINATING) */
725 ERROR_INVALID_LOGON_TYPE, /* c000010b (STATUS_INVALID_LOGON_TYPE) */
726 0, /* c000010c (STATUS_NO_GUID_TRANSLATION) */
727 ERROR_CANNOT_IMPERSONATE, /* c000010d (STATUS_CANNOT_IMPERSONATE) */
728 ERROR_SERVICE_ALREADY_RUNNING, /* c000010e (STATUS_IMAGE_ALREADY_LOADED) */
729 0, /* c000010f (STATUS_ABIOS_NOT_PRESENT) */
730 0, /* c0000110 (STATUS_ABIOS_LID_NOT_EXIST) */
731 0, /* c0000111 (STATUS_ABIOS_LID_ALREADY_OWNED) */
732 0, /* c0000112 (STATUS_ABIOS_NOT_LID_OWNER) */
733 0, /* c0000113 (STATUS_ABIOS_INVALID_COMMAND) */
734 0, /* c0000114 (STATUS_ABIOS_INVALID_LID) */
735 0, /* c0000115 (STATUS_ABIOS_SELECTOR_NOT_AVAILABLE) */
736 0, /* c0000116 (STATUS_ABIOS_INVALID_SELECTOR) */
737 ERROR_INVALID_THREAD_ID, /* c0000117 (STATUS_NO_LDT) */
738 ERROR_INVALID_LDT_SIZE, /* c0000118 (STATUS_INVALID_LDT_SIZE) */
739 ERROR_INVALID_LDT_OFFSET, /* c0000119 (STATUS_INVALID_LDT_OFFSET) */
740 ERROR_INVALID_LDT_DESCRIPTOR, /* c000011a (STATUS_INVALID_LDT_DESCRIPTOR) */
741 ERROR_BAD_EXE_FORMAT, /* c000011b (STATUS_INVALID_IMAGE_NE_FORMAT) */
742 ERROR_RXACT_INVALID_STATE, /* c000011c (STATUS_RXACT_INVALID_STATE) */
743 ERROR_RXACT_COMMIT_FAILURE, /* c000011d (STATUS_RXACT_COMMIT_FAILURE) */
744 ERROR_FILE_INVALID, /* c000011e (STATUS_MAPPED_FILE_SIZE_ZERO) */
745 ERROR_TOO_MANY_OPEN_FILES, /* c000011f (STATUS_TOO_MANY_OPENED_FILES) */
746 ERROR_OPERATION_ABORTED, /* c0000120 (STATUS_CANCELLED) */
747 ERROR_ACCESS_DENIED, /* c0000121 (STATUS_CANNOT_DELETE) */
748 ERROR_INVALID_COMPUTERNAME, /* c0000122 (STATUS_INVALID_COMPUTER_NAME) */
749 ERROR_ACCESS_DENIED, /* c0000123 (STATUS_FILE_DELETED) */
750 ERROR_SPECIAL_ACCOUNT, /* c0000124 (STATUS_SPECIAL_ACCOUNT) */
751 ERROR_SPECIAL_GROUP, /* c0000125 (STATUS_SPECIAL_GROUP) */
752 ERROR_SPECIAL_USER, /* c0000126 (STATUS_SPECIAL_USER) */
753 ERROR_MEMBERS_PRIMARY_GROUP, /* c0000127 (STATUS_MEMBERS_PRIMARY_GROUP) */
754 ERROR_INVALID_HANDLE, /* c0000128 (STATUS_FILE_CLOSED) */
755 0, /* c0000129 (STATUS_TOO_MANY_THREADS) */
756 0, /* c000012a (STATUS_THREAD_NOT_IN_PROCESS) */
757 ERROR_TOKEN_ALREADY_IN_USE, /* c000012b (STATUS_TOKEN_ALREADY_IN_USE) */
758 0, /* c000012c (STATUS_PAGEFILE_QUOTA_EXCEEDED) */
759 ERROR_COMMITMENT_LIMIT, /* c000012d (STATUS_COMMITMENT_LIMIT) */
760 ERROR_BAD_EXE_FORMAT, /* c000012e (STATUS_INVALID_IMAGE_LE_FORMAT) */
761 ERROR_BAD_EXE_FORMAT, /* c000012f (STATUS_INVALID_IMAGE_NOT_MZ) */
762 ERROR_BAD_EXE_FORMAT, /* c0000130 (STATUS_INVALID_IMAGE_PROTECT) */
763 ERROR_BAD_EXE_FORMAT, /* c0000131 (STATUS_INVALID_IMAGE_WIN_16) */
764 0, /* c0000132 (STATUS_LOGON_SERVER_CONFLICT) */
765 ERROR_TIME_SKEW, /* c0000133 (STATUS_TIME_DIFFERENCE_AT_DC) */
766 0, /* c0000134 (STATUS_SYNCHRONIZATION_REQUIRED) */
767 ERROR_MOD_NOT_FOUND, /* c0000135 (STATUS_DLL_NOT_FOUND) */
768 ERROR_NET_OPEN_FAILED, /* c0000136 (STATUS_OPEN_FAILED) */
769 ERROR_IO_PRIVILEGE_FAILED, /* c0000137 (STATUS_IO_PRIVILEGE_FAILED) */
770 ERROR_INVALID_ORDINAL, /* c0000138 (STATUS_ORDINAL_NOT_FOUND) */
771 ERROR_PROC_NOT_FOUND, /* c0000139 (STATUS_ENTRYPOINT_NOT_FOUND) */
772 ERROR_CONTROL_C_EXIT, /* c000013a (STATUS_CONTROL_C_EXIT) */
773 ERROR_NETNAME_DELETED, /* c000013b (STATUS_LOCAL_DISCONNECT) */
774 ERROR_NETNAME_DELETED, /* c000013c (STATUS_REMOTE_DISCONNECT) */
775 ERROR_REM_NOT_LIST, /* c000013d (STATUS_REMOTE_RESOURCES) */
776 ERROR_UNEXP_NET_ERR, /* c000013e (STATUS_LINK_FAILED) */
777 ERROR_UNEXP_NET_ERR, /* c000013f (STATUS_LINK_TIMEOUT) */
778 ERROR_UNEXP_NET_ERR, /* c0000140 (STATUS_INVALID_CONNECTION) */
779 ERROR_UNEXP_NET_ERR, /* c0000141 (STATUS_INVALID_ADDRESS) */
780 ERROR_DLL_INIT_FAILED, /* c0000142 (STATUS_DLL_INIT_FAILED) */
781 ERROR_MISSING_SYSTEMFILE, /* c0000143 (STATUS_MISSING_SYSTEMFILE) */
782 ERROR_UNHANDLED_EXCEPTION, /* c0000144 (STATUS_UNHANDLED_EXCEPTION) */
783 ERROR_APP_INIT_FAILURE, /* c0000145 (STATUS_APP_INIT_FAILURE) */
784 ERROR_PAGEFILE_CREATE_FAILED, /* c0000146 (STATUS_PAGEFILE_CREATE_FAILED) */
785 ERROR_NO_PAGEFILE, /* c0000147 (STATUS_NO_PAGEFILE) */
786 ERROR_INVALID_LEVEL, /* c0000148 (STATUS_INVALID_LEVEL) */
787 ERROR_INVALID_PASSWORD, /* c0000149 (STATUS_WRONG_PASSWORD_CORE) */
788 ERROR_ILLEGAL_FLOAT_CONTEXT, /* c000014a (STATUS_ILLEGAL_FLOAT_CONTEXT) */
789 ERROR_BROKEN_PIPE, /* c000014b (STATUS_PIPE_BROKEN) */
790 ERROR_BADDB, /* c000014c (STATUS_REGISTRY_CORRUPT) */
791 ERROR_REGISTRY_IO_FAILED, /* c000014d (STATUS_REGISTRY_IO_FAILED) */
792 ERROR_NO_EVENT_PAIR, /* c000014e (STATUS_NO_EVENT_PAIR) */
793 ERROR_UNRECOGNIZED_VOLUME, /* c000014f (STATUS_UNRECOGNIZED_VOLUME) */
794 ERROR_SERIAL_NO_DEVICE, /* c0000150 (STATUS_SERIAL_NO_DEVICE_INITED) */
795 ERROR_NO_SUCH_ALIAS, /* c0000151 (STATUS_NO_SUCH_ALIAS) */
796 ERROR_MEMBER_NOT_IN_ALIAS, /* c0000152 (STATUS_MEMBER_NOT_IN_ALIAS) */
797 ERROR_MEMBER_IN_ALIAS, /* c0000153 (STATUS_MEMBER_IN_ALIAS) */
798 ERROR_ALIAS_EXISTS, /* c0000154 (STATUS_ALIAS_EXISTS) */
799 ERROR_LOGON_NOT_GRANTED, /* c0000155 (STATUS_LOGON_NOT_GRANTED) */
800 ERROR_TOO_MANY_SECRETS, /* c0000156 (STATUS_TOO_MANY_SECRETS) */
801 ERROR_SECRET_TOO_LONG, /* c0000157 (STATUS_SECRET_TOO_LONG) */
802 ERROR_INTERNAL_DB_ERROR, /* c0000158 (STATUS_INTERNAL_DB_ERROR) */
803 ERROR_FULLSCREEN_MODE, /* c0000159 (STATUS_FULLSCREEN_MODE) */
804 ERROR_TOO_MANY_CONTEXT_IDS, /* c000015a (STATUS_TOO_MANY_CONTEXT_IDS) */
805 ERROR_LOGON_TYPE_NOT_GRANTED, /* c000015b (STATUS_LOGON_TYPE_NOT_GRANTED) */
806 ERROR_NOT_REGISTRY_FILE, /* c000015c (STATUS_NOT_REGISTRY_FILE) */
807 ERROR_NT_CROSS_ENCRYPTION_REQUIRED, /* c000015d (STATUS_NT_CROSS_ENCRYPTION_REQUIRED) */
808 ERROR_DOMAIN_CTRLR_CONFIG_ERROR, /* c000015e (STATUS_DOMAIN_CTRLR_CONFIG_ERROR) */
809 ERROR_IO_DEVICE, /* c000015f (STATUS_FT_MISSING_MEMBER) */
810 0, /* c0000160 (STATUS_ILL_FORMED_SERVICE_ENTRY) */
811 0, /* c0000161 (STATUS_ILLEGAL_CHARACTER) */
812 ERROR_NO_UNICODE_TRANSLATION, /* c0000162 (STATUS_UNMAPPABLE_CHARACTER) */
813 0, /* c0000163 (STATUS_UNDEFINED_CHARACTER) */
814 0, /* c0000164 (STATUS_FLOPPY_VOLUME) */
815 ERROR_FLOPPY_ID_MARK_NOT_FOUND, /* c0000165 (STATUS_FLOPPY_ID_MARK_NOT_FOUND) */
816 ERROR_FLOPPY_WRONG_CYLINDER, /* c0000166 (STATUS_FLOPPY_WRONG_CYLINDER) */
817 ERROR_FLOPPY_UNKNOWN_ERROR, /* c0000167 (STATUS_FLOPPY_UNKNOWN_ERROR) */
818 ERROR_FLOPPY_BAD_REGISTERS, /* c0000168 (STATUS_FLOPPY_BAD_REGISTERS) */
819 ERROR_DISK_RECALIBRATE_FAILED, /* c0000169 (STATUS_DISK_RECALIBRATE_FAILED) */
820 ERROR_DISK_OPERATION_FAILED, /* c000016a (STATUS_DISK_OPERATION_FAILED) */
821 ERROR_DISK_RESET_FAILED, /* c000016b (STATUS_DISK_RESET_FAILED) */
822 ERROR_IRQ_BUSY, /* c000016c (STATUS_SHARED_IRQ_BUSY) */
823 ERROR_IO_DEVICE, /* c000016d (STATUS_FT_ORPHANING) */
824 0, /* c000016e (STATUS_BIOS_FAILED_TO_CONNECT_INTERRUPT) */
825 0, /* c000016f */
826 0, /* c0000170 */
827 0, /* c0000171 */
828 ERROR_PARTITION_FAILURE, /* c0000172 (STATUS_PARTITION_FAILURE) */
829 ERROR_INVALID_BLOCK_LENGTH, /* c0000173 (STATUS_INVALID_BLOCK_LENGTH) */
830 ERROR_DEVICE_NOT_PARTITIONED, /* c0000174 (STATUS_DEVICE_NOT_PARTITIONED) */
831 ERROR_UNABLE_TO_LOCK_MEDIA, /* c0000175 (STATUS_UNABLE_TO_LOCK_MEDIA) */
832 ERROR_UNABLE_TO_UNLOAD_MEDIA, /* c0000176 (STATUS_UNABLE_TO_UNLOAD_MEDIA) */
833 ERROR_EOM_OVERFLOW, /* c0000177 (STATUS_EOM_OVERFLOW) */
834 ERROR_NO_MEDIA_IN_DRIVE, /* c0000178 (STATUS_NO_MEDIA) */
835 0, /* c0000179 */
836 ERROR_NO_SUCH_MEMBER, /* c000017a (STATUS_NO_SUCH_MEMBER) */
837 ERROR_INVALID_MEMBER, /* c000017b (STATUS_INVALID_MEMBER) */
838 ERROR_KEY_DELETED, /* c000017c (STATUS_KEY_DELETED) */
839 ERROR_NO_LOG_SPACE, /* c000017d (STATUS_NO_LOG_SPACE) */
840 ERROR_TOO_MANY_SIDS, /* c000017e (STATUS_TOO_MANY_SIDS) */
841 ERROR_LM_CROSS_ENCRYPTION_REQUIRED, /* c000017f (STATUS_LM_CROSS_ENCRYPTION_REQUIRED) */
842 ERROR_KEY_HAS_CHILDREN, /* c0000180 (STATUS_KEY_HAS_CHILDREN) */
843 ERROR_CHILD_MUST_BE_VOLATILE, /* c0000181 (STATUS_CHILD_MUST_BE_VOLATILE) */
844 ERROR_INVALID_PARAMETER, /* c0000182 (STATUS_DEVICE_CONFIGURATION_ERROR) */
845 ERROR_IO_DEVICE, /* c0000183 (STATUS_DRIVER_INTERNAL_ERROR) */
846 ERROR_BAD_COMMAND, /* c0000184 (STATUS_INVALID_DEVICE_STATE) */
847 ERROR_IO_DEVICE, /* c0000185 (STATUS_IO_DEVICE_ERROR) */
848 ERROR_IO_DEVICE, /* c0000186 (STATUS_DEVICE_PROTOCOL_ERROR) */
849 0, /* c0000187 (STATUS_BACKUP_CONTROLLER) */
850 ERROR_LOG_FILE_FULL, /* c0000188 (STATUS_LOG_FILE_FULL) */
851 ERROR_WRITE_PROTECT, /* c0000189 (STATUS_TOO_LATE) */
852 ERROR_NO_TRUST_LSA_SECRET, /* c000018a (STATUS_NO_TRUST_LSA_SECRET) */
853 ERROR_NO_TRUST_SAM_ACCOUNT, /* c000018b (STATUS_NO_TRUST_SAM_ACCOUNT) */
854 ERROR_TRUSTED_DOMAIN_FAILURE, /* c000018c (STATUS_TRUSTED_DOMAIN_FAILURE) */
855 ERROR_TRUSTED_RELATIONSHIP_FAILURE, /* c000018d (STATUS_TRUSTED_RELATIONSHIP_FAILURE) */
856 ERROR_EVENTLOG_FILE_CORRUPT, /* c000018e (STATUS_EVENTLOG_FILE_CORRUPT) */
857 ERROR_EVENTLOG_CANT_START, /* c000018f (STATUS_EVENTLOG_CANT_START) */
858 ERROR_TRUST_FAILURE, /* c0000190 (STATUS_TRUST_FAILURE) */
859 0, /* c0000191 (STATUS_MUTANT_LIMIT_EXCEEDED) */
860 ERROR_NETLOGON_NOT_STARTED, /* c0000192 (STATUS_NETLOGON_NOT_STARTED) */
861 ERROR_ACCOUNT_EXPIRED, /* c0000193 (STATUS_ACCOUNT_EXPIRED) */
862 ERROR_POSSIBLE_DEADLOCK, /* c0000194 (STATUS_POSSIBLE_DEADLOCK) */
863 ERROR_SESSION_CREDENTIAL_CONFLICT, /* c0000195 (STATUS_NETWORK_CREDENTIAL_CONFLICT) */
864 ERROR_REMOTE_SESSION_LIMIT_EXCEEDED, /* c0000196 (STATUS_REMOTE_SESSION_LIMIT) */
865 ERROR_EVENTLOG_FILE_CHANGED, /* c0000197 (STATUS_EVENTLOG_FILE_CHANGED) */
866 ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT,/* c0000198 (STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT) */
867 ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT,/* c0000199 (STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT) */
868 ERROR_NOLOGON_SERVER_TRUST_ACCOUNT, /* c000019a (STATUS_NOLOGON_SERVER_TRUST_ACCOUNT) */
869 ERROR_DOMAIN_TRUST_INCONSISTENT /* c000019b (STATUS_DOMAIN_TRUST_INCONSISTENT) */
870 };
871
872 static const DWORD table_c0000202[396] =
873 {
874 ERROR_NO_USER_SESSION_KEY, /* c0000202 (STATUS_NO_USER_SESSION_KEY) */
875 ERROR_UNEXP_NET_ERR, /* c0000203 (STATUS_USER_SESSION_DELETED) */
876 ERROR_RESOURCE_LANG_NOT_FOUND, /* c0000204 (STATUS_RESOURCE_LANG_NOT_FOUND) */
877 ERROR_NOT_ENOUGH_SERVER_MEMORY, /* c0000205 (STATUS_INSUFF_SERVER_RESOURCES) */
878 ERROR_INVALID_USER_BUFFER, /* c0000206 (STATUS_INVALID_BUFFER_SIZE) */
879 ERROR_INVALID_NETNAME, /* c0000207 (STATUS_INVALID_ADDRESS_COMPONENT) */
880 ERROR_INVALID_NETNAME, /* c0000208 (STATUS_INVALID_ADDRESS_WILDCARD) */
881 ERROR_TOO_MANY_NAMES, /* c0000209 (STATUS_TOO_MANY_ADDRESSES) */
882 ERROR_DUP_NAME, /* c000020a (STATUS_ADDRESS_ALREADY_EXISTS) */
883 ERROR_NETNAME_DELETED, /* c000020b (STATUS_ADDRESS_CLOSED) */
884 ERROR_NETNAME_DELETED, /* c000020c (STATUS_CONNECTION_DISCONNECTED) */
885 ERROR_NETNAME_DELETED, /* c000020d (STATUS_CONNECTION_RESET) */
886 ERROR_TOO_MANY_NAMES, /* c000020e (STATUS_TOO_MANY_NODES) */
887 ERROR_UNEXP_NET_ERR, /* c000020f (STATUS_TRANSACTION_ABORTED) */
888 ERROR_UNEXP_NET_ERR, /* c0000210 (STATUS_TRANSACTION_TIMED_OUT) */
889 ERROR_UNEXP_NET_ERR, /* c0000211 (STATUS_TRANSACTION_NO_RELEASE) */
890 ERROR_UNEXP_NET_ERR, /* c0000212 (STATUS_TRANSACTION_NO_MATCH) */
891 ERROR_UNEXP_NET_ERR, /* c0000213 (STATUS_TRANSACTION_RESPONDED) */
892 ERROR_UNEXP_NET_ERR, /* c0000214 (STATUS_TRANSACTION_INVALID_ID) */
893 ERROR_UNEXP_NET_ERR, /* c0000215 (STATUS_TRANSACTION_INVALID_TYPE) */
894 ERROR_NOT_SUPPORTED, /* c0000216 (STATUS_NOT_SERVER_SESSION) */
895 ERROR_NOT_SUPPORTED, /* c0000217 (STATUS_NOT_CLIENT_SESSION) */
896 0, /* c0000218 (STATUS_CANNOT_LOAD_REGISTRY_FILE) */
897 0, /* c0000219 (STATUS_DEBUG_ATTACH_FAILED) */
898 0, /* c000021a (STATUS_SYSTEM_PROCESS_TERMINATED) */
899 0, /* c000021b (STATUS_DATA_NOT_ACCEPTED) */
900 ERROR_NO_BROWSER_SERVERS_FOUND, /* c000021c (STATUS_NO_BROWSER_SERVERS_FOUND) */
901 0, /* c000021d (STATUS_VDM_HARD_ERROR) */
902 0, /* c000021e (STATUS_DRIVER_CANCEL_TIMEOUT) */
903 0, /* c000021f (STATUS_REPLY_MESSAGE_MISMATCH) */
904 ERROR_MAPPED_ALIGNMENT, /* c0000220 (STATUS_MAPPED_ALIGNMENT) */
905 ERROR_BAD_EXE_FORMAT, /* c0000221 (STATUS_IMAGE_CHECKSUM_MISMATCH) */
906 0, /* c0000222 (STATUS_LOST_WRITEBEHIND_DATA) */
907 0, /* c0000223 (STATUS_CLIENT_SERVER_PARAMETERS_INVALID) */
908 ERROR_PASSWORD_MUST_CHANGE, /* c0000224 (STATUS_PASSWORD_MUST_CHANGE) */
909 ERROR_NOT_FOUND, /* c0000225 (STATUS_NOT_FOUND) */
910 0, /* c0000226 (STATUS_NOT_TINY_STREAM) */
911 0, /* c0000227 (STATUS_RECOVERY_FAILURE) */
912 0, /* c0000228 (STATUS_STACK_OVERFLOW_READ) */
913 ERROR_INVALID_PARAMETER, /* c0000229 (STATUS_FAIL_CHECK) */
914 ERROR_OBJECT_ALREADY_EXISTS, /* c000022a (STATUS_DUPLICATE_OBJECTID) */
915 ERROR_OBJECT_ALREADY_EXISTS, /* c000022b (STATUS_OBJECTID_EXISTS) */
916 0, /* c000022c (STATUS_CONVERT_TO_LARGE) */
917 ERROR_RETRY, /* c000022d (STATUS_RETRY) */
918 0, /* c000022e (STATUS_FOUND_OUT_OF_SCOPE) */
919 0, /* c000022f (STATUS_ALLOCATE_BUCKET) */
920 ERROR_SET_NOT_FOUND, /* c0000230 (STATUS_PROPSET_NOT_FOUND) */
921 0, /* c0000231 (STATUS_MARSHALL_OVERFLOW) */
922 0, /* c0000232 (STATUS_INVALID_VARIANT) */
923 ERROR_DOMAIN_CONTROLLER_NOT_FOUND, /* c0000233 (STATUS_DOMAIN_CONTROLLER_NOT_FOUND) */
924 ERROR_ACCOUNT_LOCKED_OUT, /* c0000234 (STATUS_ACCOUNT_LOCKED_OUT) */
925 ERROR_INVALID_HANDLE, /* c0000235 (STATUS_HANDLE_NOT_CLOSABLE) */
926 ERROR_CONNECTION_REFUSED, /* c0000236 (STATUS_CONNECTION_REFUSED) */
927 ERROR_GRACEFUL_DISCONNECT, /* c0000237 (STATUS_GRACEFUL_DISCONNECT) */
928 ERROR_ADDRESS_ALREADY_ASSOCIATED, /* c0000238 (STATUS_ADDRESS_ALREADY_ASSOCIATED) */
929 ERROR_ADDRESS_NOT_ASSOCIATED, /* c0000239 (STATUS_ADDRESS_NOT_ASSOCIATED) */
930 ERROR_CONNECTION_INVALID, /* c000023a (STATUS_CONNECTION_INVALID) */
931 ERROR_CONNECTION_ACTIVE, /* c000023b (STATUS_CONNECTION_ACTIVE) */
932 ERROR_NETWORK_UNREACHABLE, /* c000023c (STATUS_NETWORK_UNREACHABLE) */
933 ERROR_HOST_UNREACHABLE, /* c000023d (STATUS_HOST_UNREACHABLE) */
934 ERROR_PROTOCOL_UNREACHABLE, /* c000023e (STATUS_PROTOCOL_UNREACHABLE) */
935 ERROR_PORT_UNREACHABLE, /* c000023f (STATUS_PORT_UNREACHABLE) */
936 ERROR_REQUEST_ABORTED, /* c0000240 (STATUS_REQUEST_ABORTED) */
937 ERROR_CONNECTION_ABORTED, /* c0000241 (STATUS_CONNECTION_ABORTED) */
938 0, /* c0000242 (STATUS_BAD_COMPRESSION_BUFFER) */
939 ERROR_USER_MAPPED_FILE, /* c0000243 (STATUS_USER_MAPPED_FILE) */
940 0, /* c0000244 (STATUS_AUDIT_FAILED) */
941 0, /* c0000245 (STATUS_TIMER_RESOLUTION_NOT_SET) */
942 ERROR_CONNECTION_COUNT_LIMIT, /* c0000246 (STATUS_CONNECTION_COUNT_LIMIT) */
943 ERROR_LOGIN_TIME_RESTRICTION, /* c0000247 (STATUS_LOGIN_TIME_RESTRICTION) */
944 ERROR_LOGIN_WKSTA_RESTRICTION, /* c0000248 (STATUS_LOGIN_WKSTA_RESTRICTION) */
945 ERROR_BAD_EXE_FORMAT, /* c0000249 (STATUS_IMAGE_MP_UP_MISMATCH) */
946 0, /* c000024a */
947 0, /* c000024b */
948 0, /* c000024c */
949 0, /* c000024d */
950 0, /* c000024e */
951 0, /* c000024f */
952 0, /* c0000250 (STATUS_INSUFFICIENT_LOGON_INFO) */
953 0, /* c0000251 (STATUS_BAD_DLL_ENTRYPOINT) */
954 0, /* c0000252 (STATUS_BAD_SERVICE_ENTRYPOINT) */
955 ERROR_CONNECTION_ABORTED, /* c0000253 (STATUS_LPC_REPLY_LOST) */
956 0, /* c0000254 (STATUS_IP_ADDRESS_CONFLICT1) */
957 0, /* c0000255 (STATUS_IP_ADDRESS_CONFLICT2) */
958 0, /* c0000256 (STATUS_REGISTRY_QUOTA_LIMIT) */
959 ERROR_HOST_UNREACHABLE, /* c0000257 (STATUS_PATH_NOT_COVERED) */
960 0, /* c0000258 (STATUS_NO_CALLBACK_ACTIVE) */
961 ERROR_LICENSE_QUOTA_EXCEEDED, /* c0000259 (STATUS_LICENSE_QUOTA_EXCEEDED) */
962 0, /* c000025a (STATUS_PWD_TOO_SHORT) */
963 0, /* c000025b (STATUS_PWD_TOO_RECENT) */
964 0, /* c000025c (STATUS_PWD_HISTORY_CONFLICT) */
965 0, /* c000025d */
966 ERROR_SERVICE_DISABLED, /* c000025e (STATUS_PLUGPLAY_NO_DEVICE) */
967 0, /* c000025f (STATUS_UNSUPPORTED_COMPRESSION) */
968 0, /* c0000260 (STATUS_INVALID_HW_PROFILE) */
969 0, /* c0000261 (STATUS_INVALID_PLUGPLAY_DEVICE_PATH) */
970 ERROR_INVALID_ORDINAL, /* c0000262 (STATUS_DRIVER_ORDINAL_NOT_FOUND) */
971 ERROR_PROC_NOT_FOUND, /* c0000263 (STATUS_DRIVER_ENTRYPOINT_NOT_FOUND) */
972 ERROR_NOT_OWNER, /* c0000264 (STATUS_RESOURCE_NOT_OWNED) */
973 ERROR_TOO_MANY_LINKS, /* c0000265 (STATUS_TOO_MANY_LINKS) */
974 0, /* c0000266 (STATUS_QUOTA_LIST_INCONSISTENT) */
975 ERROR_FILE_OFFLINE, /* c0000267 (STATUS_FILE_IS_OFFLINE) */
976 0, /* c0000268 (STATUS_EVALUATION_EXPIRATION) */
977 0, /* c0000269 (STATUS_ILLEGAL_DLL_RELOCATION) */
978 ERROR_CTX_LICENSE_NOT_AVAILABLE, /* c000026a (STATUS_LICENSE_VIOLATION) */
979 0, /* c000026b (STATUS_DLL_INIT_FAILED_LOGOFF) */
980 ERROR_BAD_DRIVER, /* c000026c (STATUS_DRIVER_UNABLE_TO_LOAD) */
981 ERROR_CONNECTION_UNAVAIL, /* c000026d (STATUS_DFS_UNAVAILABLE) */
982 ERROR_NOT_READY, /* c000026e (STATUS_VOLUME_DISMOUNTED) */
983 0, /* c000026f (STATUS_WX86_INTERNAL_ERROR) */
984 0, /* c0000270 (STATUS_WX86_FLOAT_STACK_CHECK) */
985 0, /* c0000271 (STATUS_VALIDATE_CONTINUE) */
986 ERROR_NO_MATCH, /* c0000272 (STATUS_NO_MATCH) */
987 0, /* c0000273 (STATUS_NO_MORE_MATCHES) */
988 0, /* c0000274 */
989 ERROR_NOT_A_REPARSE_POINT, /* c0000275 (STATUS_NOT_A_REPARSE_POINT) */
990 ERROR_REPARSE_TAG_INVALID, /* c0000276 (STATUS_IO_REPARSE_TAG_INVALID) */
991 ERROR_REPARSE_TAG_MISMATCH, /* c0000277 (STATUS_IO_REPARSE_TAG_MISMATCH) */
992 ERROR_INVALID_REPARSE_DATA, /* c0000278 (STATUS_IO_REPARSE_DATA_INVALID) */
993 ERROR_CANT_ACCESS_FILE, /* c0000279 (STATUS_IO_REPARSE_TAG_NOT_HANDLED) */
994 0, /* c000027a */
995 0, /* c000027b */
996 0, /* c000027c */
997 0, /* c000027d */
998 0, /* c000027e */
999 0, /* c000027f */
1000 ERROR_CANT_RESOLVE_FILENAME, /* c0000280 (STATUS_REPARSE_POINT_NOT_RESOLVED) */
1001 ERROR_BAD_PATHNAME, /* c0000281 (STATUS_DIRECTORY_IS_A_REPARSE_POINT) */
1002 0, /* c0000282 (STATUS_RANGE_LIST_CONFLICT) */
1003 ERROR_SOURCE_ELEMENT_EMPTY, /* c0000283 (STATUS_SOURCE_ELEMENT_EMPTY) */
1004 ERROR_DESTINATION_ELEMENT_FULL, /* c0000284 (STATUS_DESTINATION_ELEMENT_FULL) */
1005 ERROR_ILLEGAL_ELEMENT_ADDRESS, /* c0000285 (STATUS_ILLEGAL_ELEMENT_ADDRESS) */
1006 ERROR_MAGAZINE_NOT_PRESENT, /* c0000286 (STATUS_MAGAZINE_NOT_PRESENT) */
1007 ERROR_DEVICE_REINITIALIZATION_NEEDED, /* c0000287 (STATUS_REINITIALIZATION_NEEDED) */
1008 0, /* c0000288 */
1009 0, /* c0000289 */
1010 ERROR_ACCESS_DENIED, /* c000028a (STATUS_ENCRYPTION_FAILED) */
1011 ERROR_ACCESS_DENIED, /* c000028b (STATUS_DECRYPTION_FAILED) */
1012 0, /* c000028c (STATUS_RANGE_NOT_FOUND) */
1013 ERROR_ACCESS_DENIED, /* c000028d (STATUS_NO_RECOVERY_POLICY) */
1014 ERROR_ACCESS_DENIED, /* c000028e (STATUS_NO_EFS) */
1015 ERROR_ACCESS_DENIED, /* c000028f (STATUS_WRONG_EFS) */
1016 ERROR_ACCESS_DENIED, /* c0000290 (STATUS_NO_USER_KEYS) */
1017 ERROR_FILE_NOT_ENCRYPTED, /* c0000291 (STATUS_FILE_NOT_ENCRYPTED) */
1018 ERROR_NOT_EXPORT_FORMAT, /* c0000292 (STATUS_NOT_EXPORT_FORMAT) */
1019 ERROR_FILE_ENCRYPTED, /* c0000293 (STATUS_FILE_ENCRYPTED) */
1020 0, /* c0000294 */
1021 ERROR_WMI_GUID_NOT_FOUND, /* c0000295 (STATUS_WMI_GUID_NOT_FOUND) */
1022 ERROR_WMI_INSTANCE_NOT_FOUND, /* c0000296 (STATUS_WMI_INSTANCE_NOT_FOUND) */
1023 ERROR_WMI_ITEMID_NOT_FOUND, /* c0000297 (STATUS_WMI_ITEMID_NOT_FOUND) */
1024 ERROR_WMI_TRY_AGAIN, /* c0000298 (STATUS_WMI_TRY_AGAIN) */
1025 ERROR_SHARED_POLICY, /* c0000299 (STATUS_SHARED_POLICY) */
1026 ERROR_POLICY_OBJECT_NOT_FOUND, /* c000029a (STATUS_POLICY_OBJECT_NOT_FOUND) */
1027 ERROR_POLICY_ONLY_IN_DS, /* c000029b (STATUS_POLICY_ONLY_IN_DS) */
1028 ERROR_INVALID_FUNCTION, /* c000029c (STATUS_VOLUME_NOT_UPGRADED) */
1029 ERROR_REMOTE_STORAGE_NOT_ACTIVE, /* c000029d (STATUS_REMOTE_STORAGE_NOT_ACTIVE) */
1030 ERROR_REMOTE_STORAGE_MEDIA_ERROR, /* c000029e (STATUS_REMOTE_STORAGE_MEDIA_ERROR) */
1031 ERROR_NO_TRACKING_SERVICE, /* c000029f (STATUS_NO_TRACKING_SERVICE) */
1032 0, /* c00002a0 (STATUS_SERVER_SID_MISMATCH) */
1033 ERROR_DS_NO_ATTRIBUTE_OR_VALUE, /* c00002a1 (STATUS_DS_NO_ATTRIBUTE_OR_VALUE) */
1034 ERROR_DS_INVALID_ATTRIBUTE_SYNTAX, /* c00002a2 (STATUS_DS_INVALID_ATTRIBUTE_SYNTAX) */
1035 ERROR_DS_ATTRIBUTE_TYPE_UNDEFINED, /* c00002a3 (STATUS_DS_ATTRIBUTE_TYPE_UNDEFINED) */
1036 ERROR_DS_ATTRIBUTE_OR_VALUE_EXISTS, /* c00002a4 (STATUS_DS_ATTRIBUTE_OR_VALUE_EXISTS) */
1037 ERROR_DS_BUSY, /* c00002a5 (STATUS_DS_BUSY) */
1038 ERROR_DS_UNAVAILABLE, /* c00002a6 (STATUS_DS_UNAVAILABLE) */
1039 ERROR_DS_NO_RIDS_ALLOCATED, /* c00002a7 (STATUS_DS_NO_RIDS_ALLOCATED) */
1040 ERROR_DS_NO_MORE_RIDS, /* c00002a8 (STATUS_DS_NO_MORE_RIDS) */
1041 ERROR_DS_INCORRECT_ROLE_OWNER, /* c00002a9 (STATUS_DS_INCORRECT_ROLE_OWNER) */
1042 ERROR_DS_RIDMGR_INIT_ERROR, /* c00002aa (STATUS_DS_RIDMGR_INIT_ERROR) */
1043 ERROR_DS_OBJ_CLASS_VIOLATION, /* c00002ab (STATUS_DS_OBJ_CLASS_VIOLATION) */
1044 ERROR_DS_CANT_ON_NON_LEAF, /* c00002ac (STATUS_DS_CANT_ON_NON_LEAF) */
1045 ERROR_DS_CANT_ON_RDN, /* c00002ad (STATUS_DS_CANT_ON_RDN) */
1046 ERROR_DS_CANT_MOD_OBJ_CLASS, /* c00002ae (STATUS_DS_CANT_MOD_OBJ_CLASS) */
1047 ERROR_DS_CROSS_DOM_MOVE_ERROR, /* c00002af (STATUS_DS_CROSS_DOM_MOVE_FAILED) */
1048 ERROR_DS_GC_NOT_AVAILABLE, /* c00002b0 (STATUS_DS_GC_NOT_AVAILABLE) */
1049 ERROR_DS_DS_REQUIRED, /* c00002b1 (STATUS_DIRECTORY_SERVICE_REQUIRED) */
1050 ERROR_REPARSE_ATTRIBUTE_CONFLICT, /* c00002b2 (STATUS_REPARSE_ATTRIBUTE_CONFLICT) */
1051 0, /* c00002b3 (STATUS_CANT_ENABLE_DENY_ONLY) */
1052 0, /* c00002b4 (STATUS_FLOAT_MULTIPLE_FAULTS) */
1053 0, /* c00002b5 (STATUS_FLOAT_MULTIPLE_TRAPS) */
1054 ERROR_DEVICE_REMOVED, /* c00002b6 (STATUS_DEVICE_REMOVED) */
1055 ERROR_JOURNAL_DELETE_IN_PROGRESS, /* c00002b7 (STATUS_JOURNAL_DELETE_IN_PROGRESS) */
1056 ERROR_JOURNAL_NOT_ACTIVE, /* c00002b8 (STATUS_JOURNAL_NOT_ACTIVE) */
1057 0, /* c00002b9 (STATUS_NOINTERFACE) */
1058 0, /* c00002ba */
1059 0, /* c00002bb */
1060 0, /* c00002bc */
1061 0, /* c00002bd */
1062 0, /* c00002be */
1063 0, /* c00002bf */
1064 0, /* c00002c0 */
1065 ERROR_DS_ADMIN_LIMIT_EXCEEDED, /* c00002c1 (STATUS_DS_ADMIN_LIMIT_EXCEEDED) */
1066 0, /* c00002c2 (STATUS_DRIVER_FAILED_SLEEP) */
1067 ERROR_MUTUAL_AUTH_FAILED, /* c00002c3 (STATUS_MUTUAL_AUTHENTICATION_FAILED) */
1068 0, /* c00002c4 (STATUS_CORRUPT_SYSTEM_FILE) */
1069 ERROR_NOACCESS, /* c00002c5 (STATUS_DATATYPE_MISALIGNMENT_ERROR) */
1070 ERROR_WMI_READ_ONLY, /* c00002c6 (STATUS_WMI_READ_ONLY) */
1071 ERROR_WMI_SET_FAILURE, /* c00002c7 (STATUS_WMI_SET_FAILURE) */
1072 0, /* c00002c8 (STATUS_COMMITMENT_MINIMUM) */
1073 ERROR_REG_NAT_CONSUMPTION, /* c00002c9 (STATUS_REG_NAT_CONSUMPTION) */
1074 ERROR_TRANSPORT_FULL, /* c00002ca (STATUS_TRANSPORT_FULL) */
1075 ERROR_DS_SAM_INIT_FAILURE, /* c00002cb (STATUS_DS_SAM_INIT_FAILURE) */
1076 ERROR_ONLY_IF_CONNECTED, /* c00002cc (STATUS_ONLY_IF_CONNECTED) */
1077 ERROR_DS_SENSITIVE_GROUP_VIOLATION, /* c00002cd (STATUS_DS_SENSITIVE_GROUP_VIOLATION) */
1078 0, /* c00002ce (STATUS_PNP_RESTART_ENUMERATION) */
1079 ERROR_JOURNAL_ENTRY_DELETED, /* c00002cf (STATUS_JOURNAL_ENTRY_DELETED) */
1080 ERROR_DS_CANT_MOD_PRIMARYGROUPID, /* c00002d0 (STATUS_DS_CANT_MOD_PRIMARYGROUPID) */
1081 0, /* c00002d1 (STATUS_SYSTEM_IMAGE_BAD_SIGNATURE) */
1082 0, /* c00002d2 (STATUS_PNP_REBOOT_REQUIRED) */
1083 0, /* c00002d3 (STATUS_POWER_STATE_INVALID) */
1084 ERROR_DS_INVALID_GROUP_TYPE, /* c00002d4 (STATUS_DS_INVALID_GROUP_TYPE) */
1085 ERROR_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN, /* c00002d5 (STATUS_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN) */
1086 ERROR_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN, /* c00002d6 (STATUS_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN) */
1087 ERROR_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER, /* c00002d7 (STATUS_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER) */
1088 ERROR_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER, /* c00002d8 (STATUS_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER) */
1089 ERROR_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER, /* c00002d9 (STATUS_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER) */
1090 ERROR_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER,/* c00002da (STATUS_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER) */
1091 ERROR_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER, /* c00002db (STATUS_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER) */
1092 ERROR_DS_HAVE_PRIMARY_MEMBERS, /* c00002dc (STATUS_DS_HAVE_PRIMARY_MEMBERS) */
1093 ERROR_NOT_SUPPORTED, /* c00002dd (STATUS_WMI_NOT_SUPPORTED) */
1094 0, /* c00002de (STATUS_INSUFFICIENT_POWER) */
1095 ERROR_DS_SAM_NEED_BOOTKEY_PASSWORD, /* c00002df (STATUS_SAM_NEED_BOOTKEY_PASSWORD) */
1096 ERROR_DS_SAM_NEED_BOOTKEY_FLOPPY, /* c00002e0 (STATUS_SAM_NEED_BOOTKEY_FLOPPY) */
1097 ERROR_DS_CANT_START, /* c00002e1 (STATUS_DS_CANT_START) */
1098 ERROR_DS_INIT_FAILURE, /* c00002e2 (STATUS_DS_INIT_FAILURE) */
1099 ERROR_SAM_INIT_FAILURE, /* c00002e3 (STATUS_SAM_INIT_FAILURE) */
1100 ERROR_DS_GC_REQUIRED, /* c00002e4 (STATUS_DS_GC_REQUIRED) */
1101 ERROR_DS_LOCAL_MEMBER_OF_LOCAL_ONLY, /* c00002e5 (STATUS_DS_LOCAL_MEMBER_OF_LOCAL_ONLY) */
1102 ERROR_DS_NO_FPO_IN_UNIVERSAL_GROUPS, /* c00002e6 (STATUS_DS_NO_FPO_IN_UNIVERSAL_GROUPS) */
1103 ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED, /* c00002e7 (STATUS_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED) */
1104 0, /* c00002e8 (STATUS_MULTIPLE_FAULT_VIOLATION) */
1105 ERROR_CURRENT_DOMAIN_NOT_ALLOWED, /* c00002e9 (STATUS_CURRENT_DOMAIN_NOT_ALLOWED) */
1106 ERROR_CANNOT_MAKE, /* c00002ea (STATUS_CANNOT_MAKE) */
1107 0, /* c00002eb (STATUS_SYSTEM_SHUTDOWN) */
1108 ERROR_DS_INIT_FAILURE_CONSOLE, /* c00002ec (STATUS_DS_INIT_FAILURE_CONSOLE) */
1109 ERROR_DS_SAM_INIT_FAILURE_CONSOLE, /* c00002ed (STATUS_DS_SAM_INIT_FAILURE_CONSOLE) */
1110 SEC_E_UNFINISHED_CONTEXT_DELETED, /* c00002ee (STATUS_UNFINISHED_CONTEXT_DELETED) */
1111 SEC_E_NO_TGT_REPLY, /* c00002ef (STATUS_NO_TGT_REPLY) */
1112 ERROR_FILE_NOT_FOUND, /* c00002f0 (STATUS_OBJECTID_NOT_FOUND) */
1113 SEC_E_NO_IP_ADDRESSES, /* c00002f1 (STATUS_NO_IP_ADDRESSES) */
1114 SEC_E_WRONG_CREDENTIAL_HANDLE, /* c00002f2 (STATUS_WRONG_CREDENTIAL_HANDLE) */
1115 SEC_E_CRYPTO_SYSTEM_INVALID, /* c00002f3 (STATUS_CRYPTO_SYSTEM_INVALID) */
1116 SEC_E_MAX_REFERRALS_EXCEEDED, /* c00002f4 (STATUS_MAX_REFERRALS_EXCEEDED) */
1117 SEC_E_MUST_BE_KDC, /* c00002f5 (STATUS_MUST_BE_KDC) */
1118 SEC_E_STRONG_CRYPTO_NOT_SUPPORTED, /* c00002f6 (STATUS_STRONG_CRYPTO_NOT_SUPPORTED) */
1119 SEC_E_TOO_MANY_PRINCIPALS, /* c00002f7 (STATUS_TOO_MANY_PRINCIPALS) */
1120 SEC_E_NO_PA_DATA, /* c00002f8 (STATUS_NO_PA_DATA) */
1121 SEC_E_PKINIT_NAME_MISMATCH, /* c00002f9 (STATUS_PKINIT_NAME_MISMATCH) */
1122 SEC_E_SMARTCARD_LOGON_REQUIRED, /* c00002fa (STATUS_SMARTCARD_LOGON_REQUIRED) */
1123 SEC_E_KDC_INVALID_REQUEST, /* c00002fb (STATUS_KDC_INVALID_REQUEST) */
1124 SEC_E_KDC_UNABLE_TO_REFER, /* c00002fc (STATUS_KDC_UNABLE_TO_REFER) */
1125 SEC_E_KDC_UNKNOWN_ETYPE, /* c00002fd (STATUS_KDC_UNKNOWN_ETYPE) */
1126 ERROR_SHUTDOWN_IN_PROGRESS, /* c00002fe (STATUS_SHUTDOWN_IN_PROGRESS) */
1127 ERROR_SERVER_SHUTDOWN_IN_PROGRESS, /* c00002ff (STATUS_SERVER_SHUTDOWN_IN_PROGRESS) */
1128 ERROR_NOT_SUPPORTED_ON_SBS, /* c0000300 (STATUS_NOT_SUPPORTED_ON_SBS) */
1129 ERROR_WMI_GUID_DISCONNECTED, /* c0000301 (STATUS_WMI_GUID_DISCONNECTED) */
1130 ERROR_WMI_ALREADY_DISABLED, /* c0000302 (STATUS_WMI_ALREADY_DISABLED) */
1131 ERROR_WMI_ALREADY_ENABLED, /* c0000303 (STATUS_WMI_ALREADY_ENABLED) */
1132 ERROR_DISK_TOO_FRAGMENTED, /* c0000304 (STATUS_MFT_TOO_FRAGMENTED) */
1133 STG_E_STATUS_COPY_PROTECTION_FAILURE, /* c0000305 (STATUS_COPY_PROTECTION_FAILURE) */
1134 STG_E_CSS_AUTHENTICATION_FAILURE, /* c0000306 (STATUS_CSS_AUTHENTICATION_FAILURE) */
1135 STG_E_CSS_KEY_NOT_PRESENT, /* c0000307 (STATUS_CSS_KEY_NOT_PRESENT) */
1136 STG_E_CSS_KEY_NOT_ESTABLISHED, /* c0000308 (STATUS_CSS_KEY_NOT_ESTABLISHED) */
1137 STG_E_CSS_SCRAMBLED_SECTOR, /* c0000309 (STATUS_CSS_SCRAMBLED_SECTOR) */
1138 STG_E_CSS_REGION_MISMATCH, /* c000030a (STATUS_CSS_REGION_MISMATCH) */
1139 STG_E_RESETS_EXHAUSTED, /* c000030b (STATUS_CSS_RESETS_EXHAUSTED) */
1140 0, /* c000030c */
1141 0, /* c000030d */
1142 0, /* c000030e */
1143 0, /* c000030f */
1144 0, /* c0000310 */
1145 0, /* c0000311 */
1146 0, /* c0000312 */
1147 0, /* c0000313 */
1148 0, /* c0000314 */
1149 0, /* c0000315 */
1150 0, /* c0000316 */
1151 0, /* c0000317 */
1152 0, /* c0000318 */
1153 0, /* c0000319 */
1154 0, /* c000031a */
1155 0, /* c000031b */
1156 0, /* c000031c */
1157 0, /* c000031d */
1158 0, /* c000031e */
1159 0, /* c000031f */
1160 ERROR_PKINIT_FAILURE, /* c0000320 (STATUS_PKINIT_FAILURE) */
1161 ERROR_SMARTCARD_SUBSYSTEM_FAILURE, /* c0000321 (STATUS_SMARTCARD_SUBSYSTEM_FAILURE) */
1162 SEC_E_NO_KERB_KEY, /* c0000322 (STATUS_NO_KERB_KEY) */
1163 0, /* c0000323 */
1164 0, /* c0000324 */
1165 0, /* c0000325 */
1166 0, /* c0000326 */
1167 0, /* c0000327 */
1168 0, /* c0000328 */
1169 0, /* c0000329 */
1170 0, /* c000032a */
1171 0, /* c000032b */
1172 0, /* c000032c */
1173 0, /* c000032d */
1174 0, /* c000032e */
1175 0, /* c000032f */
1176 0, /* c0000330 */
1177 0, /* c0000331 */
1178 0, /* c0000332 */
1179 0, /* c0000333 */
1180 0, /* c0000334 */
1181 0, /* c0000335 */
1182 0, /* c0000336 */
1183 0, /* c0000337 */
1184 0, /* c0000338 */
1185 0, /* c0000339 */
1186 0, /* c000033a */
1187 0, /* c000033b */
1188 0, /* c000033c */
1189 0, /* c000033d */
1190 0, /* c000033e */
1191 0, /* c000033f */
1192 0, /* c0000340 */
1193 0, /* c0000341 */
1194 0, /* c0000342 */
1195 0, /* c0000343 */
1196 0, /* c0000344 */
1197 0, /* c0000345 */
1198 0, /* c0000346 */
1199 0, /* c0000347 */
1200 0, /* c0000348 */
1201 0, /* c0000349 */
1202 0, /* c000034a */
1203 0, /* c000034b */
1204 0, /* c000034c */
1205 0, /* c000034d */
1206 0, /* c000034e */
1207 0, /* c000034f */
1208 ERROR_HOST_DOWN, /* c0000350 (STATUS_HOST_DOWN) */
1209 SEC_E_UNSUPPORTED_PREAUTH, /* c0000351 (STATUS_UNSUPPORTED_PREAUTH) */
1210 ERROR_EFS_ALG_BLOB_TOO_BIG, /* c0000352 (STATUS_EFS_ALG_BLOB_TOO_BIG) */
1211 0, /* c0000353 (STATUS_PORT_NOT_SET) */
1212 0, /* c0000354 (STATUS_DEBUGGER_INACTIVE) */
1213 0, /* c0000355 (STATUS_DS_VERSION_CHECK_FAILURE) */
1214 ERROR_AUDITING_DISABLED, /* c0000356 (STATUS_AUDITING_DISABLED) */
1215 ERROR_DS_MACHINE_ACCOUNT_CREATED_PRENT4,/* c0000357 (STATUS_PRENT4_MACHINE_ACCOUNT) */
1216 ERROR_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER, /* c0000358 (STATUS_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER) */
1217 ERROR_BAD_EXE_FORMAT, /* c0000359 (STATUS_INVALID_IMAGE_WIN_32) */
1218 ERROR_BAD_EXE_FORMAT, /* c000035a (STATUS_INVALID_IMAGE_WIN_64) */
1219 SEC_E_BAD_BINDINGS, /* c000035b (STATUS_BAD_BINDINGS) */
1220 ERROR_NO_USER_SESSION_KEY, /* c000035c (STATUS_NETWORK_SESSION_EXPIRED) */
1221 0, /* c000035d (STATUS_APPHELP_BLOCK) */
1222 0, /* c000035e (STATUS_ALL_SIDS_FILTERED) */
1223 0, /* c000035f (STATUS_NOT_SAFE_MODE_DRIVER) */
1224 0, /* c0000360 */
1225 ERROR_ACCESS_DISABLED_BY_POLICY, /* c0000361 (STATUS_ACCESS_DISABLED_BY_POLICY_DEFAULT) */
1226 ERROR_ACCESS_DISABLED_BY_POLICY, /* c0000362 (STATUS_ACCESS_DISABLED_BY_POLICY_PATH) */
1227 ERROR_ACCESS_DISABLED_BY_POLICY, /* c0000363 (STATUS_ACCESS_DISABLED_BY_POLICY_PUBLISHER) */
1228 ERROR_ACCESS_DISABLED_BY_POLICY, /* c0000364 (STATUS_ACCESS_DISABLED_BY_POLICY_OTHER) */
1229 0, /* c0000365 (STATUS_FAILED_DRIVER_ENTRY) */
1230 0, /* c0000366 (STATUS_DEVICE_ENUMERATION_ERROR) */
1231 0, /* c0000367 */
1232 0, /* c0000368 (STATUS_MOUNT_POINT_NOT_RESOLVED) */
1233 0, /* c0000369 (STATUS_INVALID_DEVICE_OBJECT_PARAMETER) */
1234 0, /* c000036a (STATUS_MCA_OCCURED) */
1235 ERROR_DRIVER_BLOCKED, /* c000036b (STATUS_DRIVER_BLOCKED_CRITICAL) */
1236 ERROR_DRIVER_BLOCKED, /* c000036c (STATUS_DRIVER_BLOCKED) */
1237 0, /* c000036d (STATUS_DRIVER_DATABASE_ERROR) */
1238 0, /* c000036e (STATUS_SYSTEM_HIVE_TOO_LARGE) */
1239 ERROR_INVALID_IMPORT_OF_NON_DLL, /* c000036f (STATUS_INVALID_IMPORT_OF_NON_DLL) */
1240 0, /* c0000370 */
1241 0, /* c0000371 */
1242 0, /* c0000372 */
1243 0, /* c0000373 */
1244 0, /* c0000374 */
1245 0, /* c0000375 */
1246 0, /* c0000376 */
1247 0, /* c0000377 */
1248 0, /* c0000378 */
1249 0, /* c0000379 */
1250 0, /* c000037a */
1251 0, /* c000037b */
1252 0, /* c000037c */
1253 0, /* c000037d */
1254 0, /* c000037e */
1255 0, /* c000037f */
1256 SCARD_W_WRONG_CHV, /* c0000380 (STATUS_SMARTCARD_WRONG_PIN) */
1257 SCARD_W_CHV_BLOCKED, /* c0000381 (STATUS_SMARTCARD_CARD_BLOCKED) */
1258 SCARD_W_CARD_NOT_AUTHENTICATED, /* c0000382 (STATUS_SMARTCARD_CARD_NOT_AUTHENTICATED) */
1259 SCARD_E_NO_SMARTCARD, /* c0000383 (STATUS_SMARTCARD_NO_CARD) */
1260 NTE_NO_KEY, /* c0000384 (STATUS_SMARTCARD_NO_KEY_CONTAINER) */
1261 SCARD_E_NO_SUCH_CERTIFICATE, /* c0000385 (STATUS_SMARTCARD_NO_CERTIFICATE) */
1262 NTE_BAD_KEYSET, /* c0000386 (STATUS_SMARTCARD_NO_KEYSET) */
1263 SCARD_E_COMM_DATA_LOST, /* c0000387 (STATUS_SMARTCARD_IO_ERROR) */
1264 ERROR_DOWNGRADE_DETECTED, /* c0000388 (STATUS_DOWNGRADE_DETECTED) */
1265 SEC_E_SMARTCARD_CERT_REVOKED, /* c0000389 (STATUS_SMARTCARD_CERT_REVOKED) */
1266 SEC_E_ISSUING_CA_UNTRUSTED, /* c000038a (STATUS_ISSUING_CA_UNTRUSTED) */
1267 SEC_E_REVOCATION_OFFLINE_C, /* c000038b (STATUS_REVOCATION_OFFLINE_C) */
1268 SEC_E_PKINIT_CLIENT_FAILURE, /* c000038c (STATUS_PKINIT_CLIENT_FAILURE) */
1269 SEC_E_SMARTCARD_CERT_EXPIRED /* c000038d (STATUS_SMARTCARD_CERT_EXPIRED) */
1270 };
1271
1272 static const DWORD table_c0020001[99] =
1273 {
1274 RPC_S_INVALID_STRING_BINDING, /* c0020001 (RPC_NT_INVALID_STRING_BINDING) */
1275 RPC_S_WRONG_KIND_OF_BINDING, /* c0020002 (RPC_NT_WRONG_KIND_OF_BINDING) */
1276 ERROR_INVALID_HANDLE, /* c0020003 (RPC_NT_INVALID_BINDING) */
1277 RPC_S_PROTSEQ_NOT_SUPPORTED, /* c0020004 (RPC_NT_PROTSEQ_NOT_SUPPORTED) */
1278 RPC_S_INVALID_RPC_PROTSEQ, /* c0020005 (RPC_NT_INVALID_RPC_PROTSEQ) */
1279 RPC_S_INVALID_STRING_UUID, /* c0020006 (RPC_NT_INVALID_STRING_UUID) */
1280 RPC_S_INVALID_ENDPOINT_FORMAT, /* c0020007 (RPC_NT_INVALID_ENDPOINT_FORMAT) */
1281 RPC_S_INVALID_NET_ADDR, /* c0020008 (RPC_NT_INVALID_NET_ADDR) */
1282 RPC_S_NO_ENDPOINT_FOUND, /* c0020009 (RPC_NT_NO_ENDPOINT_FOUND) */
1283 RPC_S_INVALID_TIMEOUT, /* c002000a (RPC_NT_INVALID_TIMEOUT) */
1284 RPC_S_OBJECT_NOT_FOUND, /* c002000b (RPC_NT_OBJECT_NOT_FOUND) */
1285 RPC_S_ALREADY_REGISTERED, /* c002000c (RPC_NT_ALREADY_REGISTERED) */
1286 RPC_S_TYPE_ALREADY_REGISTERED, /* c002000d (RPC_NT_TYPE_ALREADY_REGISTERED) */
1287 RPC_S_ALREADY_LISTENING, /* c002000e (RPC_NT_ALREADY_LISTENING) */
1288 RPC_S_NO_PROTSEQS_REGISTERED, /* c002000f (RPC_NT_NO_PROTSEQS_REGISTERED) */
1289 RPC_S_NOT_LISTENING, /* c0020010 (RPC_NT_NOT_LISTENING) */
1290 RPC_S_UNKNOWN_MGR_TYPE, /* c0020011 (RPC_NT_UNKNOWN_MGR_TYPE) */
1291 RPC_S_UNKNOWN_IF, /* c0020012 (RPC_NT_UNKNOWN_IF) */
1292 RPC_S_NO_BINDINGS, /* c0020013 (RPC_NT_NO_BINDINGS) */
1293 RPC_S_NO_PROTSEQS, /* c0020014 (RPC_NT_NO_PROTSEQS) */
1294 RPC_S_CANT_CREATE_ENDPOINT, /* c0020015 (RPC_NT_CANT_CREATE_ENDPOINT) */
1295 RPC_S_OUT_OF_RESOURCES, /* c0020016 (RPC_NT_OUT_OF_RESOURCES) */
1296 RPC_S_SERVER_UNAVAILABLE, /* c0020017 (RPC_NT_SERVER_UNAVAILABLE) */
1297 RPC_S_SERVER_TOO_BUSY, /* c0020018 (RPC_NT_SERVER_TOO_BUSY) */
1298 RPC_S_INVALID_NETWORK_OPTIONS, /* c0020019 (RPC_NT_INVALID_NETWORK_OPTIONS) */
1299 RPC_S_NO_CALL_ACTIVE, /* c002001a (RPC_NT_NO_CALL_ACTIVE) */
1300 RPC_S_CALL_FAILED, /* c002001b (RPC_NT_CALL_FAILED) */
1301 RPC_S_CALL_FAILED_DNE, /* c002001c (RPC_NT_CALL_FAILED_DNE) */
1302 RPC_S_PROTOCOL_ERROR, /* c002001d (RPC_NT_PROTOCOL_ERROR) */
1303 0, /* c002001e */
1304 RPC_S_UNSUPPORTED_TRANS_SYN, /* c002001f (RPC_NT_UNSUPPORTED_TRANS_SYN) */
1305 0, /* c0020020 */
1306 RPC_S_UNSUPPORTED_TYPE, /* c0020021 (RPC_NT_UNSUPPORTED_TYPE) */
1307 RPC_S_INVALID_TAG, /* c0020022 (RPC_NT_INVALID_TAG) */
1308 RPC_S_INVALID_BOUND, /* c0020023 (RPC_NT_INVALID_BOUND) */
1309 RPC_S_NO_ENTRY_NAME, /* c0020024 (RPC_NT_NO_ENTRY_NAME) */
1310 RPC_S_INVALID_NAME_SYNTAX, /* c0020025 (RPC_NT_INVALID_NAME_SYNTAX) */
1311 RPC_S_UNSUPPORTED_NAME_SYNTAX, /* c0020026 (RPC_NT_UNSUPPORTED_NAME_SYNTAX) */
1312 0, /* c0020027 */
1313 RPC_S_UUID_NO_ADDRESS, /* c0020028 (RPC_NT_UUID_NO_ADDRESS) */
1314 RPC_S_DUPLICATE_ENDPOINT, /* c0020029 (RPC_NT_DUPLICATE_ENDPOINT) */
1315 RPC_S_UNKNOWN_AUTHN_TYPE, /* c002002a (RPC_NT_UNKNOWN_AUTHN_TYPE) */
1316 RPC_S_MAX_CALLS_TOO_SMALL, /* c002002b (RPC_NT_MAX_CALLS_TOO_SMALL) */
1317 RPC_S_STRING_TOO_LONG, /* c002002c (RPC_NT_STRING_TOO_LONG) */
1318 RPC_S_PROTSEQ_NOT_FOUND, /* c002002d (RPC_NT_PROTSEQ_NOT_FOUND) */
1319 RPC_S_PROCNUM_OUT_OF_RANGE, /* c002002e (RPC_NT_PROCNUM_OUT_OF_RANGE) */
1320 RPC_S_BINDING_HAS_NO_AUTH, /* c002002f (RPC_NT_BINDING_HAS_NO_AUTH) */
1321 RPC_S_UNKNOWN_AUTHN_SERVICE, /* c0020030 (RPC_NT_UNKNOWN_AUTHN_SERVICE) */
1322 RPC_S_UNKNOWN_AUTHN_LEVEL, /* c0020031 (RPC_NT_UNKNOWN_AUTHN_LEVEL) */
1323 RPC_S_INVALID_AUTH_IDENTITY, /* c0020032 (RPC_NT_INVALID_AUTH_IDENTITY) */
1324 RPC_S_UNKNOWN_AUTHZ_SERVICE, /* c0020033 (RPC_NT_UNKNOWN_AUTHZ_SERVICE) */
1325 EPT_S_INVALID_ENTRY, /* c0020034 (EPT_NT_INVALID_ENTRY) */
1326 EPT_S_CANT_PERFORM_OP, /* c0020035 (EPT_NT_CANT_PERFORM_OP) */
1327 EPT_S_NOT_REGISTERED, /* c0020036 (EPT_NT_NOT_REGISTERED) */
1328 RPC_S_NOTHING_TO_EXPORT, /* c0020037 (RPC_NT_NOTHING_TO_EXPORT) */
1329 RPC_S_INCOMPLETE_NAME, /* c0020038 (RPC_NT_INCOMPLETE_NAME) */
1330 RPC_S_INVALID_VERS_OPTION, /* c0020039 (RPC_NT_INVALID_VERS_OPTION) */
1331 RPC_S_NO_MORE_MEMBERS, /* c002003a (RPC_NT_NO_MORE_MEMBERS) */
1332 RPC_S_NOT_ALL_OBJS_UNEXPORTED, /* c002003b (RPC_NT_NOT_ALL_OBJS_UNEXPORTED) */
1333 RPC_S_INTERFACE_NOT_FOUND, /* c002003c (RPC_NT_INTERFACE_NOT_FOUND) */
1334 RPC_S_ENTRY_ALREADY_EXISTS, /* c002003d (RPC_NT_ENTRY_ALREADY_EXISTS) */
1335 RPC_S_ENTRY_NOT_FOUND, /* c002003e (RPC_NT_ENTRY_NOT_FOUND) */
1336 RPC_S_NAME_SERVICE_UNAVAILABLE, /* c002003f (RPC_NT_NAME_SERVICE_UNAVAILABLE) */
1337 RPC_S_INVALID_NAF_ID, /* c0020040 (RPC_NT_INVALID_NAF_ID) */
1338 RPC_S_CANNOT_SUPPORT, /* c0020041 (RPC_NT_CANNOT_SUPPORT) */
1339 RPC_S_NO_CONTEXT_AVAILABLE, /* c0020042 (RPC_NT_NO_CONTEXT_AVAILABLE) */
1340 RPC_S_INTERNAL_ERROR, /* c0020043 (RPC_NT_INTERNAL_ERROR) */
1341 RPC_S_ZERO_DIVIDE, /* c0020044 (RPC_NT_ZERO_DIVIDE) */
1342 RPC_S_ADDRESS_ERROR, /* c0020045 (RPC_NT_ADDRESS_ERROR) */
1343 RPC_S_FP_DIV_ZERO, /* c0020046 (RPC_NT_FP_DIV_ZERO) */
1344 RPC_S_FP_UNDERFLOW, /* c0020047 (RPC_NT_FP_UNDERFLOW) */
1345 RPC_S_FP_OVERFLOW, /* c0020048 (RPC_NT_FP_OVERFLOW) */
1346 RPC_S_CALL_IN_PROGRESS, /* c0020049 (RPC_NT_CALL_IN_PROGRESS) */
1347 RPC_S_NO_MORE_BINDINGS, /* c002004a (RPC_NT_NO_MORE_BINDINGS) */
1348 RPC_S_GROUP_MEMBER_NOT_FOUND, /* c002004b (RPC_NT_GROUP_MEMBER_NOT_FOUND) */
1349 EPT_S_CANT_CREATE, /* c002004c (EPT_NT_CANT_CREATE) */
1350 RPC_S_INVALID_OBJECT, /* c002004d (RPC_NT_INVALID_OBJECT) */
1351 0, /* c002004e */
1352 RPC_S_NO_INTERFACES, /* c002004f (RPC_NT_NO_INTERFACES) */
1353 RPC_S_CALL_CANCELLED, /* c0020050 (RPC_NT_CALL_CANCELLED) */
1354 RPC_S_BINDING_INCOMPLETE, /* c0020051 (RPC_NT_BINDING_INCOMPLETE) */
1355 RPC_S_COMM_FAILURE, /* c0020052 (RPC_NT_COMM_FAILURE) */
1356 RPC_S_UNSUPPORTED_AUTHN_LEVEL, /* c0020053 (RPC_NT_UNSUPPORTED_AUTHN_LEVEL) */
1357 RPC_S_NO_PRINC_NAME, /* c0020054 (RPC_NT_NO_PRINC_NAME) */
1358 RPC_S_NOT_RPC_ERROR, /* c0020055 (RPC_NT_NOT_RPC_ERROR) */
1359 0, /* c0020056 */
1360 RPC_S_SEC_PKG_ERROR, /* c0020057 (RPC_NT_SEC_PKG_ERROR) */
1361 RPC_S_NOT_CANCELLED, /* c0020058 (RPC_NT_NOT_CANCELLED) */
1362 0, /* c0020059 */
1363 0, /* c002005a */
1364 0, /* c002005b */
1365 0, /* c002005c */
1366 0, /* c002005d */
1367 0, /* c002005e */
1368 0, /* c002005f */
1369 0, /* c0020060 */
1370 0, /* c0020061 */
1371 RPC_S_INVALID_ASYNC_HANDLE, /* c0020062 (RPC_NT_INVALID_ASYNC_HANDLE) */
1372 RPC_S_INVALID_ASYNC_CALL /* c0020063 (RPC_NT_INVALID_ASYNC_CALL) */
1373 };
1374
1375 static const DWORD table_c0030001[12] =
1376 {
1377 RPC_X_NO_MORE_ENTRIES, /* c0030001 (RPC_NT_NO_MORE_ENTRIES) */
1378 RPC_X_SS_CHAR_TRANS_OPEN_FAIL, /* c0030002 (RPC_NT_SS_CHAR_TRANS_OPEN_FAIL) */
1379 RPC_X_SS_CHAR_TRANS_SHORT_FILE, /* c0030003 (RPC_NT_SS_CHAR_TRANS_SHORT_FILE) */
1380 ERROR_INVALID_HANDLE, /* c0030004 (RPC_NT_SS_IN_NULL_CONTEXT) */
1381 ERROR_INVALID_HANDLE, /* c0030005 (RPC_NT_SS_CONTEXT_MISMATCH) */
1382 RPC_X_SS_CONTEXT_DAMAGED, /* c0030006 (RPC_NT_SS_CONTEXT_DAMAGED) */
1383 RPC_X_SS_HANDLES_MISMATCH, /* c0030007 (RPC_NT_SS_HANDLES_MISMATCH) */
1384 RPC_X_SS_CANNOT_GET_CALL_HANDLE, /* c0030008 (RPC_NT_SS_CANNOT_GET_CALL_HANDLE) */
1385 RPC_X_NULL_REF_POINTER, /* c0030009 (RPC_NT_NULL_REF_POINTER) */
1386 RPC_X_ENUM_VALUE_OUT_OF_RANGE, /* c003000a (RPC_NT_ENUM_VALUE_OUT_OF_RANGE) */
1387 RPC_X_BYTE_COUNT_TOO_SMALL, /* c003000b (RPC_NT_BYTE_COUNT_TOO_SMALL) */
1388 RPC_X_BAD_STUB_DATA /* c003000c (RPC_NT_BAD_STUB_DATA) */
1389 };
1390
1391 static const DWORD table_c0030059[9] =
1392 {
1393 RPC_X_INVALID_ES_ACTION, /* c0030059 (RPC_NT_INVALID_ES_ACTION) */
1394 RPC_X_WRONG_ES_VERSION, /* c003005a (RPC_NT_WRONG_ES_VERSION) */
1395 RPC_X_WRONG_STUB_VERSION, /* c003005b (RPC_NT_WRONG_STUB_VERSION) */
1396 RPC_X_INVALID_PIPE_OBJECT, /* c003005c (RPC_NT_INVALID_PIPE_OBJECT) */
1397 RPC_X_WRONG_PIPE_ORDER, /* c003005d (RPC_NT_INVALID_PIPE_OPERATION) */
1398 RPC_X_WRONG_PIPE_VERSION, /* c003005e (RPC_NT_WRONG_PIPE_VERSION) */
1399 RPC_X_PIPE_CLOSED, /* c003005f (RPC_NT_PIPE_CLOSED) */
1400 RPC_X_PIPE_DISCIPLINE_ERROR, /* c0030060 (RPC_NT_PIPE_DISCIPLINE_ERROR) */
1401 RPC_X_PIPE_EMPTY /* c0030061 (RPC_NT_PIPE_EMPTY) */
1402 };
1403
1404 static const DWORD table_c00a0001[54] =
1405 {
1406 ERROR_CTX_WINSTATION_NAME_INVALID, /* c00a0001 (STATUS_CTX_WINSTATION_NAME_INVALID) */
1407 ERROR_CTX_INVALID_PD, /* c00a0002 (STATUS_CTX_INVALID_PD) */
1408 ERROR_CTX_PD_NOT_FOUND, /* c00a0003 (STATUS_CTX_PD_NOT_FOUND) */
1409 0, /* c00a0004 */
1410 0, /* c00a0005 */
1411 ERROR_CTX_CLOSE_PENDING, /* c00a0006 (STATUS_CTX_CLOSE_PENDING) */
1412 ERROR_CTX_NO_OUTBUF, /* c00a0007 (STATUS_CTX_NO_OUTBUF) */
1413 ERROR_CTX_MODEM_INF_NOT_FOUND, /* c00a0008 (STATUS_CTX_MODEM_INF_NOT_FOUND) */
1414 ERROR_CTX_INVALID_MODEMNAME, /* c00a0009 (STATUS_CTX_INVALID_MODEMNAME) */
1415 ERROR_CTX_MODEM_RESPONSE_ERROR, /* c00a000a (STATUS_CTX_RESPONSE_ERROR) */
1416 ERROR_CTX_MODEM_RESPONSE_TIMEOUT, /* c00a000b (STATUS_CTX_MODEM_RESPONSE_TIMEOUT) */
1417 ERROR_CTX_MODEM_RESPONSE_NO_CARRIER, /* c00a000c (STATUS_CTX_MODEM_RESPONSE_NO_CARRIER) */
1418 ERROR_CTX_MODEM_RESPONSE_NO_DIALTONE, /* c00a000d (STATUS_CTX_MODEM_RESPONSE_NO_DIALTONE) */
1419 ERROR_CTX_MODEM_RESPONSE_BUSY, /* c00a000e (STATUS_CTX_MODEM_RESPONSE_BUSY) */
1420 ERROR_CTX_MODEM_RESPONSE_VOICE, /* c00a000f (STATUS_CTX_MODEM_RESPONSE_VOICE) */
1421 ERROR_CTX_TD_ERROR, /* c00a0010 (STATUS_CTX_TD_ERROR) */
1422 0, /* c00a0011 */
1423 ERROR_CTX_LICENSE_CLIENT_INVALID, /* c00a0012 (STATUS_CTX_LICENSE_CLIENT_INVALID) */
1424 ERROR_CTX_LICENSE_NOT_AVAILABLE, /* c00a0013 (STATUS_CTX_LICENSE_NOT_AVAILABLE) */
1425 ERROR_CTX_LICENSE_EXPIRED, /* c00a0014 (STATUS_CTX_LICENSE_EXPIRED) */
1426 ERROR_CTX_WINSTATION_NOT_FOUND, /* c00a0015 (STATUS_CTX_WINSTATION_NOT_FOUND) */
1427 ERROR_CTX_WINSTATION_ALREADY_EXISTS, /* c00a0016 (STATUS_CTX_WINSTATION_NAME_COLLISION) */
1428 ERROR_CTX_WINSTATION_BUSY, /* c00a0017 (STATUS_CTX_WINSTATION_BUSY) */
1429 ERROR_CTX_BAD_VIDEO_MODE, /* c00a0018 (STATUS_CTX_BAD_VIDEO_MODE) */
1430 0, /* c00a0019 */
1431 0, /* c00a001a */
1432 0, /* c00a001b */
1433 0, /* c00a001c */
1434 0, /* c00a001d */
1435 0, /* c00a001e */
1436 0, /* c00a001f */
1437 0, /* c00a0020 */
1438 0, /* c00a0021 */
1439 ERROR_CTX_GRAPHICS_INVALID, /* c00a0022 (STATUS_CTX_GRAPHICS_INVALID) */
1440 0, /* c00a0023 */
1441 ERROR_CTX_NOT_CONSOLE, /* c00a0024 (STATUS_CTX_NOT_CONSOLE) */
1442 0, /* c00a0025 */
1443 ERROR_CTX_CLIENT_QUERY_TIMEOUT, /* c00a0026 (STATUS_CTX_CLIENT_QUERY_TIMEOUT) */
1444 ERROR_CTX_CONSOLE_DISCONNECT, /* c00a0027 (STATUS_CTX_CONSOLE_DISCONNECT) */
1445 ERROR_CTX_CONSOLE_CONNECT, /* c00a0028 (STATUS_CTX_CONSOLE_CONNECT) */
1446 0, /* c00a0029 */
1447 ERROR_CTX_SHADOW_DENIED, /* c00a002a (STATUS_CTX_SHADOW_DENIED) */
1448 ERROR_CTX_WINSTATION_ACCESS_DENIED, /* c00a002b (STATUS_CTX_WINSTATION_ACCESS_DENIED) */
1449 0, /* c00a002c */
1450 0, /* c00a002d */
1451 ERROR_CTX_INVALID_WD, /* c00a002e (STATUS_CTX_INVALID_WD) */
1452 ERROR_CTX_WD_NOT_FOUND, /* c00a002f (STATUS_CTX_WD_NOT_FOUND) */
1453 ERROR_CTX_SHADOW_INVALID, /* c00a0030 (STATUS_CTX_SHADOW_INVALID) */
1454 ERROR_CTX_SHADOW_DISABLED, /* c00a0031 (STATUS_CTX_SHADOW_DISABLED) */
1455 0, /* c00a0032 (STATUS_RDP_PROTOCOL_ERROR) */
1456 ERROR_CTX_CLIENT_LICENSE_NOT_SET, /* c00a0033 (STATUS_CTX_CLIENT_LICENSE_NOT_SET) */
1457 ERROR_CTX_CLIENT_LICENSE_IN_USE, /* c00a0034 (STATUS_CTX_CLIENT_LICENSE_IN_USE) */
1458 ERROR_CTX_SHADOW_ENDED_BY_MODE_CHANGE, /* c00a0035 (STATUS_CTX_SHADOW_ENDED_BY_MODE_CHANGE) */
1459 ERROR_CTX_SHADOW_NOT_RUNNING /* c00a0036 (STATUS_CTX_SHADOW_NOT_RUNNING) */
1460 };
1461
1462 static const DWORD table_c0130001[22] =
1463 {
1464 ERROR_CLUSTER_INVALID_NODE, /* c0130001 (STATUS_CLUSTER_INVALID_NODE) */
1465 ERROR_CLUSTER_NODE_EXISTS, /* c0130002 (STATUS_CLUSTER_NODE_EXISTS) */
1466 ERROR_CLUSTER_JOIN_IN_PROGRESS, /* c0130003 (STATUS_CLUSTER_JOIN_IN_PROGRESS) */
1467 ERROR_CLUSTER_NODE_NOT_FOUND, /* c0130004 (STATUS_CLUSTER_NODE_NOT_FOUND) */
1468 ERROR_CLUSTER_LOCAL_NODE_NOT_FOUND, /* c0130005 (STATUS_CLUSTER_LOCAL_NODE_NOT_FOUND) */
1469 ERROR_CLUSTER_NETWORK_EXISTS, /* c0130006 (STATUS_CLUSTER_NETWORK_EXISTS) */
1470 ERROR_CLUSTER_NETWORK_NOT_FOUND, /* c0130007 (STATUS_CLUSTER_NETWORK_NOT_FOUND) */
1471 ERROR_CLUSTER_NETINTERFACE_EXISTS, /* c0130008 (STATUS_CLUSTER_NETINTERFACE_EXISTS) */
1472 ERROR_CLUSTER_NETINTERFACE_NOT_FOUND, /* c0130009 (STATUS_CLUSTER_NETINTERFACE_NOT_FOUND) */
1473 ERROR_CLUSTER_INVALID_REQUEST, /* c013000a (STATUS_CLUSTER_INVALID_REQUEST) */
1474 ERROR_CLUSTER_INVALID_NETWORK_PROVIDER, /* c013000b (STATUS_CLUSTER_INVALID_NETWORK_PROVIDER) */
1475 ERROR_CLUSTER_NODE_DOWN, /* c013000c (STATUS_CLUSTER_NODE_DOWN) */
1476 ERROR_CLUSTER_NODE_UNREACHABLE, /* c013000d (STATUS_CLUSTER_NODE_UNREACHABLE) */
1477 ERROR_CLUSTER_NODE_NOT_MEMBER, /* c013000e (STATUS_CLUSTER_NODE_NOT_MEMBER) */
1478 ERROR_CLUSTER_JOIN_NOT_IN_PROGRESS, /* c013000f (STATUS_CLUSTER_JOIN_NOT_IN_PROGRESS) */
1479 ERROR_CLUSTER_INVALID_NETWORK, /* c0130010 (STATUS_CLUSTER_INVALID_NETWORK) */
1480 0, /* c0130011 (STATUS_CLUSTER_NO_NET_ADAPTERS) */
1481 ERROR_CLUSTER_NODE_UP, /* c0130012 (STATUS_CLUSTER_NODE_UP) */
1482 ERROR_CLUSTER_NODE_PAUSED, /* c0130013 (STATUS_CLUSTER_NODE_PAUSED) */
1483 ERROR_CLUSTER_NODE_NOT_PAUSED, /* c0130014 (STATUS_CLUSTER_NODE_NOT_PAUSED) */
1484 ERROR_CLUSTER_NO_SECURITY_CONTEXT, /* c0130015 (STATUS_CLUSTER_NO_SECURITY_CONTEXT) */
1485 ERROR_CLUSTER_NETWORK_NOT_INTERNAL /* c0130016 (STATUS_CLUSTER_NETWORK_NOT_INTERNAL) */
1486 };
1487
1488 static const DWORD table_c0150001[39] =
1489 {
1490 ERROR_SXS_SECTION_NOT_FOUND, /* c0150001 (STATUS_SXS_SECTION_NOT_FOUND) */
1491 ERROR_SXS_CANT_GEN_ACTCTX, /* c0150002 (STATUS_SXS_CANT_GEN_ACTCTX) */
1492 ERROR_SXS_INVALID_ACTCTXDATA_FORMAT, /* c0150003 (STATUS_SXS_INVALID_ACTCTXDATA_FORMAT) */
1493 ERROR_SXS_ASSEMBLY_NOT_FOUND, /* c0150004 (STATUS_SXS_ASSEMBLY_NOT_FOUND) */
1494 ERROR_SXS_MANIFEST_FORMAT_ERROR, /* c0150005 (STATUS_SXS_MANIFEST_FORMAT_ERROR) */
1495 ERROR_SXS_MANIFEST_PARSE_ERROR, /* c0150006 (STATUS_SXS_MANIFEST_PARSE_ERROR) */
1496 ERROR_SXS_ACTIVATION_CONTEXT_DISABLED, /* c0150007 (STATUS_SXS_ACTIVATION_CONTEXT_DISABLED) */
1497 ERROR_SXS_KEY_NOT_FOUND, /* c0150008 (STATUS_SXS_KEY_NOT_FOUND) */
1498 ERROR_SXS_VERSION_CONFLICT, /* c0150009 (STATUS_SXS_VERSION_CONFLICT) */
1499 ERROR_SXS_WRONG_SECTION_TYPE, /* c015000a (STATUS_SXS_WRONG_SECTION_TYPE) */
1500 ERROR_SXS_THREAD_QUERIES_DISABLED, /* c015000b (STATUS_SXS_THREAD_QUERIES_DISABLED) */
1501 ERROR_SXS_ASSEMBLY_MISSING, /* c015000c (STATUS_SXS_ASSEMBLY_MISSING) */
1502 0, /* c015000d */
1503 ERROR_SXS_PROCESS_DEFAULT_ALREADY_SET, /* c015000e (STATUS_SXS_PROCESS_DEFAULT_ALREADY_SET) */
1504 ERROR_SXS_EARLY_DEACTIVATION, /* c015000f (STATUS_SXS_EARLY_DEACTIVATION) */
1505 ERROR_SXS_INVALID_DEACTIVATION, /* c0150010 (STATUS_SXS_INVALID_DEACTIVATION) */
1506 ERROR_SXS_MULTIPLE_DEACTIVATION, /* c0150011 (STATUS_SXS_MULTIPLE_DEACTIVATION) */
1507 ERROR_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY, /* c0150012 (STATUS_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY) */
1508 ERROR_SXS_PROCESS_TERMINATION_REQUESTED, /* c0150013 (STATUS_SXS_PROCESS_TERMINATION_REQUESTED) */
1509 ERROR_SXS_CORRUPT_ACTIVATION_STACK, /* c0150014 (STATUS_SXS_CORRUPT_ACTIVATION_STACK) */
1510 ERROR_SXS_CORRUPTION, /* c0150015 (STATUS_SXS_CORRUPTION) */
1511 ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE, /* c0150016 (STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE) */
1512 ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME, /* c0150017 (STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME) */
1513 ERROR_SXS_IDENTITY_DUPLICATE_ATTRIBUTE, /* c0150018 (STATUS_SXS_IDENTITY_DUPLICATE_ATTRIBUTE) */
1514 ERROR_SXS_IDENTITY_PARSE_ERROR, /* c0150019 (STATUS_SXS_IDENTITY_PARSE_ERROR) */
1515 ERROR_SXS_COMPONENT_STORE_CORRUPT, /* c015001a (STATUS_SXS_COMPONENT_STORE_CORRUPT) */
1516 ERROR_SXS_FILE_HASH_MISMATCH, /* c015001b (STATUS_SXS_FILE_HASH_MISMATCH) */
1517 ERROR_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT, /* c015001c (STATUS_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT) */
1518 ERROR_SXS_IDENTITIES_DIFFERENT, /* c015001d (STATUS_SXS_IDENTITIES_DIFFERENT) */
1519 ERROR_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT, /* c015001e (STATUS_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT) */
1520 ERROR_SXS_FILE_NOT_PART_OF_ASSEMBLY, /* c015001f (STATUS_SXS_FILE_NOT_PART_OF_ASSEMBLY) */
1521 ERROR_ADVANCED_INSTALLER_FAILED, /* c0150020 (STATUS_ADVANCED_INSTALLER_FAILED) */
1522 ERROR_XML_ENCODING_MISMATCH, /* c0150021 (STATUS_XML_ENCODING_MISMATCH) */
1523 ERROR_SXS_MANIFEST_TOO_BIG, /* c0150022 (STATUS_SXS_MANIFEST_TOO_BIG) */
1524 ERROR_SXS_SETTING_NOT_REGISTERED, /* c0150023 (STATUS_SXS_SETTING_NOT_REGISTERED) */
1525 ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE, /* c0150024 (STATUS_SXS_TRANSACTION_CLOSURE_INCOMPLETE) */
1526 ERROR_SMI_PRIMITIVE_INSTALLER_FAILED, /* c0150025 (STATUS_SXS_PRIMITIVE_INSTALLER_FAILED) */
1527 ERROR_GENERIC_COMMAND_FAILED, /* c0150026 (STATUS_GENERIC_COMMAND_FAILED) */
1528 ERROR_SXS_FILE_HASH_MISSING /* c0150027 (STATUS_SXS_FILE_HASH_MISSING) */
1529 };
1530
1531 static const struct error_table error_table[] =
1532 {
1533 { 0x00000102, 0x00000122, table_00000102 },
1534 { 0x40000002, 0x40000026, table_40000002 },
1535 { 0x40000370, 0x40000371, table_40000370 },
1536 { 0x40020056, 0x40020057, table_40020056 },
1537 { 0x400200af, 0x400200b0, table_400200af },
1538 { 0x80000001, 0x80000028, table_80000001 },
1539 { 0x80000288, 0x8000028a, table_80000288 },
1540 { 0x80090300, 0x80090348, table_80090300 },
1541 { 0x80092010, 0x80092014, table_80092010 },
1542 { 0x80096004, 0x80096005, table_80096004 },
1543 { 0x80130001, 0x80130006, table_80130001 },
1544 { 0xc0000001, 0xc000019c, table_c0000001 },
1545 { 0xc0000202, 0xc000038e, table_c0000202 },
1546 { 0xc0020001, 0xc0020064, table_c0020001 },
1547 { 0xc0030001, 0xc003000d, table_c0030001 },
1548 { 0xc0030059, 0xc0030062, table_c0030059 },
1549 { 0xc00a0001, 0xc00a0037, table_c00a0001 },
1550 { 0xc0130001, 0xc0130017, table_c0130001 },
1551 { 0xc0150001, 0xc0150028, table_c0150001 },
1552 { 0, 0, NULL } /* last entry */
1553 };