kernel32: Add a bunch of tests for protections accepted by VirtualAlloc, make it...
[wine] / dlls / ntdll / tests / error.c
1 /*
2  * Unit tests for RtlNtStatusToDosError function
3  *
4  * Copyright (c) 2002 Andriy Palamarchuk
5  * Copyright (c) 2010 AndrĂ© Hentschel
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20  */
21
22 #include <stdarg.h>
23 #include <stdio.h>
24
25 #include "ntstatus.h"
26 #define WIN32_NO_STATUS
27
28 #include "wine/test.h"
29
30 #include "windef.h"
31 #include "winbase.h"
32 #include "rpcnterr.h"
33 #include "winreg.h"
34 #include "winternl.h"
35
36 /* FIXME!!! this test checks only mappings, defined by MSDN
37  * It is necessary to add other mappings and to test them
38  * up to the latest Windows platform.
39  *
40  * Some Windows platforms don't know about all the mappings, and in such
41  * cases they return somewhat strange results (Win98) or a generic error
42  * like ERROR_MR_MID_NOT_FOUND (NT4). Our tests have to know about these to
43  * not fail, but we would very much prefer Wine not to return such garbage.
44  * So you can pass the 'strict' option to this test to force it to only check
45  * results against the first listed value. This test should pass in strict
46  * mode on the latest Windows platform and in Wine.
47  * (of course older Windows platforms will fail to pass the strict mode)
48  */
49
50 static ULONG (WINAPI *pRtlNtStatusToDosError)(NTSTATUS Status);
51 static int strict;
52
53 static int prepare_test(void)
54 {
55     HMODULE ntdll;
56     int argc;
57     char** argv;
58
59     ntdll = LoadLibraryA("ntdll.dll");
60     pRtlNtStatusToDosError = (void*)GetProcAddress(ntdll, "RtlNtStatusToDosError");
61     if (!pRtlNtStatusToDosError)
62     {
63         win_skip("RtlNtStatusToDosError is not available\n");
64         return 0;
65     }
66
67     argc = winetest_get_mainargs(&argv);
68     strict=(argc >= 3 && strcmp(argv[2],"strict")==0);
69     return 1;
70 }
71
72 static void cmp_call(NTSTATUS win_nt, ULONG win32, const char* message)
73 {
74     ULONG err;
75
76     err = pRtlNtStatusToDosError(win_nt);
77     ok(err == win32,
78        "%s (%x): got %u, expected %u\n",
79             message, win_nt, err, win32);
80 }
81
82 static void cmp_call2(NTSTATUS win_nt, ULONG win32, const char* message)
83 {
84     ULONG err;
85
86     err = pRtlNtStatusToDosError(win_nt);
87     ok(err == win32 ||
88        (!strict && err == ERROR_MR_MID_NOT_FOUND),
89        "%s (%x): got %u, expected %u (or MID_NOT_FOUND)\n",
90        message, win_nt, err, win32);
91 }
92
93 static void cmp_call3(NTSTATUS win_nt, ULONG win32_1, ULONG win32_2, const char* message)
94 {
95     ULONG err;
96
97     err = pRtlNtStatusToDosError(win_nt);
98     ok(err == win32_1 || (!strict && err == win32_2),
99        "%s (%x): got %u, expected %u or %u\n",
100             message, win_nt, err, win32_1, win32_2);
101 }
102
103 static void cmp_call4(NTSTATUS win_nt, ULONG win32_1, ULONG win32_2, const char* message)
104 {
105     ULONG err;
106
107     err = pRtlNtStatusToDosError(win_nt);
108     ok(err == win32_1 ||
109        (!strict && (err == win32_2 || err == ERROR_MR_MID_NOT_FOUND)),
110        "%s (%x): got %u, expected %u or %u\n",
111             message, win_nt, err, win32_1, win32_2);
112 }
113
114 #define cmp(status, error) \
115         cmp_call(status, error, #status)
116 #define cmp2(status, error) \
117         cmp_call2(status, error, #status)
118 #define cmp3(status, error1, error2) \
119         cmp_call3(status, error1, error2, #status)
120 #define cmp4(status, error1, error2) \
121         cmp_call4(status, error1, error2, #status)
122
123 static void run_error_tests(void)
124 {
125     cmp(STATUS_DATATYPE_MISALIGNMENT,            ERROR_NOACCESS);
126     cmp(STATUS_ACCESS_VIOLATION,                 ERROR_NOACCESS);
127     cmp2(STATUS_DATATYPE_MISALIGNMENT_ERROR,     ERROR_NOACCESS);
128     cmp(STATUS_CTL_FILE_NOT_SUPPORTED,           ERROR_NOT_SUPPORTED);
129     cmp(STATUS_PORT_ALREADY_SET,                 ERROR_INVALID_PARAMETER);
130     cmp(STATUS_SECTION_NOT_IMAGE,                ERROR_INVALID_PARAMETER);
131     cmp(STATUS_BAD_WORKING_SET_LIMIT,            ERROR_INVALID_PARAMETER);
132     cmp(STATUS_WORKING_SET_LIMIT_RANGE,          ERROR_INVALID_PARAMETER);
133     cmp(STATUS_INCOMPATIBLE_FILE_MAP,            ERROR_INVALID_PARAMETER);
134     cmp(STATUS_PORT_DISCONNECTED,                ERROR_INVALID_HANDLE);
135     cmp(STATUS_NOT_LOCKED,                       ERROR_NOT_LOCKED);
136     cmp(STATUS_NOT_MAPPED_VIEW,                  ERROR_INVALID_ADDRESS);
137     cmp(STATUS_UNABLE_TO_FREE_VM,                ERROR_INVALID_PARAMETER);
138     cmp(STATUS_UNABLE_TO_DELETE_SECTION,         ERROR_INVALID_PARAMETER);
139     cmp(STATUS_MORE_PROCESSING_REQUIRED,         ERROR_MORE_DATA);
140     cmp(STATUS_INVALID_CID,                      ERROR_INVALID_PARAMETER);
141     cmp(STATUS_STACK_OVERFLOW,                   ERROR_STACK_OVERFLOW);
142     cmp(STATUS_BAD_INITIAL_STACK,                ERROR_STACK_OVERFLOW);
143     cmp(STATUS_INVALID_VOLUME_LABEL,             ERROR_LABEL_TOO_LONG);
144     cmp(STATUS_SECTION_NOT_EXTENDED,             ERROR_OUTOFMEMORY);
145     cmp(STATUS_NOT_MAPPED_DATA,                  ERROR_INVALID_ADDRESS);
146     cmp2(STATUS_NO_LDT,                          ERROR_INVALID_THREAD_ID);
147     cmp(STATUS_INFO_LENGTH_MISMATCH,             ERROR_BAD_LENGTH);
148     cmp(STATUS_INVALID_INFO_CLASS,               ERROR_INVALID_PARAMETER);
149     cmp(STATUS_SUSPEND_COUNT_EXCEEDED,           ERROR_SIGNAL_REFUSED);
150     cmp(STATUS_NOTIFY_ENUM_DIR,                  ERROR_NOTIFY_ENUM_DIR);
151     cmp(STATUS_REGISTRY_RECOVERED,               ERROR_REGISTRY_RECOVERED);
152     cmp(STATUS_REGISTRY_IO_FAILED,               ERROR_REGISTRY_IO_FAILED);
153     cmp(STATUS_NOT_REGISTRY_FILE,                ERROR_NOT_REGISTRY_FILE);
154     cmp(STATUS_KEY_DELETED,                      ERROR_KEY_DELETED);
155     cmp(STATUS_NO_LOG_SPACE,                     ERROR_NO_LOG_SPACE);
156     cmp(STATUS_KEY_HAS_CHILDREN,                 ERROR_KEY_HAS_CHILDREN);
157     cmp(STATUS_CHILD_MUST_BE_VOLATILE,           ERROR_CHILD_MUST_BE_VOLATILE);
158     cmp(STATUS_REGISTRY_CORRUPT,                 ERROR_BADDB);
159     cmp(STATUS_DLL_NOT_FOUND,                    ERROR_MOD_NOT_FOUND);
160     cmp2(STATUS_OPEN_FAILED,                     ERROR_NET_OPEN_FAILED);
161     cmp2(STATUS_IO_PRIVILEGE_FAILED,             ERROR_IO_PRIVILEGE_FAILED);
162     cmp(STATUS_DLL_INIT_FAILED,                  ERROR_DLL_INIT_FAILED);
163     cmp2(STATUS_INVALID_IMPORT_OF_NON_DLL,       ERROR_INVALID_IMPORT_OF_NON_DLL);
164     cmp(STATUS_ORDINAL_NOT_FOUND,                ERROR_INVALID_ORDINAL);
165     cmp(STATUS_DRIVER_ORDINAL_NOT_FOUND,         ERROR_INVALID_ORDINAL);
166     cmp2(STATUS_DRIVER_UNABLE_TO_LOAD,           ERROR_BAD_DRIVER);
167     cmp(STATUS_ENTRYPOINT_NOT_FOUND,             ERROR_PROC_NOT_FOUND);
168     cmp(STATUS_DRIVER_ENTRYPOINT_NOT_FOUND,      ERROR_PROC_NOT_FOUND);
169     cmp(STATUS_PENDING,                          ERROR_IO_PENDING);
170     cmp(STATUS_MORE_ENTRIES,                     ERROR_MORE_DATA);
171     cmp(STATUS_INTEGER_OVERFLOW,                 ERROR_ARITHMETIC_OVERFLOW);
172     cmp(STATUS_BUFFER_OVERFLOW,                  ERROR_MORE_DATA);
173     cmp(STATUS_NO_MORE_FILES,                    ERROR_NO_MORE_FILES);
174     cmp2(STATUS_HANDLES_CLOSED,                  ERROR_HANDLES_CLOSED);
175     cmp(STATUS_NO_INHERITANCE,                   ERROR_NO_INHERITANCE);
176     cmp(STATUS_NO_MORE_EAS,                      ERROR_NO_MORE_ITEMS);
177     cmp(STATUS_NO_MORE_ENTRIES,                  ERROR_NO_MORE_ITEMS);
178     cmp(STATUS_GUIDS_EXHAUSTED,                  ERROR_NO_MORE_ITEMS);
179     cmp(STATUS_AGENTS_EXHAUSTED,                 ERROR_NO_MORE_ITEMS);
180     cmp(STATUS_UNSUCCESSFUL,                     ERROR_GEN_FAILURE);
181     cmp(STATUS_TOO_MANY_LINKS,                   ERROR_TOO_MANY_LINKS);
182     cmp(STATUS_NOT_IMPLEMENTED,                  ERROR_INVALID_FUNCTION);
183     cmp(STATUS_ILLEGAL_FUNCTION,                 ERROR_INVALID_FUNCTION);
184     cmp(STATUS_IN_PAGE_ERROR,                    ERROR_SWAPERROR);
185     cmp(STATUS_PAGEFILE_QUOTA,                   ERROR_PAGEFILE_QUOTA);
186     cmp(STATUS_COMMITMENT_LIMIT,                 ERROR_COMMITMENT_LIMIT);
187     cmp(STATUS_SECTION_TOO_BIG,                  ERROR_NOT_ENOUGH_MEMORY);
188     cmp(RPC_NT_SS_IN_NULL_CONTEXT,               ERROR_INVALID_HANDLE);
189     cmp(RPC_NT_INVALID_BINDING,                  ERROR_INVALID_HANDLE);
190     cmp(STATUS_INVALID_HANDLE,                   ERROR_INVALID_HANDLE);
191     cmp(STATUS_OBJECT_TYPE_MISMATCH,             ERROR_INVALID_HANDLE);
192     cmp(STATUS_FILE_CLOSED,                      ERROR_INVALID_HANDLE);
193     cmp(STATUS_INVALID_PORT_HANDLE,              ERROR_INVALID_HANDLE);
194     cmp(STATUS_HANDLE_NOT_CLOSABLE,              ERROR_INVALID_HANDLE);
195     cmp(STATUS_NOT_COMMITTED,                    ERROR_INVALID_ADDRESS);
196     cmp(STATUS_PARTIAL_COPY,                     ERROR_PARTIAL_COPY);
197     cmp3(STATUS_LPC_REPLY_LOST,                  ERROR_CONNECTION_ABORTED, ERROR_INTERNAL_ERROR);
198     cmp(STATUS_INVALID_PARAMETER,                ERROR_INVALID_PARAMETER);
199     cmp(STATUS_INVALID_PARAMETER_1,              ERROR_INVALID_PARAMETER);
200     cmp(STATUS_INVALID_PARAMETER_2,              ERROR_INVALID_PARAMETER);
201     cmp(STATUS_INVALID_PARAMETER_3,              ERROR_INVALID_PARAMETER);
202     cmp(STATUS_INVALID_PARAMETER_4,              ERROR_INVALID_PARAMETER);
203     cmp(STATUS_INVALID_PARAMETER_5,              ERROR_INVALID_PARAMETER);
204     cmp(STATUS_INVALID_PARAMETER_6,              ERROR_INVALID_PARAMETER);
205     cmp(STATUS_INVALID_PARAMETER_7,              ERROR_INVALID_PARAMETER);
206     cmp(STATUS_INVALID_PARAMETER_8,              ERROR_INVALID_PARAMETER);
207     cmp(STATUS_INVALID_PARAMETER_9,              ERROR_INVALID_PARAMETER);
208     cmp(STATUS_INVALID_PARAMETER_10,             ERROR_INVALID_PARAMETER);
209     cmp(STATUS_INVALID_PARAMETER_11,             ERROR_INVALID_PARAMETER);
210     cmp(STATUS_INVALID_PARAMETER_12,             ERROR_INVALID_PARAMETER);
211     cmp(STATUS_INVALID_PARAMETER_MIX,            ERROR_INVALID_PARAMETER);
212     cmp(STATUS_INVALID_PAGE_PROTECTION,          ERROR_INVALID_PARAMETER);
213     cmp(STATUS_SECTION_PROTECTION,               ERROR_INVALID_PARAMETER);
214     cmp(STATUS_RESOURCE_DATA_NOT_FOUND,          ERROR_RESOURCE_DATA_NOT_FOUND);
215     cmp(STATUS_RESOURCE_TYPE_NOT_FOUND,          ERROR_RESOURCE_TYPE_NOT_FOUND);
216     cmp(STATUS_RESOURCE_NAME_NOT_FOUND,          ERROR_RESOURCE_NAME_NOT_FOUND);
217     cmp(STATUS_RESOURCE_LANG_NOT_FOUND,          ERROR_RESOURCE_LANG_NOT_FOUND);
218     cmp(STATUS_NO_SUCH_DEVICE,                   ERROR_FILE_NOT_FOUND);
219     cmp(STATUS_NO_SUCH_FILE,                     ERROR_FILE_NOT_FOUND);
220     cmp(STATUS_INVALID_DEVICE_REQUEST,           ERROR_INVALID_FUNCTION);
221     cmp2(STATUS_VOLUME_NOT_UPGRADED,             ERROR_INVALID_FUNCTION);
222     cmp(STATUS_END_OF_FILE,                      ERROR_HANDLE_EOF);
223     cmp(STATUS_FILE_FORCED_CLOSED,               ERROR_HANDLE_EOF);
224     cmp(STATUS_WRONG_VOLUME,                     ERROR_WRONG_DISK);
225     cmp(STATUS_NO_MEDIA,                         ERROR_NO_MEDIA_IN_DRIVE);
226     cmp(STATUS_NO_MEDIA_IN_DEVICE,               ERROR_NOT_READY);
227     cmp2(STATUS_VOLUME_DISMOUNTED,               ERROR_NOT_READY);
228     cmp(STATUS_NONEXISTENT_SECTOR,               ERROR_SECTOR_NOT_FOUND);
229     cmp(STATUS_WORKING_SET_QUOTA,                ERROR_WORKING_SET_QUOTA);
230     cmp(STATUS_NO_MEMORY,                        ERROR_NOT_ENOUGH_MEMORY);
231     cmp(STATUS_CONFLICTING_ADDRESSES,            ERROR_INVALID_ADDRESS);
232     cmp(STATUS_INVALID_SYSTEM_SERVICE,           ERROR_INVALID_FUNCTION);
233     cmp(STATUS_THREAD_IS_TERMINATING,            ERROR_ACCESS_DENIED);
234     cmp(STATUS_PROCESS_IS_TERMINATING,           ERROR_ACCESS_DENIED);
235     cmp(STATUS_INVALID_LOCK_SEQUENCE,            ERROR_ACCESS_DENIED);
236     cmp(STATUS_INVALID_VIEW_SIZE,                ERROR_ACCESS_DENIED);
237     cmp(STATUS_ALREADY_COMMITTED,                ERROR_ACCESS_DENIED);
238     cmp(STATUS_ACCESS_DENIED,                    ERROR_ACCESS_DENIED);
239     cmp(STATUS_FILE_IS_A_DIRECTORY,              ERROR_ACCESS_DENIED);
240     cmp(STATUS_CANNOT_DELETE,                    ERROR_ACCESS_DENIED);
241     cmp(STATUS_INVALID_COMPUTER_NAME,            ERROR_INVALID_COMPUTERNAME);
242     cmp(STATUS_FILE_DELETED,                     ERROR_ACCESS_DENIED);
243     cmp2(STATUS_FILE_RENAMED,                    ERROR_ACCESS_DENIED);
244     cmp(STATUS_DELETE_PENDING,                   ERROR_ACCESS_DENIED);
245     cmp(STATUS_PORT_CONNECTION_REFUSED,          ERROR_ACCESS_DENIED);
246     cmp(STATUS_NO_SUCH_PRIVILEGE,                ERROR_NO_SUCH_PRIVILEGE);
247     cmp(STATUS_PRIVILEGE_NOT_HELD,               ERROR_PRIVILEGE_NOT_HELD);
248     cmp(STATUS_CANNOT_IMPERSONATE,               ERROR_CANNOT_IMPERSONATE);
249     cmp(STATUS_LOGON_FAILURE,                    ERROR_LOGON_FAILURE);
250     cmp2(STATUS_MUTUAL_AUTHENTICATION_FAILED,    ERROR_MUTUAL_AUTH_FAILED);
251     cmp2(STATUS_TIME_DIFFERENCE_AT_DC,           ERROR_TIME_SKEW);
252     cmp2(STATUS_PKINIT_FAILURE,                  ERROR_PKINIT_FAILURE);
253     cmp2(STATUS_SMARTCARD_SUBSYSTEM_FAILURE,     ERROR_SMARTCARD_SUBSYSTEM_FAILURE);
254     cmp2(STATUS_DOWNGRADE_DETECTED,              ERROR_DOWNGRADE_DETECTED);
255     cmp4(STATUS_SMARTCARD_CERT_REVOKED,          SEC_E_SMARTCARD_CERT_REVOKED, 1266); /* FIXME: real name? */
256     cmp4(STATUS_ISSUING_CA_UNTRUSTED,            SEC_E_ISSUING_CA_UNTRUSTED, 1267); /* FIXME: real name? */
257     cmp4(STATUS_REVOCATION_OFFLINE_C,            SEC_E_REVOCATION_OFFLINE_C, 1268); /* FIXME: real name? */
258     cmp4(STATUS_PKINIT_CLIENT_FAILURE,           SEC_E_PKINIT_CLIENT_FAILURE, 1269); /* FIXME: real name? */
259     cmp4(STATUS_SMARTCARD_CERT_EXPIRED,          SEC_E_SMARTCARD_CERT_EXPIRED, 1270); /* FIXME: real name? */
260     cmp2(STATUS_NO_KERB_KEY,                     SEC_E_NO_KERB_KEY);
261     cmp2(STATUS_CURRENT_DOMAIN_NOT_ALLOWED,      ERROR_CURRENT_DOMAIN_NOT_ALLOWED);
262     cmp2(STATUS_SMARTCARD_WRONG_PIN,             SCARD_W_WRONG_CHV);
263     cmp2(STATUS_SMARTCARD_CARD_BLOCKED,          SCARD_W_CHV_BLOCKED);
264     cmp2(STATUS_SMARTCARD_CARD_NOT_AUTHENTICATED,SCARD_W_CARD_NOT_AUTHENTICATED);
265     cmp2(STATUS_SMARTCARD_NO_CARD,               SCARD_E_NO_SMARTCARD);
266     cmp2(STATUS_SMARTCARD_NO_KEY_CONTAINER,      NTE_NO_KEY);
267     cmp2(STATUS_SMARTCARD_NO_CERTIFICATE,        SCARD_E_NO_SUCH_CERTIFICATE);
268     cmp2(STATUS_SMARTCARD_NO_KEYSET,             NTE_BAD_KEYSET);
269     cmp2(STATUS_SMARTCARD_IO_ERROR,              SCARD_E_COMM_DATA_LOST);
270     cmp(STATUS_ACCOUNT_RESTRICTION,              ERROR_ACCOUNT_RESTRICTION);
271     cmp(STATUS_INVALID_LOGON_HOURS,              ERROR_INVALID_LOGON_HOURS);
272     cmp(STATUS_INVALID_WORKSTATION,              ERROR_INVALID_WORKSTATION);
273     cmp(STATUS_BUFFER_TOO_SMALL,                 ERROR_INSUFFICIENT_BUFFER);
274     cmp(STATUS_UNABLE_TO_DECOMMIT_VM,            ERROR_INVALID_ADDRESS);
275     cmp(STATUS_DISK_CORRUPT_ERROR,               ERROR_DISK_CORRUPT);
276     cmp(STATUS_FT_MISSING_MEMBER,                ERROR_IO_DEVICE);
277     cmp(STATUS_FT_ORPHANING,                     ERROR_IO_DEVICE);
278     cmp(STATUS_VARIABLE_NOT_FOUND,               ERROR_ENVVAR_NOT_FOUND);
279     cmp(STATUS_OBJECT_NAME_INVALID,              ERROR_INVALID_NAME);
280     cmp(STATUS_OBJECT_NAME_NOT_FOUND,            ERROR_FILE_NOT_FOUND);
281     cmp(STATUS_OBJECT_NAME_COLLISION,            ERROR_ALREADY_EXISTS);
282     cmp(STATUS_OBJECT_PATH_INVALID,              ERROR_BAD_PATHNAME);
283     cmp(STATUS_OBJECT_PATH_NOT_FOUND,            ERROR_PATH_NOT_FOUND);
284     cmp(STATUS_DFS_EXIT_PATH_FOUND,              ERROR_PATH_NOT_FOUND);
285     cmp2(STATUS_DFS_UNAVAILABLE,                 ERROR_CONNECTION_UNAVAIL);
286     cmp(STATUS_OBJECT_PATH_SYNTAX_BAD,           ERROR_BAD_PATHNAME);
287     cmp(STATUS_NAME_TOO_LONG,                    ERROR_FILENAME_EXCED_RANGE);
288     cmp(STATUS_DATA_OVERRUN,                     ERROR_IO_DEVICE);
289     cmp(STATUS_DATA_LATE_ERROR,                  ERROR_IO_DEVICE);
290     cmp(STATUS_DATA_ERROR,                       ERROR_CRC);
291     cmp(STATUS_CRC_ERROR,                        ERROR_CRC);
292     cmp(STATUS_SHARING_VIOLATION,                ERROR_SHARING_VIOLATION);
293     cmp(STATUS_QUOTA_EXCEEDED,                   ERROR_NOT_ENOUGH_QUOTA);
294     cmp(STATUS_MUTANT_NOT_OWNED,                 ERROR_NOT_OWNER);
295     cmp(STATUS_SEMAPHORE_LIMIT_EXCEEDED,         ERROR_TOO_MANY_POSTS);
296     cmp(STATUS_DISK_FULL,                        ERROR_DISK_FULL);
297     cmp(STATUS_LOCK_NOT_GRANTED,                 ERROR_LOCK_VIOLATION);
298     cmp(STATUS_FILE_LOCK_CONFLICT,               ERROR_LOCK_VIOLATION);
299     cmp(STATUS_NOT_A_DIRECTORY,                  ERROR_DIRECTORY);
300     cmp2(STATUS_CANNOT_MAKE,                     ERROR_CANNOT_MAKE);
301     cmp(STATUS_UNKNOWN_REVISION,                 ERROR_UNKNOWN_REVISION);
302     cmp(STATUS_REVISION_MISMATCH,                ERROR_REVISION_MISMATCH);
303     cmp(STATUS_INVALID_OWNER,                    ERROR_INVALID_OWNER);
304     cmp(STATUS_INVALID_PRIMARY_GROUP,            ERROR_INVALID_PRIMARY_GROUP);
305     cmp(STATUS_NO_IMPERSONATION_TOKEN,           ERROR_NO_IMPERSONATION_TOKEN);
306     cmp(STATUS_CANT_DISABLE_MANDATORY,           ERROR_CANT_DISABLE_MANDATORY);
307     cmp(STATUS_NO_LOGON_SERVERS,                 ERROR_NO_LOGON_SERVERS);
308     cmp(STATUS_DOMAIN_CONTROLLER_NOT_FOUND,      ERROR_DOMAIN_CONTROLLER_NOT_FOUND);
309     cmp(STATUS_NO_SUCH_LOGON_SESSION,            ERROR_NO_SUCH_LOGON_SESSION);
310     cmp(STATUS_INVALID_ACCOUNT_NAME,             ERROR_INVALID_ACCOUNT_NAME);
311     cmp(STATUS_USER_EXISTS,                      ERROR_USER_EXISTS);
312     cmp(STATUS_NO_SUCH_USER,                     ERROR_NO_SUCH_USER);
313     cmp(STATUS_GROUP_EXISTS,                     ERROR_GROUP_EXISTS);
314     cmp(STATUS_NO_SUCH_GROUP,                    ERROR_NO_SUCH_GROUP);
315     cmp(STATUS_SPECIAL_GROUP,                    ERROR_SPECIAL_GROUP);
316     cmp(STATUS_MEMBER_IN_GROUP,                  ERROR_MEMBER_IN_GROUP);
317     cmp(STATUS_MEMBER_NOT_IN_GROUP,              ERROR_MEMBER_NOT_IN_GROUP);
318     cmp(STATUS_LAST_ADMIN,                       ERROR_LAST_ADMIN);
319     cmp(STATUS_WRONG_PASSWORD,                   ERROR_INVALID_PASSWORD);
320     cmp(STATUS_WRONG_PASSWORD_CORE,              ERROR_INVALID_PASSWORD);
321     cmp(STATUS_ILL_FORMED_PASSWORD,              ERROR_ILL_FORMED_PASSWORD);
322     cmp(STATUS_PASSWORD_RESTRICTION,             ERROR_PASSWORD_RESTRICTION);
323     cmp(STATUS_PASSWORD_EXPIRED,                 ERROR_PASSWORD_EXPIRED);
324     cmp(STATUS_PASSWORD_MUST_CHANGE,             ERROR_PASSWORD_MUST_CHANGE);
325     cmp(STATUS_ACCOUNT_DISABLED,                 ERROR_ACCOUNT_DISABLED);
326     cmp(STATUS_ACCOUNT_LOCKED_OUT,               ERROR_ACCOUNT_LOCKED_OUT);
327     cmp(STATUS_NONE_MAPPED,                      ERROR_NONE_MAPPED);
328     cmp(STATUS_TOO_MANY_LUIDS_REQUESTED,         ERROR_TOO_MANY_LUIDS_REQUESTED);
329     cmp(STATUS_LUIDS_EXHAUSTED,                  ERROR_LUIDS_EXHAUSTED);
330     cmp(STATUS_INVALID_SUB_AUTHORITY,            ERROR_INVALID_SUB_AUTHORITY);
331     cmp(STATUS_INVALID_ACL,                      ERROR_INVALID_ACL);
332     cmp(STATUS_INVALID_SID,                      ERROR_INVALID_SID);
333     cmp(STATUS_INVALID_SECURITY_DESCR,           ERROR_INVALID_SECURITY_DESCR);
334     cmp(STATUS_PROCEDURE_NOT_FOUND,              ERROR_PROC_NOT_FOUND);
335     cmp2(STATUS_INVALID_LDT_SIZE,                ERROR_INVALID_LDT_SIZE);
336     cmp2(STATUS_INVALID_LDT_OFFSET,              ERROR_INVALID_LDT_OFFSET);
337     cmp2(STATUS_INVALID_LDT_DESCRIPTOR,          ERROR_INVALID_LDT_DESCRIPTOR);
338     cmp(STATUS_BAD_INITIAL_PC,                   ERROR_BAD_EXE_FORMAT);
339     cmp(STATUS_INVALID_FILE_FOR_SECTION,         ERROR_BAD_EXE_FORMAT);
340     cmp(STATUS_INVALID_IMAGE_FORMAT,             ERROR_BAD_EXE_FORMAT);
341     cmp(STATUS_IMAGE_MP_UP_MISMATCH,             ERROR_BAD_EXE_FORMAT);
342     cmp(STATUS_INVALID_IMAGE_NOT_MZ,             ERROR_BAD_EXE_FORMAT);
343     cmp(STATUS_IMAGE_CHECKSUM_MISMATCH,          ERROR_BAD_EXE_FORMAT);
344     cmp(STATUS_INVALID_IMAGE_PROTECT,            ERROR_BAD_EXE_FORMAT);
345     cmp(STATUS_INVALID_IMAGE_LE_FORMAT,          ERROR_BAD_EXE_FORMAT);
346     cmp(STATUS_INVALID_IMAGE_NE_FORMAT,          ERROR_BAD_EXE_FORMAT);
347     cmp(STATUS_INVALID_IMAGE_WIN_16,             ERROR_BAD_EXE_FORMAT);
348     cmp2(STATUS_INVALID_IMAGE_WIN_32,            ERROR_BAD_EXE_FORMAT);
349     cmp2(STATUS_INVALID_IMAGE_WIN_64,            ERROR_BAD_EXE_FORMAT);
350     cmp(STATUS_NO_TOKEN,                         ERROR_NO_TOKEN);
351     cmp(STATUS_RANGE_NOT_LOCKED,                 ERROR_NOT_LOCKED);
352     cmp(STATUS_SERVER_DISABLED,                  ERROR_SERVER_DISABLED);
353     cmp(STATUS_SERVER_NOT_DISABLED,              ERROR_SERVER_NOT_DISABLED);
354     cmp(STATUS_INVALID_ID_AUTHORITY,             ERROR_INVALID_ID_AUTHORITY);
355     cmp(STATUS_ALLOTTED_SPACE_EXCEEDED,          ERROR_ALLOTTED_SPACE_EXCEEDED);
356     cmp(STATUS_TOO_MANY_PAGING_FILES,            ERROR_NOT_ENOUGH_MEMORY);
357     cmp(STATUS_INSUFFICIENT_RESOURCES,           ERROR_NO_SYSTEM_RESOURCES);
358     cmp(STATUS_INSUFF_SERVER_RESOURCES,          ERROR_NOT_ENOUGH_SERVER_MEMORY);
359     cmp(STATUS_FILE_INVALID,                     ERROR_FILE_INVALID);
360     cmp(STATUS_MAPPED_FILE_SIZE_ZERO,            ERROR_FILE_INVALID);
361     cmp(STATUS_DEVICE_PAPER_EMPTY,               ERROR_OUT_OF_PAPER);
362     cmp(STATUS_DEVICE_POWERED_OFF,               ERROR_NOT_READY);
363     cmp(STATUS_DEVICE_OFF_LINE,                  ERROR_NOT_READY);
364     cmp(STATUS_DEVICE_DATA_ERROR,                ERROR_CRC);
365     cmp(STATUS_DEVICE_NOT_READY,                 ERROR_NOT_READY);
366     cmp3(STATUS_DEVICE_NOT_CONNECTED,            ERROR_DEVICE_NOT_CONNECTED, ERROR_NOT_READY);
367     cmp(STATUS_DEVICE_POWER_FAILURE,             ERROR_NOT_READY);
368     cmp2(STATUS_NOT_FOUND,                       ERROR_NOT_FOUND);
369     cmp2(STATUS_NO_MATCH,                        ERROR_NO_MATCH);
370     cmp2(STATUS_PROPSET_NOT_FOUND,               ERROR_SET_NOT_FOUND);
371     cmp(STATUS_DEVICE_BUSY,                      ERROR_BUSY);
372     cmp(STATUS_FREE_VM_NOT_AT_BASE,              ERROR_INVALID_ADDRESS);
373     cmp(STATUS_MEMORY_NOT_ALLOCATED,             ERROR_INVALID_ADDRESS);
374     cmp(STATUS_NOT_SAME_DEVICE,                  ERROR_NOT_SAME_DEVICE);
375     cmp(STATUS_NOT_SUPPORTED,                    ERROR_NOT_SUPPORTED);
376     cmp(STATUS_REMOTE_NOT_LISTENING,             ERROR_REM_NOT_LIST);
377     cmp(STATUS_DUPLICATE_NAME,                   ERROR_DUP_NAME);
378     cmp(STATUS_BAD_NETWORK_PATH,                 ERROR_BAD_NETPATH);
379     cmp(STATUS_NETWORK_BUSY,                     ERROR_NETWORK_BUSY);
380     cmp2(STATUS_ONLY_IF_CONNECTED,               ERROR_ONLY_IF_CONNECTED);
381     cmp(STATUS_DEVICE_DOES_NOT_EXIST,            ERROR_DEV_NOT_EXIST);
382     cmp(STATUS_TOO_MANY_COMMANDS,                ERROR_TOO_MANY_CMDS);
383     cmp(STATUS_ADAPTER_HARDWARE_ERROR,           ERROR_ADAP_HDW_ERR);
384     cmp(STATUS_REDIRECTOR_NOT_STARTED,           ERROR_PATH_NOT_FOUND);
385     cmp(STATUS_INVALID_EA_NAME,                  ERROR_INVALID_EA_NAME);
386     cmp(STATUS_EA_LIST_INCONSISTENT,             ERROR_EA_LIST_INCONSISTENT);
387     cmp(STATUS_EA_TOO_LARGE,                     ERROR_EA_LIST_INCONSISTENT);
388     cmp(STATUS_INVALID_EA_FLAG,                  ERROR_EA_LIST_INCONSISTENT);
389     cmp2(STATUS_EAS_NOT_SUPPORTED,               ERROR_EAS_NOT_SUPPORTED);
390     cmp(STATUS_FILE_CORRUPT_ERROR,               ERROR_FILE_CORRUPT);
391     cmp(STATUS_EA_CORRUPT_ERROR,                 ERROR_FILE_CORRUPT);
392     cmp(STATUS_NONEXISTENT_EA_ENTRY,             ERROR_FILE_CORRUPT);
393     cmp(STATUS_NO_EAS_ON_FILE,                   ERROR_FILE_CORRUPT);
394     cmp2(STATUS_NOT_A_REPARSE_POINT,             ERROR_NOT_A_REPARSE_POINT);
395     cmp4(STATUS_IO_REPARSE_TAG_INVALID,          ERROR_REPARSE_TAG_INVALID, ERROR_INVALID_PARAMETER);
396     cmp4(STATUS_IO_REPARSE_TAG_MISMATCH,         ERROR_REPARSE_TAG_MISMATCH, ERROR_INVALID_PARAMETER);
397     cmp2(STATUS_IO_REPARSE_TAG_NOT_HANDLED,      ERROR_CANT_ACCESS_FILE);
398     cmp2(STATUS_REPARSE_POINT_NOT_RESOLVED,      ERROR_CANT_RESOLVE_FILENAME);
399     cmp2(STATUS_DIRECTORY_IS_A_REPARSE_POINT,    ERROR_BAD_PATHNAME);
400     cmp2(STATUS_REPARSE_ATTRIBUTE_CONFLICT,      ERROR_REPARSE_ATTRIBUTE_CONFLICT);
401     cmp4(STATUS_IO_REPARSE_DATA_INVALID,         ERROR_INVALID_REPARSE_DATA, ERROR_INVALID_PARAMETER);
402     cmp2(STATUS_FILE_IS_OFFLINE,                 ERROR_FILE_OFFLINE);
403     cmp2(STATUS_REMOTE_STORAGE_NOT_ACTIVE,       ERROR_REMOTE_STORAGE_NOT_ACTIVE);
404     cmp2(STATUS_REMOTE_STORAGE_MEDIA_ERROR,      ERROR_REMOTE_STORAGE_MEDIA_ERROR);
405     cmp2(STATUS_NO_TRACKING_SERVICE,             ERROR_NO_TRACKING_SERVICE);
406     cmp2(STATUS_JOURNAL_DELETE_IN_PROGRESS,      ERROR_JOURNAL_DELETE_IN_PROGRESS);
407     cmp2(STATUS_JOURNAL_NOT_ACTIVE,              ERROR_JOURNAL_NOT_ACTIVE);
408     cmp2(STATUS_JOURNAL_ENTRY_DELETED,           ERROR_JOURNAL_ENTRY_DELETED);
409     cmp(STATUS_INVALID_NETWORK_RESPONSE,         ERROR_BAD_NET_RESP);
410     cmp(STATUS_USER_SESSION_DELETED,             ERROR_UNEXP_NET_ERR);
411     cmp(STATUS_UNEXPECTED_NETWORK_ERROR,         ERROR_UNEXP_NET_ERR);
412     cmp(STATUS_BAD_REMOTE_ADAPTER,               ERROR_BAD_REM_ADAP);
413     cmp(STATUS_PRINT_QUEUE_FULL,                 ERROR_PRINTQ_FULL);
414     cmp(STATUS_NO_SPOOL_SPACE,                   ERROR_NO_SPOOL_SPACE);
415     cmp(STATUS_PRINT_CANCELLED,                  ERROR_PRINT_CANCELLED);
416     cmp(STATUS_NETWORK_NAME_DELETED,             ERROR_NETNAME_DELETED);
417     cmp(STATUS_NETWORK_ACCESS_DENIED,            ERROR_NETWORK_ACCESS_DENIED);
418     cmp(STATUS_BAD_DEVICE_TYPE,                  ERROR_BAD_DEV_TYPE);
419     cmp(STATUS_BAD_NETWORK_NAME,                 ERROR_BAD_NET_NAME);
420     cmp(STATUS_TOO_MANY_NAMES,                   ERROR_TOO_MANY_NAMES);
421     cmp(STATUS_TOO_MANY_GUIDS_REQUESTED,         ERROR_TOO_MANY_NAMES);
422     cmp(STATUS_TOO_MANY_ADDRESSES,               ERROR_TOO_MANY_NAMES);
423     cmp(STATUS_TOO_MANY_NODES,                   ERROR_TOO_MANY_NAMES);
424     cmp(STATUS_TOO_MANY_SESSIONS,                ERROR_TOO_MANY_SESS);
425     cmp(STATUS_SHARING_PAUSED,                   ERROR_SHARING_PAUSED);
426     cmp(STATUS_REQUEST_NOT_ACCEPTED,             ERROR_REQ_NOT_ACCEP);
427     cmp(STATUS_REDIRECTOR_PAUSED,                ERROR_REDIR_PAUSED);
428     cmp(STATUS_NET_WRITE_FAULT,                  ERROR_NET_WRITE_FAULT);
429     cmp(STATUS_VIRTUAL_CIRCUIT_CLOSED,           ERROR_VC_DISCONNECTED);
430     cmp(STATUS_INVALID_PIPE_STATE,               ERROR_BAD_PIPE);
431     cmp(STATUS_INVALID_READ_MODE,                ERROR_BAD_PIPE);
432     cmp(STATUS_PIPE_CLOSING,                     ERROR_NO_DATA);
433     cmp(STATUS_PIPE_EMPTY,                       ERROR_NO_DATA);
434     cmp(STATUS_PIPE_CONNECTED,                   ERROR_PIPE_CONNECTED);
435     cmp(STATUS_PIPE_DISCONNECTED,                ERROR_PIPE_NOT_CONNECTED);
436     cmp(STATUS_PIPE_LISTENING,                   ERROR_PIPE_LISTENING);
437     cmp(STATUS_PIPE_NOT_AVAILABLE,               ERROR_PIPE_BUSY);
438     cmp(STATUS_INSTANCE_NOT_AVAILABLE,           ERROR_PIPE_BUSY);
439     cmp(STATUS_PIPE_BUSY,                        ERROR_PIPE_BUSY);
440     cmp(STATUS_PIPE_BROKEN,                      ERROR_BROKEN_PIPE);
441     cmp(STATUS_DIRECTORY_NOT_EMPTY,              ERROR_DIR_NOT_EMPTY);
442     cmp(STATUS_TOO_MANY_OPENED_FILES,            ERROR_TOO_MANY_OPEN_FILES);
443     cmp(STATUS_IO_TIMEOUT,                       ERROR_SEM_TIMEOUT);
444     cmp(STATUS_CANCELLED,                        ERROR_OPERATION_ABORTED);
445     cmp(STATUS_UNRECOGNIZED_MEDIA,               ERROR_UNRECOGNIZED_MEDIA);
446     cmp(STATUS_INVALID_LEVEL,                    ERROR_INVALID_LEVEL);
447     cmp(STATUS_UNRECOGNIZED_VOLUME,              ERROR_UNRECOGNIZED_VOLUME);
448     cmp(STATUS_MEDIA_WRITE_PROTECTED,            ERROR_WRITE_PROTECT);
449     cmp(STATUS_TOO_LATE,                         ERROR_WRITE_PROTECT);
450     cmp(STATUS_SUCCESS,                          NO_ERROR);
451     cmp(STATUS_FULLSCREEN_MODE,                  ERROR_FULLSCREEN_MODE);
452     cmp(STATUS_END_OF_MEDIA,                     ERROR_END_OF_MEDIA);
453     cmp(STATUS_EOM_OVERFLOW,                     ERROR_EOM_OVERFLOW);
454     cmp(STATUS_BEGINNING_OF_MEDIA,               ERROR_BEGINNING_OF_MEDIA);
455     cmp(STATUS_MEDIA_CHANGED,                    ERROR_MEDIA_CHANGED);
456     cmp(STATUS_BUS_RESET,                        ERROR_BUS_RESET);
457     cmp(STATUS_FILEMARK_DETECTED,                ERROR_FILEMARK_DETECTED);
458     cmp(STATUS_SETMARK_DETECTED,                 ERROR_SETMARK_DETECTED);
459     cmp(STATUS_NO_DATA_DETECTED,                 ERROR_NO_DATA_DETECTED);
460     cmp(STATUS_PARTITION_FAILURE,                ERROR_PARTITION_FAILURE);
461     cmp(STATUS_INVALID_BLOCK_LENGTH,             ERROR_INVALID_BLOCK_LENGTH);
462     cmp(STATUS_DEVICE_NOT_PARTITIONED,           ERROR_DEVICE_NOT_PARTITIONED);
463     cmp(STATUS_UNABLE_TO_LOCK_MEDIA,             ERROR_UNABLE_TO_LOCK_MEDIA);
464     cmp(STATUS_UNABLE_TO_UNLOAD_MEDIA,           ERROR_UNABLE_TO_UNLOAD_MEDIA);
465     cmp(STATUS_UNMAPPABLE_CHARACTER,             ERROR_NO_UNICODE_TRANSLATION);
466     cmp(STATUS_NOT_ALL_ASSIGNED,                 ERROR_NOT_ALL_ASSIGNED);
467     cmp(STATUS_SOME_NOT_MAPPED,                  ERROR_SOME_NOT_MAPPED);
468     cmp(STATUS_NO_QUOTAS_FOR_ACCOUNT,            ERROR_NO_QUOTAS_FOR_ACCOUNT);
469     cmp(STATUS_LOCAL_USER_SESSION_KEY,           ERROR_LOCAL_USER_SESSION_KEY);
470     cmp(STATUS_NULL_LM_PASSWORD,                 ERROR_NULL_LM_PASSWORD);
471     cmp2(STATUS_IMAGE_MACHINE_TYPE_MISMATCH,     ERROR_IMAGE_MACHINE_TYPE_MISMATCH);
472     cmp2(STATUS_RECEIVE_PARTIAL,                 ERROR_RECEIVE_PARTIAL);
473     cmp2(STATUS_RECEIVE_EXPEDITED,               ERROR_RECEIVE_EXPEDITED);
474     cmp2(STATUS_RECEIVE_PARTIAL_EXPEDITED,       ERROR_RECEIVE_PARTIAL_EXPEDITED);
475     cmp2(STATUS_EVENT_DONE,                      ERROR_EVENT_DONE);
476     cmp2(STATUS_EVENT_PENDING,                   ERROR_EVENT_PENDING);
477     cmp2(STATUS_CHECKING_FILE_SYSTEM,            ERROR_CHECKING_FILE_SYSTEM);
478     cmp2(STATUS_FATAL_APP_EXIT,                  ERROR_FATAL_APP_EXIT);
479     cmp2(STATUS_PREDEFINED_HANDLE,               ERROR_PREDEFINED_HANDLE);
480     cmp2(STATUS_WAS_UNLOCKED,                    ERROR_WAS_UNLOCKED);
481     cmp2(STATUS_SERVICE_NOTIFICATION,            ERROR_SERVICE_NOTIFICATION);
482     cmp2(STATUS_WAS_LOCKED,                      ERROR_WAS_LOCKED);
483     cmp2(STATUS_LOG_HARD_ERROR,                  ERROR_LOG_HARD_ERROR);
484     cmp2(STATUS_ALREADY_WIN32,                   ERROR_ALREADY_WIN32);
485     cmp2(STATUS_IMAGE_MACHINE_TYPE_MISMATCH_EXE, ERROR_IMAGE_MACHINE_TYPE_MISMATCH_EXE);
486     cmp2(STATUS_NO_YIELD_PERFORMED,              ERROR_NO_YIELD_PERFORMED);
487     cmp2(STATUS_TIMER_RESUME_IGNORED,            ERROR_TIMER_RESUME_IGNORED);
488     cmp(STATUS_BAD_INHERITANCE_ACL,              ERROR_BAD_INHERITANCE_ACL);
489     cmp(STATUS_INVALID_GROUP_ATTRIBUTES,         ERROR_INVALID_GROUP_ATTRIBUTES);
490     cmp(STATUS_BAD_IMPERSONATION_LEVEL,          ERROR_BAD_IMPERSONATION_LEVEL);
491     cmp(STATUS_CANT_OPEN_ANONYMOUS,              ERROR_CANT_OPEN_ANONYMOUS);
492     cmp(STATUS_BAD_VALIDATION_CLASS,             ERROR_BAD_VALIDATION_CLASS);
493     cmp(STATUS_BAD_TOKEN_TYPE,                   ERROR_BAD_TOKEN_TYPE);
494     cmp2(STATUS_BAD_MASTER_BOOT_RECORD,          ERROR_INVALID_PARAMETER);
495     cmp(STATUS_NO_SECURITY_ON_OBJECT,            ERROR_NO_SECURITY_ON_OBJECT);
496     cmp(STATUS_CANT_ACCESS_DOMAIN_INFO,          ERROR_CANT_ACCESS_DOMAIN_INFO);
497     cmp(STATUS_INVALID_SERVER_STATE,             ERROR_INVALID_SERVER_STATE);
498     cmp(STATUS_INVALID_DOMAIN_STATE,             ERROR_INVALID_DOMAIN_STATE);
499     cmp(STATUS_INVALID_DOMAIN_ROLE,              ERROR_INVALID_DOMAIN_ROLE);
500     cmp(STATUS_NO_SUCH_DOMAIN,                   ERROR_NO_SUCH_DOMAIN);
501     cmp(STATUS_DOMAIN_EXISTS,                    ERROR_DOMAIN_EXISTS);
502     cmp(STATUS_DOMAIN_LIMIT_EXCEEDED,            ERROR_DOMAIN_LIMIT_EXCEEDED);
503     cmp2(STATUS_OPLOCK_NOT_GRANTED,              ERROR_OPLOCK_NOT_GRANTED);
504     cmp2(STATUS_INVALID_OPLOCK_PROTOCOL,         ERROR_INVALID_OPLOCK_PROTOCOL);
505     cmp(STATUS_INTERNAL_DB_CORRUPTION,           ERROR_INTERNAL_DB_CORRUPTION);
506     cmp(STATUS_INTERNAL_ERROR,                   ERROR_INTERNAL_ERROR);
507     cmp(STATUS_GENERIC_NOT_MAPPED,               ERROR_GENERIC_NOT_MAPPED);
508     cmp(STATUS_BAD_DESCRIPTOR_FORMAT,            ERROR_BAD_DESCRIPTOR_FORMAT);
509     cmp(STATUS_NOT_LOGON_PROCESS,                ERROR_NOT_LOGON_PROCESS);
510     cmp(STATUS_LOGON_SESSION_EXISTS,             ERROR_LOGON_SESSION_EXISTS);
511     cmp(STATUS_NO_SUCH_PACKAGE,                  ERROR_NO_SUCH_PACKAGE);
512     cmp(STATUS_BAD_LOGON_SESSION_STATE,          ERROR_BAD_LOGON_SESSION_STATE);
513     cmp(STATUS_LOGON_SESSION_COLLISION,          ERROR_LOGON_SESSION_COLLISION);
514     cmp(STATUS_INVALID_LOGON_TYPE,               ERROR_INVALID_LOGON_TYPE);
515     cmp(STATUS_RXACT_INVALID_STATE,              ERROR_RXACT_INVALID_STATE);
516     cmp(STATUS_RXACT_COMMIT_FAILURE,             ERROR_RXACT_COMMIT_FAILURE);
517     cmp(STATUS_SPECIAL_ACCOUNT,                  ERROR_SPECIAL_ACCOUNT);
518     cmp(STATUS_SPECIAL_USER,                     ERROR_SPECIAL_USER);
519     cmp(STATUS_MEMBERS_PRIMARY_GROUP,            ERROR_MEMBERS_PRIMARY_GROUP);
520     cmp(STATUS_TOKEN_ALREADY_IN_USE,             ERROR_TOKEN_ALREADY_IN_USE);
521     cmp(STATUS_NO_SUCH_ALIAS,                    ERROR_NO_SUCH_ALIAS);
522     cmp(STATUS_MEMBER_NOT_IN_ALIAS,              ERROR_MEMBER_NOT_IN_ALIAS);
523     cmp(STATUS_MEMBER_IN_ALIAS,                  ERROR_MEMBER_IN_ALIAS);
524     cmp(STATUS_ALIAS_EXISTS,                     ERROR_ALIAS_EXISTS);
525     cmp(STATUS_LOGON_NOT_GRANTED,                ERROR_LOGON_NOT_GRANTED);
526     cmp(STATUS_TOO_MANY_SECRETS,                 ERROR_TOO_MANY_SECRETS);
527     cmp(STATUS_SECRET_TOO_LONG,                  ERROR_SECRET_TOO_LONG);
528     cmp(STATUS_INTERNAL_DB_ERROR,                ERROR_INTERNAL_DB_ERROR);
529     cmp(STATUS_TOO_MANY_CONTEXT_IDS,             ERROR_TOO_MANY_CONTEXT_IDS);
530     cmp(STATUS_LOGON_TYPE_NOT_GRANTED,           ERROR_LOGON_TYPE_NOT_GRANTED);
531     cmp(STATUS_NT_CROSS_ENCRYPTION_REQUIRED,     ERROR_NT_CROSS_ENCRYPTION_REQUIRED);
532     cmp(STATUS_NO_SUCH_MEMBER,                   ERROR_NO_SUCH_MEMBER);
533     cmp(STATUS_INVALID_MEMBER,                   ERROR_INVALID_MEMBER);
534     cmp(STATUS_TOO_MANY_SIDS,                    ERROR_TOO_MANY_SIDS);
535     cmp(STATUS_LM_CROSS_ENCRYPTION_REQUIRED,     ERROR_LM_CROSS_ENCRYPTION_REQUIRED);
536     cmp(STATUS_MESSAGE_NOT_FOUND,                ERROR_MR_MID_NOT_FOUND);
537     cmp2(STATUS_CONTROL_C_EXIT,                  ERROR_CONTROL_C_EXIT);
538     cmp(STATUS_LOCAL_DISCONNECT,                 ERROR_NETNAME_DELETED);
539     cmp(STATUS_REMOTE_DISCONNECT,                ERROR_NETNAME_DELETED);
540     cmp(STATUS_REMOTE_RESOURCES,                 ERROR_REM_NOT_LIST);
541     cmp(STATUS_LINK_FAILED,                      ERROR_UNEXP_NET_ERR);
542     cmp(STATUS_LINK_TIMEOUT,                     ERROR_UNEXP_NET_ERR);
543     cmp(STATUS_INVALID_CONNECTION,               ERROR_UNEXP_NET_ERR);
544     cmp(STATUS_INVALID_ADDRESS,                  ERROR_UNEXP_NET_ERR);
545     cmp2(STATUS_MISSING_SYSTEMFILE,              ERROR_MISSING_SYSTEMFILE);
546     cmp2(STATUS_PAGEFILE_CREATE_FAILED,          ERROR_PAGEFILE_CREATE_FAILED);
547     cmp2(STATUS_UNHANDLED_EXCEPTION,             ERROR_UNHANDLED_EXCEPTION);
548     cmp2(STATUS_APP_INIT_FAILURE,                ERROR_APP_INIT_FAILURE);
549     cmp2(STATUS_NO_PAGEFILE,                     ERROR_NO_PAGEFILE);
550     cmp2(STATUS_ILLEGAL_FLOAT_CONTEXT,           ERROR_ILLEGAL_FLOAT_CONTEXT);
551     cmp2(STATUS_NO_EVENT_PAIR,                   ERROR_NO_EVENT_PAIR);
552     cmp2(STATUS_DOMAIN_CTRLR_CONFIG_ERROR,       ERROR_DOMAIN_CTRLR_CONFIG_ERROR);
553     cmp(STATUS_IO_DEVICE_ERROR,                  ERROR_IO_DEVICE);
554     cmp(STATUS_DEVICE_PROTOCOL_ERROR,            ERROR_IO_DEVICE);
555     cmp(STATUS_DRIVER_INTERNAL_ERROR,            ERROR_IO_DEVICE);
556     cmp(STATUS_INVALID_DEVICE_STATE,             ERROR_BAD_COMMAND);
557     cmp(STATUS_DEVICE_CONFIGURATION_ERROR,       ERROR_INVALID_PARAMETER);
558     cmp2(STATUS_SOURCE_ELEMENT_EMPTY,            ERROR_SOURCE_ELEMENT_EMPTY);
559     cmp2(STATUS_DESTINATION_ELEMENT_FULL,        ERROR_DESTINATION_ELEMENT_FULL);
560     cmp2(STATUS_ILLEGAL_ELEMENT_ADDRESS,         ERROR_ILLEGAL_ELEMENT_ADDRESS);
561     cmp2(STATUS_MAGAZINE_NOT_PRESENT,            ERROR_MAGAZINE_NOT_PRESENT);
562     cmp2(STATUS_REINITIALIZATION_NEEDED,         ERROR_DEVICE_REINITIALIZATION_NEEDED);
563     cmp2(STATUS_DEVICE_REQUIRES_CLEANING,        ERROR_DEVICE_REQUIRES_CLEANING);
564     cmp2(STATUS_DEVICE_DOOR_OPEN,                ERROR_DEVICE_DOOR_OPEN);
565     cmp2(STATUS_TRANSPORT_FULL,                  ERROR_TRANSPORT_FULL);
566     cmp2(STATUS_CLEANER_CARTRIDGE_INSTALLED,     ERROR_CLEANER_CARTRIDGE_INSTALLED);
567     cmp2(STATUS_REG_NAT_CONSUMPTION,             ERROR_REG_NAT_CONSUMPTION);
568     cmp4(STATUS_ENCRYPTION_FAILED,               ERROR_ACCESS_DENIED, ERROR_ENCRYPTION_FAILED);
569     cmp4(STATUS_DECRYPTION_FAILED,               ERROR_ACCESS_DENIED, ERROR_DECRYPTION_FAILED);
570     cmp4(STATUS_NO_RECOVERY_POLICY,              ERROR_ACCESS_DENIED, ERROR_NO_RECOVERY_POLICY);
571     cmp4(STATUS_NO_EFS,                          ERROR_ACCESS_DENIED, ERROR_NO_EFS);
572     cmp4(STATUS_WRONG_EFS,                       ERROR_ACCESS_DENIED, ERROR_WRONG_EFS);
573     cmp4(STATUS_NO_USER_KEYS,                    ERROR_ACCESS_DENIED, ERROR_NO_USER_KEYS);
574     cmp2(STATUS_FILE_NOT_ENCRYPTED,              ERROR_FILE_NOT_ENCRYPTED);
575     cmp2(STATUS_NOT_EXPORT_FORMAT,               ERROR_NOT_EXPORT_FORMAT);
576     cmp2(STATUS_FILE_ENCRYPTED,                  ERROR_FILE_ENCRYPTED);
577     cmp2(STATUS_EFS_ALG_BLOB_TOO_BIG,            ERROR_EFS_ALG_BLOB_TOO_BIG);
578     cmp(STATUS_INVALID_USER_BUFFER,              ERROR_INVALID_USER_BUFFER);
579     cmp(STATUS_SERIAL_NO_DEVICE_INITED,          ERROR_SERIAL_NO_DEVICE);
580     cmp(STATUS_SHARED_IRQ_BUSY,                  ERROR_IRQ_BUSY);
581     cmp(STATUS_SERIAL_MORE_WRITES,               ERROR_MORE_WRITES);
582     cmp(STATUS_SERIAL_COUNTER_TIMEOUT,           ERROR_COUNTER_TIMEOUT);
583     cmp(STATUS_FLOPPY_ID_MARK_NOT_FOUND,         ERROR_FLOPPY_ID_MARK_NOT_FOUND);
584     cmp(STATUS_FLOPPY_WRONG_CYLINDER,            ERROR_FLOPPY_WRONG_CYLINDER);
585     cmp(STATUS_FLOPPY_UNKNOWN_ERROR,             ERROR_FLOPPY_UNKNOWN_ERROR);
586     cmp(STATUS_FLOPPY_BAD_REGISTERS,             ERROR_FLOPPY_BAD_REGISTERS);
587     cmp(STATUS_DISK_RECALIBRATE_FAILED,          ERROR_DISK_RECALIBRATE_FAILED);
588     cmp(STATUS_DISK_OPERATION_FAILED,            ERROR_DISK_OPERATION_FAILED);
589     cmp(STATUS_DISK_RESET_FAILED,                ERROR_DISK_RESET_FAILED);
590     cmp(STATUS_EVENTLOG_FILE_CORRUPT,            ERROR_EVENTLOG_FILE_CORRUPT);
591     cmp(STATUS_EVENTLOG_CANT_START,              ERROR_EVENTLOG_CANT_START);
592     cmp(STATUS_NETLOGON_NOT_STARTED,             ERROR_NETLOGON_NOT_STARTED);
593     cmp(STATUS_ACCOUNT_EXPIRED,                  ERROR_ACCOUNT_EXPIRED);
594     cmp(STATUS_NETWORK_CREDENTIAL_CONFLICT,      ERROR_SESSION_CREDENTIAL_CONFLICT);
595     cmp(STATUS_REMOTE_SESSION_LIMIT,             ERROR_REMOTE_SESSION_LIMIT_EXCEEDED);
596     cmp(STATUS_INVALID_BUFFER_SIZE,              ERROR_INVALID_USER_BUFFER);
597     cmp(STATUS_INVALID_ADDRESS_COMPONENT,        ERROR_INVALID_NETNAME);
598     cmp(STATUS_INVALID_ADDRESS_WILDCARD,         ERROR_INVALID_NETNAME);
599     cmp(STATUS_ADDRESS_ALREADY_EXISTS,           ERROR_DUP_NAME);
600     cmp(STATUS_ADDRESS_CLOSED,                   ERROR_NETNAME_DELETED);
601     cmp(STATUS_CONNECTION_DISCONNECTED,          ERROR_NETNAME_DELETED);
602     cmp(STATUS_CONNECTION_RESET,                 ERROR_NETNAME_DELETED);
603     cmp(STATUS_TRANSACTION_ABORTED,              ERROR_UNEXP_NET_ERR);
604     cmp(STATUS_TRANSACTION_TIMED_OUT,            ERROR_UNEXP_NET_ERR);
605     cmp(STATUS_TRANSACTION_NO_RELEASE,           ERROR_UNEXP_NET_ERR);
606     cmp(STATUS_TRANSACTION_NO_MATCH,             ERROR_UNEXP_NET_ERR);
607     cmp(STATUS_TRANSACTION_RESPONDED,            ERROR_UNEXP_NET_ERR);
608     cmp(STATUS_TRANSACTION_INVALID_ID,           ERROR_UNEXP_NET_ERR);
609     cmp(STATUS_TRANSACTION_INVALID_TYPE,         ERROR_UNEXP_NET_ERR);
610     cmp(STATUS_NOT_SERVER_SESSION,               ERROR_NOT_SUPPORTED);
611     cmp(STATUS_NOT_CLIENT_SESSION,               ERROR_NOT_SUPPORTED);
612     cmp(STATUS_USER_MAPPED_FILE,                 ERROR_USER_MAPPED_FILE);
613     cmp(STATUS_PLUGPLAY_NO_DEVICE,               ERROR_SERVICE_DISABLED);
614     cmp2(STATUS_WMI_GUID_NOT_FOUND,              ERROR_WMI_GUID_NOT_FOUND);
615     cmp2(STATUS_WMI_INSTANCE_NOT_FOUND,          ERROR_WMI_INSTANCE_NOT_FOUND);
616     cmp2(STATUS_WMI_ITEMID_NOT_FOUND,            ERROR_WMI_ITEMID_NOT_FOUND);
617     cmp2(STATUS_WMI_TRY_AGAIN,                   ERROR_WMI_TRY_AGAIN);
618     cmp2(STATUS_WMI_READ_ONLY,                   ERROR_WMI_READ_ONLY);
619     cmp2(STATUS_WMI_SET_FAILURE,                 ERROR_WMI_SET_FAILURE);
620     cmp2(STATUS_WMI_NOT_SUPPORTED,               ERROR_NOT_SUPPORTED);
621     cmp2(STATUS_WMI_GUID_DISCONNECTED,           ERROR_WMI_GUID_DISCONNECTED);
622     cmp2(STATUS_WMI_ALREADY_DISABLED,            ERROR_WMI_ALREADY_DISABLED);
623     cmp2(STATUS_WMI_ALREADY_ENABLED,             ERROR_WMI_ALREADY_ENABLED);
624     cmp2(STATUS_COPY_PROTECTION_FAILURE,         STG_E_STATUS_COPY_PROTECTION_FAILURE);
625     cmp2(STATUS_CSS_AUTHENTICATION_FAILURE,      STG_E_CSS_AUTHENTICATION_FAILURE);
626     cmp2(STATUS_CSS_KEY_NOT_PRESENT,             STG_E_CSS_KEY_NOT_PRESENT);
627     cmp2(STATUS_CSS_KEY_NOT_ESTABLISHED,         STG_E_CSS_KEY_NOT_ESTABLISHED);
628     cmp2(STATUS_CSS_SCRAMBLED_SECTOR,            STG_E_CSS_SCRAMBLED_SECTOR);
629     cmp2(STATUS_CSS_REGION_MISMATCH,             STG_E_CSS_REGION_MISMATCH);
630     cmp2(STATUS_CSS_RESETS_EXHAUSTED,            STG_E_RESETS_EXHAUSTED);
631     cmp(RPC_NT_SERVER_UNAVAILABLE,               RPC_S_SERVER_UNAVAILABLE);
632     cmp(RPC_NT_INVALID_STRING_BINDING,           RPC_S_INVALID_STRING_BINDING);
633     cmp(RPC_NT_WRONG_KIND_OF_BINDING,            RPC_S_WRONG_KIND_OF_BINDING);
634     cmp(RPC_NT_PROTSEQ_NOT_SUPPORTED,            RPC_S_PROTSEQ_NOT_SUPPORTED);
635     cmp(RPC_NT_INVALID_RPC_PROTSEQ,              RPC_S_INVALID_RPC_PROTSEQ);
636     cmp(RPC_NT_INVALID_STRING_UUID,              RPC_S_INVALID_STRING_UUID);
637     cmp(RPC_NT_INVALID_ENDPOINT_FORMAT,          RPC_S_INVALID_ENDPOINT_FORMAT);
638     cmp(RPC_NT_INVALID_NET_ADDR,                 RPC_S_INVALID_NET_ADDR);
639     cmp(RPC_NT_NO_ENDPOINT_FOUND,                RPC_S_NO_ENDPOINT_FOUND);
640     cmp(RPC_NT_INVALID_TIMEOUT,                  RPC_S_INVALID_TIMEOUT);
641     cmp(RPC_NT_OBJECT_NOT_FOUND,                 RPC_S_OBJECT_NOT_FOUND);
642     cmp(RPC_NT_ALREADY_REGISTERED,               RPC_S_ALREADY_REGISTERED);
643     cmp(RPC_NT_TYPE_ALREADY_REGISTERED,          RPC_S_TYPE_ALREADY_REGISTERED);
644     cmp(RPC_NT_ALREADY_LISTENING,                RPC_S_ALREADY_LISTENING);
645     cmp(RPC_NT_NO_PROTSEQS_REGISTERED,           RPC_S_NO_PROTSEQS_REGISTERED);
646     cmp(RPC_NT_NOT_LISTENING,                    RPC_S_NOT_LISTENING);
647     cmp(RPC_NT_UNKNOWN_MGR_TYPE,                 RPC_S_UNKNOWN_MGR_TYPE);
648     cmp(RPC_NT_UNKNOWN_IF,                       RPC_S_UNKNOWN_IF);
649     cmp(RPC_NT_NO_BINDINGS,                      RPC_S_NO_BINDINGS);
650     cmp(RPC_NT_NO_MORE_BINDINGS,                 RPC_S_NO_MORE_BINDINGS);
651     cmp(RPC_NT_NO_PROTSEQS,                      RPC_S_NO_PROTSEQS);
652     cmp(RPC_NT_CANT_CREATE_ENDPOINT,             RPC_S_CANT_CREATE_ENDPOINT);
653     cmp(RPC_NT_OUT_OF_RESOURCES,                 RPC_S_OUT_OF_RESOURCES);
654     cmp(RPC_NT_SERVER_TOO_BUSY,                  RPC_S_SERVER_TOO_BUSY);
655     cmp(RPC_NT_INVALID_NETWORK_OPTIONS,          RPC_S_INVALID_NETWORK_OPTIONS);
656     cmp(RPC_NT_NO_CALL_ACTIVE,                   RPC_S_NO_CALL_ACTIVE);
657     cmp(RPC_NT_CALL_FAILED,                      RPC_S_CALL_FAILED);
658     cmp(RPC_NT_CALL_FAILED_DNE,                  RPC_S_CALL_FAILED_DNE);
659     cmp(RPC_NT_PROTOCOL_ERROR,                   RPC_S_PROTOCOL_ERROR);
660     cmp(RPC_NT_UNSUPPORTED_TRANS_SYN,            RPC_S_UNSUPPORTED_TRANS_SYN);
661     cmp(RPC_NT_UNSUPPORTED_TYPE,                 RPC_S_UNSUPPORTED_TYPE);
662     cmp(RPC_NT_INVALID_TAG,                      RPC_S_INVALID_TAG);
663     cmp(RPC_NT_INVALID_BOUND,                    RPC_S_INVALID_BOUND);
664     cmp(RPC_NT_NO_ENTRY_NAME,                    RPC_S_NO_ENTRY_NAME);
665     cmp(RPC_NT_INVALID_NAME_SYNTAX,              RPC_S_INVALID_NAME_SYNTAX);
666     cmp(RPC_NT_UNSUPPORTED_NAME_SYNTAX,          RPC_S_UNSUPPORTED_NAME_SYNTAX);
667     cmp(RPC_NT_UUID_NO_ADDRESS,                  RPC_S_UUID_NO_ADDRESS);
668     cmp(RPC_NT_DUPLICATE_ENDPOINT,               RPC_S_DUPLICATE_ENDPOINT);
669     cmp(RPC_NT_UNKNOWN_AUTHN_TYPE,               RPC_S_UNKNOWN_AUTHN_TYPE);
670     cmp(RPC_NT_MAX_CALLS_TOO_SMALL,              RPC_S_MAX_CALLS_TOO_SMALL);
671     cmp(RPC_NT_STRING_TOO_LONG,                  RPC_S_STRING_TOO_LONG);
672     cmp(RPC_NT_PROTSEQ_NOT_FOUND,                RPC_S_PROTSEQ_NOT_FOUND);
673     cmp(RPC_NT_PROCNUM_OUT_OF_RANGE,             RPC_S_PROCNUM_OUT_OF_RANGE);
674     cmp(RPC_NT_BINDING_HAS_NO_AUTH,              RPC_S_BINDING_HAS_NO_AUTH);
675     cmp(RPC_NT_UNKNOWN_AUTHN_SERVICE,            RPC_S_UNKNOWN_AUTHN_SERVICE);
676     cmp(RPC_NT_UNKNOWN_AUTHN_LEVEL,              RPC_S_UNKNOWN_AUTHN_LEVEL);
677     cmp(RPC_NT_INVALID_AUTH_IDENTITY,            RPC_S_INVALID_AUTH_IDENTITY);
678     cmp(RPC_NT_UNKNOWN_AUTHZ_SERVICE,            RPC_S_UNKNOWN_AUTHZ_SERVICE);
679     cmp(EPT_NT_INVALID_ENTRY,                    EPT_S_INVALID_ENTRY);
680     cmp(EPT_NT_CANT_PERFORM_OP,                  EPT_S_CANT_PERFORM_OP);
681     cmp(EPT_NT_NOT_REGISTERED,                   EPT_S_NOT_REGISTERED);
682     cmp(RPC_NT_NOTHING_TO_EXPORT,                RPC_S_NOTHING_TO_EXPORT);
683     cmp(RPC_NT_INCOMPLETE_NAME,                  RPC_S_INCOMPLETE_NAME);
684     cmp(RPC_NT_INVALID_VERS_OPTION,              RPC_S_INVALID_VERS_OPTION);
685     cmp(RPC_NT_NO_MORE_MEMBERS,                  RPC_S_NO_MORE_MEMBERS);
686     cmp(RPC_NT_NOT_ALL_OBJS_UNEXPORTED,          RPC_S_NOT_ALL_OBJS_UNEXPORTED);
687     cmp(RPC_NT_INTERFACE_NOT_FOUND,              RPC_S_INTERFACE_NOT_FOUND);
688     cmp(RPC_NT_ENTRY_ALREADY_EXISTS,             RPC_S_ENTRY_ALREADY_EXISTS);
689     cmp(RPC_NT_ENTRY_NOT_FOUND,                  RPC_S_ENTRY_NOT_FOUND);
690     cmp(RPC_NT_NAME_SERVICE_UNAVAILABLE,         RPC_S_NAME_SERVICE_UNAVAILABLE);
691     cmp(RPC_NT_INVALID_NAF_ID,                   RPC_S_INVALID_NAF_ID);
692     cmp(RPC_NT_CANNOT_SUPPORT,                   RPC_S_CANNOT_SUPPORT);
693     cmp(RPC_NT_NO_CONTEXT_AVAILABLE,             RPC_S_NO_CONTEXT_AVAILABLE);
694     cmp(RPC_NT_INTERNAL_ERROR,                   RPC_S_INTERNAL_ERROR);
695     cmp(RPC_NT_ZERO_DIVIDE,                      RPC_S_ZERO_DIVIDE);
696     cmp(RPC_NT_ADDRESS_ERROR,                    RPC_S_ADDRESS_ERROR);
697     cmp(RPC_NT_FP_DIV_ZERO,                      RPC_S_FP_DIV_ZERO);
698     cmp(RPC_NT_FP_UNDERFLOW,                     RPC_S_FP_UNDERFLOW);
699     cmp(RPC_NT_FP_OVERFLOW,                      RPC_S_FP_OVERFLOW);
700     cmp(RPC_NT_NO_MORE_ENTRIES,                  RPC_X_NO_MORE_ENTRIES);
701     cmp(RPC_NT_SS_CHAR_TRANS_OPEN_FAIL,          RPC_X_SS_CHAR_TRANS_OPEN_FAIL);
702     cmp(RPC_NT_SS_CHAR_TRANS_SHORT_FILE,         RPC_X_SS_CHAR_TRANS_SHORT_FILE);
703     cmp(RPC_NT_SS_CONTEXT_MISMATCH,              ERROR_INVALID_HANDLE);
704     cmp(RPC_NT_SS_CONTEXT_DAMAGED,               RPC_X_SS_CONTEXT_DAMAGED);
705     cmp(RPC_NT_SS_HANDLES_MISMATCH,              RPC_X_SS_HANDLES_MISMATCH);
706     cmp(RPC_NT_SS_CANNOT_GET_CALL_HANDLE,        RPC_X_SS_CANNOT_GET_CALL_HANDLE);
707     cmp(RPC_NT_NULL_REF_POINTER,                 RPC_X_NULL_REF_POINTER);
708     cmp(RPC_NT_ENUM_VALUE_OUT_OF_RANGE,          RPC_X_ENUM_VALUE_OUT_OF_RANGE);
709     cmp(RPC_NT_BYTE_COUNT_TOO_SMALL,             RPC_X_BYTE_COUNT_TOO_SMALL);
710     cmp(RPC_NT_BAD_STUB_DATA,                    RPC_X_BAD_STUB_DATA);
711     cmp(RPC_NT_INVALID_OBJECT,                   RPC_S_INVALID_OBJECT);
712     cmp(STATUS_NO_TRUST_LSA_SECRET,              ERROR_NO_TRUST_LSA_SECRET);
713     cmp(STATUS_NO_TRUST_SAM_ACCOUNT,             ERROR_NO_TRUST_SAM_ACCOUNT);
714     cmp(STATUS_TRUSTED_DOMAIN_FAILURE,           ERROR_TRUSTED_DOMAIN_FAILURE);
715     cmp(STATUS_TRUSTED_RELATIONSHIP_FAILURE,     ERROR_TRUSTED_RELATIONSHIP_FAILURE);
716     cmp(STATUS_TRUST_FAILURE,                    ERROR_TRUST_FAILURE);
717     cmp(RPC_NT_CALL_IN_PROGRESS,                 RPC_S_CALL_IN_PROGRESS);
718     cmp(STATUS_LOG_FILE_FULL,                    ERROR_LOG_FILE_FULL);
719     cmp(STATUS_EVENTLOG_FILE_CHANGED,            ERROR_EVENTLOG_FILE_CHANGED);
720     cmp(STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT, ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT);
721     cmp(STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT, ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT);
722     cmp(STATUS_NOLOGON_SERVER_TRUST_ACCOUNT,     ERROR_NOLOGON_SERVER_TRUST_ACCOUNT);
723     cmp(STATUS_DOMAIN_TRUST_INCONSISTENT,        ERROR_DOMAIN_TRUST_INCONSISTENT);
724     cmp(STATUS_NO_USER_SESSION_KEY,              ERROR_NO_USER_SESSION_KEY);
725     cmp(STATUS_POSSIBLE_DEADLOCK,                ERROR_POSSIBLE_DEADLOCK);
726     cmp(STATUS_IMAGE_ALREADY_LOADED,             ERROR_SERVICE_ALREADY_RUNNING);
727     cmp(RPC_NT_GROUP_MEMBER_NOT_FOUND,           RPC_S_GROUP_MEMBER_NOT_FOUND);
728     cmp(RPC_NT_NO_INTERFACES,                    RPC_S_NO_INTERFACES);
729     cmp(RPC_NT_CALL_CANCELLED,                   RPC_S_CALL_CANCELLED);
730     cmp(RPC_NT_BINDING_INCOMPLETE,               RPC_S_BINDING_INCOMPLETE);
731     cmp(RPC_NT_COMM_FAILURE,                     RPC_S_COMM_FAILURE);
732     cmp(RPC_NT_UNSUPPORTED_AUTHN_LEVEL,          RPC_S_UNSUPPORTED_AUTHN_LEVEL);
733     cmp(RPC_NT_NO_PRINC_NAME,                    RPC_S_NO_PRINC_NAME);
734     cmp(RPC_NT_NOT_RPC_ERROR,                    RPC_S_NOT_RPC_ERROR);
735     cmp(RPC_NT_UUID_LOCAL_ONLY,                  RPC_S_UUID_LOCAL_ONLY);
736     cmp(RPC_NT_SEC_PKG_ERROR,                    RPC_S_SEC_PKG_ERROR);
737     cmp(RPC_NT_NOT_CANCELLED,                    RPC_S_NOT_CANCELLED);
738     cmp(RPC_NT_INVALID_ES_ACTION,                RPC_X_INVALID_ES_ACTION);
739     cmp(RPC_NT_WRONG_ES_VERSION,                 RPC_X_WRONG_ES_VERSION);
740     cmp(RPC_NT_WRONG_STUB_VERSION,               RPC_X_WRONG_STUB_VERSION);
741     cmp(RPC_NT_INVALID_PIPE_OBJECT,              RPC_X_INVALID_PIPE_OBJECT);
742     cmp(RPC_NT_INVALID_PIPE_OPERATION,           RPC_X_INVALID_PIPE_OPERATION);
743     cmp(RPC_NT_WRONG_PIPE_VERSION,               RPC_X_WRONG_PIPE_VERSION);
744     cmp(EPT_NT_CANT_CREATE,                      EPT_S_CANT_CREATE);
745     cmp(RPC_NT_SEND_INCOMPLETE,                  RPC_S_SEND_INCOMPLETE);
746     cmp2(RPC_NT_INVALID_ASYNC_HANDLE,            RPC_S_INVALID_ASYNC_HANDLE);
747     cmp2(RPC_NT_INVALID_ASYNC_CALL,              RPC_S_INVALID_ASYNC_CALL);
748     cmp2(RPC_NT_PIPE_CLOSED,                     RPC_X_PIPE_CLOSED);
749     cmp2(RPC_NT_PIPE_EMPTY,                      RPC_X_PIPE_EMPTY);
750     cmp2(RPC_NT_PIPE_DISCIPLINE_ERROR,           RPC_X_PIPE_DISCIPLINE_ERROR);
751     cmp(STATUS_NO_BROWSER_SERVERS_FOUND,         ERROR_NO_BROWSER_SERVERS_FOUND);
752     cmp(STATUS_MAPPED_ALIGNMENT,                 ERROR_MAPPED_ALIGNMENT);
753     cmp(STATUS_CONNECTION_IN_USE,                ERROR_DEVICE_IN_USE);
754     cmp(STATUS_VERIFY_REQUIRED,                  ERROR_MEDIA_CHANGED);
755     cmp(STATUS_ALREADY_DISCONNECTED,             ERROR_ACTIVE_CONNECTIONS);
756     cmp(STATUS_CONNECTION_REFUSED,               ERROR_CONNECTION_REFUSED);
757     cmp(STATUS_GRACEFUL_DISCONNECT,              ERROR_GRACEFUL_DISCONNECT);
758     cmp(STATUS_ADDRESS_ALREADY_ASSOCIATED,       ERROR_ADDRESS_ALREADY_ASSOCIATED);
759     cmp(STATUS_ADDRESS_NOT_ASSOCIATED,           ERROR_ADDRESS_NOT_ASSOCIATED);
760     cmp(STATUS_CONNECTION_INVALID,               ERROR_CONNECTION_INVALID);
761     cmp(STATUS_CONNECTION_ACTIVE,                ERROR_CONNECTION_ACTIVE);
762     cmp(STATUS_NETWORK_UNREACHABLE,              ERROR_NETWORK_UNREACHABLE);
763     cmp(STATUS_HOST_UNREACHABLE,                 ERROR_HOST_UNREACHABLE);
764     cmp2(STATUS_HOST_DOWN,                       ERROR_HOST_DOWN);
765     cmp(STATUS_PROTOCOL_UNREACHABLE,             ERROR_PROTOCOL_UNREACHABLE);
766     cmp(STATUS_PORT_UNREACHABLE,                 ERROR_PORT_UNREACHABLE);
767     cmp(STATUS_REQUEST_ABORTED,                  ERROR_REQUEST_ABORTED);
768     cmp(STATUS_CONNECTION_ABORTED,               ERROR_CONNECTION_ABORTED);
769     cmp(STATUS_CONNECTION_COUNT_LIMIT,           ERROR_CONNECTION_COUNT_LIMIT);
770     cmp(STATUS_PATH_NOT_COVERED,                 ERROR_HOST_UNREACHABLE);
771     cmp(STATUS_LOGIN_TIME_RESTRICTION,           ERROR_LOGIN_TIME_RESTRICTION);
772     cmp(STATUS_LOGIN_WKSTA_RESTRICTION,          ERROR_LOGIN_WKSTA_RESTRICTION);
773     cmp(STATUS_LICENSE_QUOTA_EXCEEDED,           ERROR_LICENSE_QUOTA_EXCEEDED);
774     cmp(STATUS_RESOURCE_NOT_OWNED,               ERROR_NOT_OWNER);
775     cmp3(STATUS_DUPLICATE_OBJECTID,              ERROR_OBJECT_ALREADY_EXISTS, STATUS_DUPLICATE_OBJECTID);
776     cmp3(STATUS_OBJECTID_EXISTS,                 ERROR_OBJECT_ALREADY_EXISTS, STATUS_OBJECTID_EXISTS);
777     cmp2(STATUS_OBJECTID_NOT_FOUND,              ERROR_FILE_NOT_FOUND);
778     cmp2(STATUS_MFT_TOO_FRAGMENTED,              ERROR_DISK_TOO_FRAGMENTED);
779     cmp(SEC_E_INSUFFICIENT_MEMORY,               ERROR_NO_SYSTEM_RESOURCES);
780     cmp(SEC_E_INVALID_HANDLE,                    ERROR_INVALID_HANDLE);
781     cmp(SEC_E_UNSUPPORTED_FUNCTION,              ERROR_INVALID_FUNCTION);
782     cmp(SEC_E_TARGET_UNKNOWN,                    ERROR_BAD_NETPATH);
783     cmp(SEC_E_INTERNAL_ERROR,                    ERROR_INTERNAL_ERROR);
784     cmp(SEC_E_SECPKG_NOT_FOUND,                  ERROR_NO_SUCH_PACKAGE);
785     cmp(SEC_E_NOT_OWNER,                         ERROR_NOT_OWNER);
786     cmp(SEC_E_CANNOT_INSTALL,                    ERROR_NO_SUCH_PACKAGE);
787     cmp(SEC_E_INVALID_TOKEN,                     ERROR_INVALID_PARAMETER);
788     cmp(SEC_E_CANNOT_PACK,                       ERROR_INVALID_PARAMETER);
789     cmp(SEC_E_QOP_NOT_SUPPORTED,                 ERROR_NOT_SUPPORTED);
790     cmp(SEC_E_NO_IMPERSONATION,                  ERROR_CANNOT_IMPERSONATE);
791     cmp2(SEC_E_MULTIPLE_ACCOUNTS,                ERROR_CANNOT_IMPERSONATE);
792     cmp(SEC_E_LOGON_DENIED,                      ERROR_LOGON_FAILURE);
793     cmp(SEC_E_UNKNOWN_CREDENTIALS,               ERROR_INVALID_PARAMETER);
794     cmp2(SEC_E_INCOMPLETE_CREDENTIALS,           ERROR_INVALID_PARAMETER);
795     cmp(SEC_E_NO_CREDENTIALS,                    ERROR_NO_SUCH_LOGON_SESSION);
796     cmp(SEC_E_MESSAGE_ALTERED,                   ERROR_ACCESS_DENIED);
797     cmp(SEC_E_OUT_OF_SEQUENCE,                   ERROR_ACCESS_DENIED);
798     cmp(SEC_E_NO_AUTHENTICATING_AUTHORITY,       ERROR_NO_LOGON_SERVERS);
799     cmp(SEC_E_BAD_PKGID,                         ERROR_NO_SUCH_PACKAGE);
800     cmp4(SEC_E_WRONG_PRINCIPAL,                  ERROR_WRONG_TARGET_NAME, 1462);
801     cmp2(SEC_E_INCOMPLETE_MESSAGE,               ERROR_INVALID_USER_BUFFER);
802     cmp2(SEC_E_BUFFER_TOO_SMALL,                 ERROR_INSUFFICIENT_BUFFER);
803     cmp2(SEC_E_UNTRUSTED_ROOT,                   ERROR_TRUST_FAILURE);
804     cmp2(SEC_E_ILLEGAL_MESSAGE,                  ERROR_INVALID_PARAMETER);
805     cmp2(SEC_E_CERT_UNKNOWN,                     ERROR_INVALID_PARAMETER);
806     cmp2(SEC_E_CERT_EXPIRED,                     ERROR_PASSWORD_EXPIRED);
807     cmp2(SEC_E_ENCRYPT_FAILURE,                  ERROR_ENCRYPTION_FAILED);
808     cmp2(SEC_E_DECRYPT_FAILURE,                  ERROR_DECRYPTION_FAILED);
809     cmp2(SEC_E_ALGORITHM_MISMATCH,               ERROR_INVALID_FUNCTION);
810     cmp2(SEC_E_CONTEXT_EXPIRED,                  ERROR_CONTEXT_EXPIRED);
811     cmp2(STATUS_BAD_BINDINGS,                    SEC_E_BAD_BINDINGS);
812     cmp2(TRUST_E_CERT_SIGNATURE,                 ERROR_MUTUAL_AUTH_FAILED);
813     cmp2(CRYPT_E_REVOKED,                        ERROR_MUTUAL_AUTH_FAILED);
814     cmp2(CRYPT_E_NO_REVOCATION_CHECK,            ERROR_MUTUAL_AUTH_FAILED);
815     cmp2(CRYPT_E_REVOCATION_OFFLINE,             ERROR_MUTUAL_AUTH_FAILED);
816     cmp2(STATUS_SHUTDOWN_IN_PROGRESS,            ERROR_SHUTDOWN_IN_PROGRESS);
817     cmp2(STATUS_SERVER_SHUTDOWN_IN_PROGRESS,     ERROR_SERVER_SHUTDOWN_IN_PROGRESS);
818     cmp4(STATUS_DS_MEMBERSHIP_EVALUATED_LOCALLY, ERROR_DS_MEMBERSHIP_EVALUATED_LOCALLY, 1922);
819     cmp4(STATUS_DS_NO_ATTRIBUTE_OR_VALUE,        ERROR_DS_NO_ATTRIBUTE_OR_VALUE, 1923);
820     cmp4(STATUS_DS_INVALID_ATTRIBUTE_SYNTAX,     ERROR_DS_INVALID_ATTRIBUTE_SYNTAX, 1924);
821     cmp4(STATUS_DS_ATTRIBUTE_TYPE_UNDEFINED,     ERROR_DS_ATTRIBUTE_TYPE_UNDEFINED, 1925);
822     cmp4(STATUS_DS_ATTRIBUTE_OR_VALUE_EXISTS,    ERROR_DS_ATTRIBUTE_OR_VALUE_EXISTS, 1926);
823     cmp4(STATUS_DS_BUSY,                         ERROR_DS_BUSY, 1927);
824     cmp4(STATUS_DS_UNAVAILABLE,                  ERROR_DS_UNAVAILABLE, 1928);
825     cmp4(STATUS_DS_NO_RIDS_ALLOCATED,            ERROR_DS_NO_RIDS_ALLOCATED, 1929);
826     cmp4(STATUS_DS_NO_MORE_RIDS,                 ERROR_DS_NO_MORE_RIDS, 1930);
827     cmp4(STATUS_DS_INCORRECT_ROLE_OWNER,         ERROR_DS_INCORRECT_ROLE_OWNER, 1931);
828     cmp4(STATUS_DS_RIDMGR_INIT_ERROR,            ERROR_DS_RIDMGR_INIT_ERROR, 1932);
829     cmp4(STATUS_DS_OBJ_CLASS_VIOLATION,          ERROR_DS_OBJ_CLASS_VIOLATION, 1933);
830     cmp4(STATUS_DS_CANT_ON_NON_LEAF,             ERROR_DS_CANT_ON_NON_LEAF, 1934);
831     cmp4(STATUS_DS_CANT_ON_RDN,                  ERROR_DS_CANT_ON_RDN, 1935);
832     cmp4(STATUS_DS_CROSS_DOM_MOVE_FAILED,        ERROR_DS_CROSS_DOM_MOVE_ERROR, 1937);
833     cmp4(STATUS_DS_GC_NOT_AVAILABLE,             ERROR_DS_GC_NOT_AVAILABLE, 1938);
834     cmp2(STATUS_DS_CANT_MOD_OBJ_CLASS,           ERROR_DS_CANT_MOD_OBJ_CLASS);
835     cmp2(STATUS_DS_ADMIN_LIMIT_EXCEEDED,         ERROR_DS_ADMIN_LIMIT_EXCEEDED);
836     cmp2(STATUS_DIRECTORY_SERVICE_REQUIRED,      ERROR_DS_DS_REQUIRED);
837     cmp2(STATUS_DS_SAM_INIT_FAILURE,             ERROR_DS_SAM_INIT_FAILURE);
838     cmp2(STATUS_DS_CANT_START,                   ERROR_DS_CANT_START);
839     cmp2(STATUS_DS_INIT_FAILURE,                 ERROR_DS_INIT_FAILURE);
840     cmp2(STATUS_SAM_INIT_FAILURE,                ERROR_SAM_INIT_FAILURE);
841     cmp2(STATUS_DS_SENSITIVE_GROUP_VIOLATION,    ERROR_DS_SENSITIVE_GROUP_VIOLATION);
842     cmp2(STATUS_DS_CANT_MOD_PRIMARYGROUPID,      ERROR_DS_CANT_MOD_PRIMARYGROUPID);
843     cmp2(STATUS_DS_INVALID_GROUP_TYPE,           ERROR_DS_INVALID_GROUP_TYPE);
844     cmp2(STATUS_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN,           ERROR_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN);
845     cmp2(STATUS_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN,            ERROR_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN);
846     cmp2(STATUS_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER,                ERROR_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER);
847     cmp2(STATUS_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER,            ERROR_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER);
848     cmp2(STATUS_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER,             ERROR_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER);
849     cmp2(STATUS_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER,          ERROR_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER);
850     cmp2(STATUS_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER,     ERROR_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER);
851     cmp2(STATUS_DS_HAVE_PRIMARY_MEMBERS,         ERROR_DS_HAVE_PRIMARY_MEMBERS);
852     cmp2(STATUS_DS_GC_REQUIRED,                  ERROR_DS_GC_REQUIRED);
853     cmp2(STATUS_DS_LOCAL_MEMBER_OF_LOCAL_ONLY,   ERROR_DS_LOCAL_MEMBER_OF_LOCAL_ONLY);
854     cmp2(STATUS_DS_NO_FPO_IN_UNIVERSAL_GROUPS,   ERROR_DS_NO_FPO_IN_UNIVERSAL_GROUPS);
855     cmp2(STATUS_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED,ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED);
856     cmp2(STATUS_SAM_NEED_BOOTKEY_PASSWORD,       ERROR_DS_SAM_NEED_BOOTKEY_PASSWORD);
857     cmp2(STATUS_SAM_NEED_BOOTKEY_FLOPPY,         ERROR_DS_SAM_NEED_BOOTKEY_FLOPPY);
858     cmp2(STATUS_DS_INIT_FAILURE_CONSOLE,         ERROR_DS_INIT_FAILURE_CONSOLE);
859     cmp2(STATUS_DS_SAM_INIT_FAILURE_CONSOLE,     ERROR_DS_SAM_INIT_FAILURE_CONSOLE);
860     cmp2(STATUS_UNFINISHED_CONTEXT_DELETED,      SEC_E_UNFINISHED_CONTEXT_DELETED);
861     cmp2(STATUS_NO_TGT_REPLY,                    SEC_E_NO_TGT_REPLY);
862     cmp2(STATUS_NO_IP_ADDRESSES,                 SEC_E_NO_IP_ADDRESSES);
863     cmp2(STATUS_WRONG_CREDENTIAL_HANDLE,         SEC_E_WRONG_CREDENTIAL_HANDLE);
864     cmp2(STATUS_CRYPTO_SYSTEM_INVALID,           SEC_E_CRYPTO_SYSTEM_INVALID);
865     cmp2(STATUS_MAX_REFERRALS_EXCEEDED,          SEC_E_MAX_REFERRALS_EXCEEDED);
866     cmp2(STATUS_MUST_BE_KDC,                     SEC_E_MUST_BE_KDC);
867     cmp2(STATUS_STRONG_CRYPTO_NOT_SUPPORTED,     SEC_E_STRONG_CRYPTO_NOT_SUPPORTED);
868     cmp2(STATUS_TOO_MANY_PRINCIPALS,             SEC_E_TOO_MANY_PRINCIPALS);
869     cmp2(STATUS_NO_PA_DATA,                      SEC_E_NO_PA_DATA);
870     cmp2(STATUS_PKINIT_NAME_MISMATCH,            SEC_E_PKINIT_NAME_MISMATCH);
871     cmp2(STATUS_SMARTCARD_LOGON_REQUIRED,        SEC_E_SMARTCARD_LOGON_REQUIRED);
872     cmp2(STATUS_KDC_INVALID_REQUEST,             SEC_E_KDC_INVALID_REQUEST);
873     cmp2(STATUS_KDC_UNABLE_TO_REFER,             SEC_E_KDC_UNABLE_TO_REFER);
874     cmp2(STATUS_KDC_UNKNOWN_ETYPE,               SEC_E_KDC_UNKNOWN_ETYPE);
875     cmp2(STATUS_UNSUPPORTED_PREAUTH,             SEC_E_UNSUPPORTED_PREAUTH);
876     cmp4(STATUS_SHARED_POLICY,                   ERROR_SHARED_POLICY, 1939);
877     cmp4(STATUS_POLICY_OBJECT_NOT_FOUND,         ERROR_POLICY_OBJECT_NOT_FOUND, 1940);
878     cmp4(STATUS_POLICY_ONLY_IN_DS,               ERROR_POLICY_ONLY_IN_DS, 1941);
879     cmp4(STATUS_DEVICE_REMOVED,                  ERROR_DEVICE_REMOVED, 617);
880     cmp2(STATUS_RETRY,                           ERROR_RETRY);
881     cmp2(STATUS_NOT_SUPPORTED_ON_SBS,            ERROR_NOT_SUPPORTED_ON_SBS);
882     cmp2(STATUS_DRIVER_BLOCKED_CRITICAL,         ERROR_DRIVER_BLOCKED);
883     cmp2(STATUS_DRIVER_BLOCKED,                  ERROR_DRIVER_BLOCKED);
884     cmp2(STATUS_PRENT4_MACHINE_ACCOUNT,          ERROR_DS_MACHINE_ACCOUNT_CREATED_PRENT4);
885     cmp2(STATUS_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER,ERROR_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER);
886     cmp2(STATUS_DS_SHUTTING_DOWN,                ERROR_DS_SHUTTING_DOWN);
887     cmp2(STATUS_ACCESS_DISABLED_BY_POLICY_DEFAULT,       ERROR_ACCESS_DISABLED_BY_POLICY);
888     cmp2(STATUS_ACCESS_DISABLED_BY_POLICY_PATH,          ERROR_ACCESS_DISABLED_BY_POLICY);
889     cmp2(STATUS_ACCESS_DISABLED_BY_POLICY_PUBLISHER,     ERROR_ACCESS_DISABLED_BY_POLICY);
890     cmp2(STATUS_ACCESS_DISABLED_BY_POLICY_OTHER, ERROR_ACCESS_DISABLED_BY_POLICY);
891     cmp2(STATUS_FAIL_CHECK,                      ERROR_INVALID_PARAMETER);
892     cmp2(STATUS_CTX_CLOSE_PENDING,               ERROR_CTX_CLOSE_PENDING);
893     cmp2(STATUS_CTX_NO_OUTBUF,                   ERROR_CTX_NO_OUTBUF);
894     cmp2(STATUS_CTX_MODEM_INF_NOT_FOUND,         ERROR_CTX_MODEM_INF_NOT_FOUND);
895     cmp2(STATUS_CTX_INVALID_MODEMNAME,           ERROR_CTX_INVALID_MODEMNAME);
896     cmp2(STATUS_CTX_RESPONSE_ERROR,              ERROR_CTX_MODEM_RESPONSE_ERROR);
897     cmp2(STATUS_CTX_MODEM_RESPONSE_TIMEOUT,      ERROR_CTX_MODEM_RESPONSE_TIMEOUT);
898     cmp2(STATUS_CTX_MODEM_RESPONSE_NO_CARRIER,   ERROR_CTX_MODEM_RESPONSE_NO_CARRIER);
899     cmp2(STATUS_CTX_MODEM_RESPONSE_NO_DIALTONE,  ERROR_CTX_MODEM_RESPONSE_NO_DIALTONE);
900     cmp2(STATUS_CTX_MODEM_RESPONSE_BUSY,         ERROR_CTX_MODEM_RESPONSE_BUSY);
901     cmp2(STATUS_CTX_MODEM_RESPONSE_VOICE,        ERROR_CTX_MODEM_RESPONSE_VOICE);
902     cmp2(STATUS_CTX_TD_ERROR,                    ERROR_CTX_TD_ERROR);
903     cmp2(STATUS_CTX_WINSTATION_NAME_INVALID,     ERROR_CTX_WINSTATION_NAME_INVALID);
904     cmp2(STATUS_CTX_WINSTATION_NOT_FOUND,        ERROR_CTX_WINSTATION_NOT_FOUND);
905     cmp2(STATUS_CTX_WINSTATION_NAME_COLLISION,   ERROR_CTX_WINSTATION_ALREADY_EXISTS);
906     cmp2(STATUS_CTX_WINSTATION_BUSY,             ERROR_CTX_WINSTATION_BUSY);
907     cmp2(STATUS_CTX_GRAPHICS_INVALID,            ERROR_CTX_GRAPHICS_INVALID);
908     cmp2(STATUS_CTX_BAD_VIDEO_MODE,              ERROR_CTX_BAD_VIDEO_MODE);
909     cmp2(STATUS_CTX_NOT_CONSOLE,                 ERROR_CTX_NOT_CONSOLE);
910     cmp2(STATUS_CTX_CLIENT_QUERY_TIMEOUT,        ERROR_CTX_CLIENT_QUERY_TIMEOUT);
911     cmp2(STATUS_CTX_CONSOLE_DISCONNECT,          ERROR_CTX_CONSOLE_DISCONNECT);
912     cmp2(STATUS_CTX_CONSOLE_CONNECT,             ERROR_CTX_CONSOLE_CONNECT);
913     cmp2(STATUS_CTX_SHADOW_DENIED,               ERROR_CTX_SHADOW_DENIED);
914     cmp2(STATUS_CTX_SHADOW_INVALID,              ERROR_CTX_SHADOW_INVALID);
915     cmp2(STATUS_CTX_SHADOW_DISABLED,             ERROR_CTX_SHADOW_DISABLED);
916     cmp2(STATUS_CTX_WINSTATION_ACCESS_DENIED,    ERROR_CTX_WINSTATION_ACCESS_DENIED);
917     cmp2(STATUS_CTX_INVALID_PD,                  ERROR_CTX_INVALID_PD);
918     cmp2(STATUS_CTX_PD_NOT_FOUND,                ERROR_CTX_PD_NOT_FOUND);
919     cmp2(STATUS_CTX_INVALID_WD,                  ERROR_CTX_INVALID_WD);
920     cmp2(STATUS_CTX_WD_NOT_FOUND,                ERROR_CTX_WD_NOT_FOUND);
921     cmp2(STATUS_CTX_CLIENT_LICENSE_IN_USE,       ERROR_CTX_CLIENT_LICENSE_IN_USE);
922     cmp2(STATUS_CTX_CLIENT_LICENSE_NOT_SET,      ERROR_CTX_CLIENT_LICENSE_NOT_SET);
923     cmp2(STATUS_CTX_LICENSE_NOT_AVAILABLE,       ERROR_CTX_LICENSE_NOT_AVAILABLE);
924     cmp2(STATUS_CTX_LICENSE_CLIENT_INVALID,      ERROR_CTX_LICENSE_CLIENT_INVALID);
925     cmp2(STATUS_CTX_LICENSE_EXPIRED,             ERROR_CTX_LICENSE_EXPIRED);
926     cmp2(STATUS_CTX_SHADOW_ENDED_BY_MODE_CHANGE, ERROR_CTX_SHADOW_ENDED_BY_MODE_CHANGE);
927     cmp2(STATUS_CTX_SHADOW_NOT_RUNNING,          ERROR_CTX_SHADOW_NOT_RUNNING);
928     cmp2(STATUS_LICENSE_VIOLATION,               ERROR_CTX_LICENSE_NOT_AVAILABLE);
929     cmp2(STATUS_NETWORK_SESSION_EXPIRED,         ERROR_NO_USER_SESSION_KEY);
930     cmp2(STATUS_FILES_OPEN,                      ERROR_OPEN_FILES);
931     cmp2(STATUS_SXS_SECTION_NOT_FOUND,           ERROR_SXS_SECTION_NOT_FOUND);
932     cmp2(STATUS_SXS_CANT_GEN_ACTCTX,             ERROR_SXS_CANT_GEN_ACTCTX);
933     cmp2(STATUS_SXS_INVALID_ACTCTXDATA_FORMAT,   ERROR_SXS_INVALID_ACTCTXDATA_FORMAT);
934     cmp2(STATUS_SXS_ASSEMBLY_NOT_FOUND,          ERROR_SXS_ASSEMBLY_NOT_FOUND);
935     cmp2(STATUS_SXS_MANIFEST_FORMAT_ERROR,       ERROR_SXS_MANIFEST_FORMAT_ERROR);
936     cmp2(STATUS_SXS_MANIFEST_PARSE_ERROR,        ERROR_SXS_MANIFEST_PARSE_ERROR);
937     cmp2(STATUS_SXS_ACTIVATION_CONTEXT_DISABLED, ERROR_SXS_ACTIVATION_CONTEXT_DISABLED);
938     cmp2(STATUS_SXS_KEY_NOT_FOUND,               ERROR_SXS_KEY_NOT_FOUND);
939     cmp2(STATUS_SXS_VERSION_CONFLICT,            ERROR_SXS_VERSION_CONFLICT);
940     cmp2(STATUS_SXS_WRONG_SECTION_TYPE,          ERROR_SXS_WRONG_SECTION_TYPE);
941     cmp2(STATUS_SXS_THREAD_QUERIES_DISABLED,     ERROR_SXS_THREAD_QUERIES_DISABLED);
942     cmp2(STATUS_SXS_ASSEMBLY_MISSING,            ERROR_SXS_ASSEMBLY_MISSING);
943     cmp2(STATUS_SXS_PROCESS_DEFAULT_ALREADY_SET, ERROR_SXS_PROCESS_DEFAULT_ALREADY_SET);
944     cmp2(STATUS_SXS_EARLY_DEACTIVATION,          ERROR_SXS_EARLY_DEACTIVATION);
945     cmp2(STATUS_SXS_INVALID_DEACTIVATION,        ERROR_SXS_INVALID_DEACTIVATION);
946     cmp2(STATUS_SXS_MULTIPLE_DEACTIVATION,       ERROR_SXS_MULTIPLE_DEACTIVATION);
947     cmp2(STATUS_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY,        ERROR_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY);
948     cmp2(STATUS_SXS_PROCESS_TERMINATION_REQUESTED,                  ERROR_SXS_PROCESS_TERMINATION_REQUESTED);
949     cmp2(STATUS_SXS_CORRUPT_ACTIVATION_STACK,    ERROR_SXS_CORRUPT_ACTIVATION_STACK);
950     cmp2(STATUS_SXS_CORRUPTION,                  ERROR_SXS_CORRUPTION);
951     cmp2(STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE,               ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE);
952     cmp2(STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME,                ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME);
953     cmp2(STATUS_SXS_IDENTITY_DUPLICATE_ATTRIBUTE,                   ERROR_SXS_IDENTITY_DUPLICATE_ATTRIBUTE);
954     cmp2(STATUS_SXS_IDENTITY_PARSE_ERROR,        ERROR_SXS_IDENTITY_PARSE_ERROR);
955     cmp2(STATUS_SXS_COMPONENT_STORE_CORRUPT,     ERROR_SXS_COMPONENT_STORE_CORRUPT);
956     cmp2(STATUS_SXS_FILE_HASH_MISMATCH,          ERROR_SXS_FILE_HASH_MISMATCH);
957     cmp2(STATUS_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT,  ERROR_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT);
958     cmp2(STATUS_SXS_IDENTITIES_DIFFERENT,        ERROR_SXS_IDENTITIES_DIFFERENT);
959     cmp2(STATUS_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT,                   ERROR_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT);
960     cmp2(STATUS_SXS_FILE_NOT_PART_OF_ASSEMBLY,   ERROR_SXS_FILE_NOT_PART_OF_ASSEMBLY);
961     cmp2(STATUS_ADVANCED_INSTALLER_FAILED,       ERROR_ADVANCED_INSTALLER_FAILED);
962     cmp2(STATUS_XML_ENCODING_MISMATCH,           ERROR_XML_ENCODING_MISMATCH);
963     cmp2(STATUS_SXS_MANIFEST_TOO_BIG,            ERROR_SXS_MANIFEST_TOO_BIG);
964     cmp2(STATUS_SXS_SETTING_NOT_REGISTERED,      ERROR_SXS_SETTING_NOT_REGISTERED);
965     cmp2(STATUS_SXS_TRANSACTION_CLOSURE_INCOMPLETE,                 ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE);
966     cmp2(STATUS_SXS_PRIMITIVE_INSTALLER_FAILED,  ERROR_SMI_PRIMITIVE_INSTALLER_FAILED);
967     cmp2(STATUS_GENERIC_COMMAND_FAILED,          ERROR_GENERIC_COMMAND_FAILED);
968     cmp2(STATUS_SXS_FILE_HASH_MISSING,           ERROR_SXS_FILE_HASH_MISSING);
969     cmp2(STATUS_REDIRECTOR_STARTED,              ERROR_SERVICE_ALREADY_RUNNING);
970     cmp2(STATUS_AUDITING_DISABLED,               ERROR_AUDITING_DISABLED);
971     cmp2(STATUS_CLUSTER_NODE_ALREADY_UP,         ERROR_CLUSTER_NODE_ALREADY_UP);
972     cmp2(STATUS_CLUSTER_NODE_ALREADY_DOWN,       ERROR_CLUSTER_NODE_ALREADY_DOWN);
973     cmp2(STATUS_CLUSTER_NETWORK_ALREADY_ONLINE,  ERROR_CLUSTER_NETWORK_ALREADY_ONLINE);
974     cmp2(STATUS_CLUSTER_NETWORK_ALREADY_OFFLINE, ERROR_CLUSTER_NETWORK_ALREADY_OFFLINE);
975     cmp2(STATUS_CLUSTER_NODE_ALREADY_MEMBER,     ERROR_CLUSTER_NODE_ALREADY_MEMBER);
976     cmp2(STATUS_CLUSTER_INVALID_NODE,            ERROR_CLUSTER_INVALID_NODE);
977     cmp2(STATUS_CLUSTER_NODE_EXISTS,             ERROR_CLUSTER_NODE_EXISTS);
978     cmp2(STATUS_CLUSTER_JOIN_IN_PROGRESS,        ERROR_CLUSTER_JOIN_IN_PROGRESS);
979     cmp2(STATUS_CLUSTER_NODE_NOT_FOUND,          ERROR_CLUSTER_NODE_NOT_FOUND);
980     cmp2(STATUS_CLUSTER_LOCAL_NODE_NOT_FOUND,    ERROR_CLUSTER_LOCAL_NODE_NOT_FOUND);
981     cmp2(STATUS_CLUSTER_NETWORK_EXISTS,          ERROR_CLUSTER_NETWORK_EXISTS);
982     cmp2(STATUS_CLUSTER_NETWORK_NOT_FOUND,       ERROR_CLUSTER_NETWORK_NOT_FOUND);
983     cmp2(STATUS_CLUSTER_NETINTERFACE_EXISTS,     ERROR_CLUSTER_NETINTERFACE_EXISTS);
984     cmp2(STATUS_CLUSTER_NETINTERFACE_NOT_FOUND,  ERROR_CLUSTER_NETINTERFACE_NOT_FOUND);
985     cmp2(STATUS_CLUSTER_INVALID_REQUEST,         ERROR_CLUSTER_INVALID_REQUEST);
986     cmp2(STATUS_CLUSTER_INVALID_NETWORK_PROVIDER,ERROR_CLUSTER_INVALID_NETWORK_PROVIDER);
987     cmp2(STATUS_CLUSTER_NODE_DOWN,               ERROR_CLUSTER_NODE_DOWN);
988     cmp2(STATUS_CLUSTER_NODE_UNREACHABLE,        ERROR_CLUSTER_NODE_UNREACHABLE);
989     cmp2(STATUS_CLUSTER_NODE_NOT_MEMBER,         ERROR_CLUSTER_NODE_NOT_MEMBER);
990     cmp2(STATUS_CLUSTER_JOIN_NOT_IN_PROGRESS,    ERROR_CLUSTER_JOIN_NOT_IN_PROGRESS);
991     cmp2(STATUS_CLUSTER_INVALID_NETWORK,         ERROR_CLUSTER_INVALID_NETWORK);
992     cmp2(STATUS_CLUSTER_NODE_UP,                 ERROR_CLUSTER_NODE_UP);
993     cmp2(STATUS_CLUSTER_NODE_PAUSED,             ERROR_CLUSTER_NODE_PAUSED);
994     cmp2(STATUS_CLUSTER_NODE_NOT_PAUSED,         ERROR_CLUSTER_NODE_NOT_PAUSED);
995     cmp2(STATUS_CLUSTER_NO_SECURITY_CONTEXT,     ERROR_CLUSTER_NO_SECURITY_CONTEXT);
996     cmp2(STATUS_CLUSTER_NETWORK_NOT_INTERNAL,    ERROR_CLUSTER_NETWORK_NOT_INTERNAL);
997 }
998
999 START_TEST(error)
1000 {
1001     if (prepare_test())
1002         run_error_tests();
1003 }