• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src/router/samba-3.5.8/source4/libcli/util/
1/*
2 *  Unix SMB/CIFS implementation.
3 *  RPC Pipe client / server routines
4 *  Copyright (C) Luke Kenneth Casson Leighton 1997-2001.
5 *
6 *  This program is free software; you can redistribute it and/or modify
7 *  it under the terms of the GNU General Public License as published by
8 *  the Free Software Foundation; either version 3 of the License, or
9 *  (at your option) any later version.
10 *
11 *  This program is distributed in the hope that it will be useful,
12 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 *  GNU General Public License for more details.
15 *
16 *  You should have received a copy of the GNU General Public License
17 *  along with this program; if not, see <http://www.gnu.org/licenses/>.
18 */
19
20/* NT error codes.  please read nterr.h */
21
22#include "includes.h"
23#include "../libcli/ldap/ldap_errors.h"
24#undef strcasecmp
25
26typedef struct
27{
28	const char *nt_errstr;
29	NTSTATUS nt_errcode;
30} nt_err_code_struct;
31
32#define DOS_CODE(class, code) { #class ":" #code, NT_STATUS_DOS(class, code) }
33#define LDAP_CODE(code) { #code, NT_STATUS_LDAP(code) }
34
35static const nt_err_code_struct nt_errs[] =
36{
37	{ "NT_STATUS_OK", NT_STATUS_OK },
38	{ "STATUS_NO_MORE_FILES", STATUS_NO_MORE_FILES },
39	{ "STATUS_NO_MORE_EAS", STATUS_NO_MORE_EAS },
40	{ "STATUS_INVALID_EA_NAME", STATUS_INVALID_EA_NAME },
41	{ "STATUS_EA_LIST_INCONSISTENT", STATUS_EA_LIST_INCONSISTENT },
42	{ "STATUS_INVALID_EA_FLAG", STATUS_INVALID_EA_FLAG },
43	{ "NT_STATUS_UNSUCCESSFUL", NT_STATUS_UNSUCCESSFUL },
44	{ "NT_STATUS_NOT_IMPLEMENTED", NT_STATUS_NOT_IMPLEMENTED },
45	{ "NT_STATUS_INVALID_INFO_CLASS", NT_STATUS_INVALID_INFO_CLASS },
46	{ "NT_STATUS_INFO_LENGTH_MISMATCH", NT_STATUS_INFO_LENGTH_MISMATCH },
47	{ "NT_STATUS_ACCESS_VIOLATION", NT_STATUS_ACCESS_VIOLATION },
48	{ "STATUS_BUFFER_OVERFLOW", STATUS_BUFFER_OVERFLOW },
49	{ "NT_STATUS_IN_PAGE_ERROR", NT_STATUS_IN_PAGE_ERROR },
50	{ "NT_STATUS_PAGEFILE_QUOTA", NT_STATUS_PAGEFILE_QUOTA },
51	{ "NT_STATUS_INVALID_HANDLE", NT_STATUS_INVALID_HANDLE },
52	{ "NT_STATUS_BAD_INITIAL_STACK", NT_STATUS_BAD_INITIAL_STACK },
53	{ "NT_STATUS_BAD_INITIAL_PC", NT_STATUS_BAD_INITIAL_PC },
54	{ "NT_STATUS_INVALID_CID", NT_STATUS_INVALID_CID },
55	{ "NT_STATUS_TIMER_NOT_CANCELED", NT_STATUS_TIMER_NOT_CANCELED },
56	{ "NT_STATUS_INVALID_PARAMETER", NT_STATUS_INVALID_PARAMETER },
57	{ "NT_STATUS_NO_SUCH_DEVICE", NT_STATUS_NO_SUCH_DEVICE },
58	{ "NT_STATUS_NO_SUCH_FILE", NT_STATUS_NO_SUCH_FILE },
59	{ "NT_STATUS_INVALID_DEVICE_REQUEST", NT_STATUS_INVALID_DEVICE_REQUEST },
60	{ "NT_STATUS_END_OF_FILE", NT_STATUS_END_OF_FILE },
61	{ "NT_STATUS_WRONG_VOLUME", NT_STATUS_WRONG_VOLUME },
62	{ "NT_STATUS_NO_MEDIA_IN_DEVICE", NT_STATUS_NO_MEDIA_IN_DEVICE },
63	{ "NT_STATUS_UNRECOGNIZED_MEDIA", NT_STATUS_UNRECOGNIZED_MEDIA },
64	{ "NT_STATUS_NONEXISTENT_SECTOR", NT_STATUS_NONEXISTENT_SECTOR },
65	{ "NT_STATUS_MORE_PROCESSING_REQUIRED", NT_STATUS_MORE_PROCESSING_REQUIRED },
66	{ "NT_STATUS_NO_MEMORY", NT_STATUS_NO_MEMORY },
67	{ "NT_STATUS_CONFLICTING_ADDRESSES", NT_STATUS_CONFLICTING_ADDRESSES },
68	{ "NT_STATUS_NOT_MAPPED_VIEW", NT_STATUS_NOT_MAPPED_VIEW },
69	{ "NT_STATUS_UNABLE_TO_FREE_VM", NT_STATUS_UNABLE_TO_FREE_VM },
70	{ "NT_STATUS_UNABLE_TO_DELETE_SECTION", NT_STATUS_UNABLE_TO_DELETE_SECTION },
71	{ "NT_STATUS_INVALID_SYSTEM_SERVICE", NT_STATUS_INVALID_SYSTEM_SERVICE },
72	{ "NT_STATUS_ILLEGAL_INSTRUCTION", NT_STATUS_ILLEGAL_INSTRUCTION },
73	{ "NT_STATUS_INVALID_LOCK_SEQUENCE", NT_STATUS_INVALID_LOCK_SEQUENCE },
74	{ "NT_STATUS_INVALID_VIEW_SIZE", NT_STATUS_INVALID_VIEW_SIZE },
75	{ "NT_STATUS_INVALID_FILE_FOR_SECTION", NT_STATUS_INVALID_FILE_FOR_SECTION },
76	{ "NT_STATUS_ALREADY_COMMITTED", NT_STATUS_ALREADY_COMMITTED },
77	{ "NT_STATUS_ACCESS_DENIED", NT_STATUS_ACCESS_DENIED },
78	{ "NT_STATUS_BUFFER_TOO_SMALL", NT_STATUS_BUFFER_TOO_SMALL },
79	{ "NT_STATUS_OBJECT_TYPE_MISMATCH", NT_STATUS_OBJECT_TYPE_MISMATCH },
80	{ "NT_STATUS_NONCONTINUABLE_EXCEPTION", NT_STATUS_NONCONTINUABLE_EXCEPTION },
81	{ "NT_STATUS_INVALID_DISPOSITION", NT_STATUS_INVALID_DISPOSITION },
82	{ "NT_STATUS_UNWIND", NT_STATUS_UNWIND },
83	{ "NT_STATUS_BAD_STACK", NT_STATUS_BAD_STACK },
84	{ "NT_STATUS_INVALID_UNWIND_TARGET", NT_STATUS_INVALID_UNWIND_TARGET },
85	{ "NT_STATUS_NOT_LOCKED", NT_STATUS_NOT_LOCKED },
86	{ "NT_STATUS_PARITY_ERROR", NT_STATUS_PARITY_ERROR },
87	{ "NT_STATUS_UNABLE_TO_DECOMMIT_VM", NT_STATUS_UNABLE_TO_DECOMMIT_VM },
88	{ "NT_STATUS_NOT_COMMITTED", NT_STATUS_NOT_COMMITTED },
89	{ "NT_STATUS_INVALID_PORT_ATTRIBUTES", NT_STATUS_INVALID_PORT_ATTRIBUTES },
90	{ "NT_STATUS_PORT_MESSAGE_TOO_LONG", NT_STATUS_PORT_MESSAGE_TOO_LONG },
91	{ "NT_STATUS_INVALID_PARAMETER_MIX", NT_STATUS_INVALID_PARAMETER_MIX },
92	{ "NT_STATUS_INVALID_QUOTA_LOWER", NT_STATUS_INVALID_QUOTA_LOWER },
93	{ "NT_STATUS_DISK_CORRUPT_ERROR", NT_STATUS_DISK_CORRUPT_ERROR },
94	{ "NT_STATUS_OBJECT_NAME_INVALID", NT_STATUS_OBJECT_NAME_INVALID },
95	{ "NT_STATUS_OBJECT_NAME_NOT_FOUND", NT_STATUS_OBJECT_NAME_NOT_FOUND },
96	{ "NT_STATUS_OBJECT_NAME_COLLISION", NT_STATUS_OBJECT_NAME_COLLISION },
97	{ "NT_STATUS_HANDLE_NOT_WAITABLE", NT_STATUS_HANDLE_NOT_WAITABLE },
98	{ "NT_STATUS_PORT_DISCONNECTED", NT_STATUS_PORT_DISCONNECTED },
99	{ "NT_STATUS_DEVICE_ALREADY_ATTACHED", NT_STATUS_DEVICE_ALREADY_ATTACHED },
100	{ "NT_STATUS_OBJECT_PATH_INVALID", NT_STATUS_OBJECT_PATH_INVALID },
101	{ "NT_STATUS_OBJECT_PATH_NOT_FOUND", NT_STATUS_OBJECT_PATH_NOT_FOUND },
102	{ "NT_STATUS_OBJECT_PATH_SYNTAX_BAD", NT_STATUS_OBJECT_PATH_SYNTAX_BAD },
103	{ "NT_STATUS_DATA_OVERRUN", NT_STATUS_DATA_OVERRUN },
104	{ "NT_STATUS_DATA_LATE_ERROR", NT_STATUS_DATA_LATE_ERROR },
105	{ "NT_STATUS_DATA_ERROR", NT_STATUS_DATA_ERROR },
106	{ "NT_STATUS_CRC_ERROR", NT_STATUS_CRC_ERROR },
107	{ "NT_STATUS_SECTION_TOO_BIG", NT_STATUS_SECTION_TOO_BIG },
108	{ "NT_STATUS_PORT_CONNECTION_REFUSED", NT_STATUS_PORT_CONNECTION_REFUSED },
109	{ "NT_STATUS_INVALID_PORT_HANDLE", NT_STATUS_INVALID_PORT_HANDLE },
110	{ "NT_STATUS_SHARING_VIOLATION", NT_STATUS_SHARING_VIOLATION },
111	{ "NT_STATUS_QUOTA_EXCEEDED", NT_STATUS_QUOTA_EXCEEDED },
112	{ "NT_STATUS_INVALID_PAGE_PROTECTION", NT_STATUS_INVALID_PAGE_PROTECTION },
113	{ "NT_STATUS_MUTANT_NOT_OWNED", NT_STATUS_MUTANT_NOT_OWNED },
114	{ "NT_STATUS_SEMAPHORE_LIMIT_EXCEEDED", NT_STATUS_SEMAPHORE_LIMIT_EXCEEDED },
115	{ "NT_STATUS_PORT_ALREADY_SET", NT_STATUS_PORT_ALREADY_SET },
116	{ "NT_STATUS_SECTION_NOT_IMAGE", NT_STATUS_SECTION_NOT_IMAGE },
117	{ "NT_STATUS_SUSPEND_COUNT_EXCEEDED", NT_STATUS_SUSPEND_COUNT_EXCEEDED },
118	{ "NT_STATUS_THREAD_IS_TERMINATING", NT_STATUS_THREAD_IS_TERMINATING },
119	{ "NT_STATUS_BAD_WORKING_SET_LIMIT", NT_STATUS_BAD_WORKING_SET_LIMIT },
120	{ "NT_STATUS_INCOMPATIBLE_FILE_MAP", NT_STATUS_INCOMPATIBLE_FILE_MAP },
121	{ "NT_STATUS_SECTION_PROTECTION", NT_STATUS_SECTION_PROTECTION },
122	{ "NT_STATUS_EAS_NOT_SUPPORTED", NT_STATUS_EAS_NOT_SUPPORTED },
123	{ "NT_STATUS_EA_TOO_LARGE", NT_STATUS_EA_TOO_LARGE },
124	{ "NT_STATUS_NONEXISTENT_EA_ENTRY", NT_STATUS_NONEXISTENT_EA_ENTRY },
125	{ "NT_STATUS_NO_EAS_ON_FILE", NT_STATUS_NO_EAS_ON_FILE },
126	{ "NT_STATUS_EA_CORRUPT_ERROR", NT_STATUS_EA_CORRUPT_ERROR },
127	{ "NT_STATUS_FILE_LOCK_CONFLICT", NT_STATUS_FILE_LOCK_CONFLICT },
128	{ "NT_STATUS_LOCK_NOT_GRANTED", NT_STATUS_LOCK_NOT_GRANTED },
129	{ "NT_STATUS_DELETE_PENDING", NT_STATUS_DELETE_PENDING },
130	{ "NT_STATUS_CTL_FILE_NOT_SUPPORTED", NT_STATUS_CTL_FILE_NOT_SUPPORTED },
131	{ "NT_STATUS_UNKNOWN_REVISION", NT_STATUS_UNKNOWN_REVISION },
132	{ "NT_STATUS_REVISION_MISMATCH", NT_STATUS_REVISION_MISMATCH },
133	{ "NT_STATUS_INVALID_OWNER", NT_STATUS_INVALID_OWNER },
134	{ "NT_STATUS_INVALID_PRIMARY_GROUP", NT_STATUS_INVALID_PRIMARY_GROUP },
135	{ "NT_STATUS_NO_IMPERSONATION_TOKEN", NT_STATUS_NO_IMPERSONATION_TOKEN },
136	{ "NT_STATUS_CANT_DISABLE_MANDATORY", NT_STATUS_CANT_DISABLE_MANDATORY },
137	{ "NT_STATUS_NO_LOGON_SERVERS", NT_STATUS_NO_LOGON_SERVERS },
138	{ "NT_STATUS_NO_SUCH_LOGON_SESSION", NT_STATUS_NO_SUCH_LOGON_SESSION },
139	{ "NT_STATUS_NO_SUCH_PRIVILEGE", NT_STATUS_NO_SUCH_PRIVILEGE },
140	{ "NT_STATUS_PRIVILEGE_NOT_HELD", NT_STATUS_PRIVILEGE_NOT_HELD },
141	{ "NT_STATUS_INVALID_ACCOUNT_NAME", NT_STATUS_INVALID_ACCOUNT_NAME },
142	{ "NT_STATUS_USER_EXISTS", NT_STATUS_USER_EXISTS },
143	{ "NT_STATUS_NO_SUCH_USER", NT_STATUS_NO_SUCH_USER },
144	{ "NT_STATUS_GROUP_EXISTS", NT_STATUS_GROUP_EXISTS },
145	{ "NT_STATUS_NO_SUCH_GROUP", NT_STATUS_NO_SUCH_GROUP },
146	{ "NT_STATUS_MEMBER_IN_GROUP", NT_STATUS_MEMBER_IN_GROUP },
147	{ "NT_STATUS_MEMBER_NOT_IN_GROUP", NT_STATUS_MEMBER_NOT_IN_GROUP },
148	{ "NT_STATUS_LAST_ADMIN", NT_STATUS_LAST_ADMIN },
149	{ "NT_STATUS_WRONG_PASSWORD", NT_STATUS_WRONG_PASSWORD },
150	{ "NT_STATUS_ILL_FORMED_PASSWORD", NT_STATUS_ILL_FORMED_PASSWORD },
151	{ "NT_STATUS_PASSWORD_RESTRICTION", NT_STATUS_PASSWORD_RESTRICTION },
152	{ "NT_STATUS_LOGON_FAILURE", NT_STATUS_LOGON_FAILURE },
153	{ "NT_STATUS_ACCOUNT_RESTRICTION", NT_STATUS_ACCOUNT_RESTRICTION },
154	{ "NT_STATUS_INVALID_LOGON_HOURS", NT_STATUS_INVALID_LOGON_HOURS },
155	{ "NT_STATUS_INVALID_WORKSTATION", NT_STATUS_INVALID_WORKSTATION },
156	{ "NT_STATUS_PASSWORD_EXPIRED", NT_STATUS_PASSWORD_EXPIRED },
157	{ "NT_STATUS_ACCOUNT_DISABLED", NT_STATUS_ACCOUNT_DISABLED },
158	{ "NT_STATUS_NONE_MAPPED", NT_STATUS_NONE_MAPPED },
159	{ "NT_STATUS_TOO_MANY_LUIDS_REQUESTED", NT_STATUS_TOO_MANY_LUIDS_REQUESTED },
160	{ "NT_STATUS_LUIDS_EXHAUSTED", NT_STATUS_LUIDS_EXHAUSTED },
161	{ "NT_STATUS_INVALID_SUB_AUTHORITY", NT_STATUS_INVALID_SUB_AUTHORITY },
162	{ "NT_STATUS_INVALID_ACL", NT_STATUS_INVALID_ACL },
163	{ "NT_STATUS_INVALID_SID", NT_STATUS_INVALID_SID },
164	{ "NT_STATUS_INVALID_SECURITY_DESCR", NT_STATUS_INVALID_SECURITY_DESCR },
165	{ "NT_STATUS_PROCEDURE_NOT_FOUND", NT_STATUS_PROCEDURE_NOT_FOUND },
166	{ "NT_STATUS_INVALID_IMAGE_FORMAT", NT_STATUS_INVALID_IMAGE_FORMAT },
167	{ "NT_STATUS_NO_TOKEN", NT_STATUS_NO_TOKEN },
168	{ "NT_STATUS_BAD_INHERITANCE_ACL", NT_STATUS_BAD_INHERITANCE_ACL },
169	{ "NT_STATUS_RANGE_NOT_LOCKED", NT_STATUS_RANGE_NOT_LOCKED },
170	{ "NT_STATUS_DISK_FULL", NT_STATUS_DISK_FULL },
171	{ "NT_STATUS_SERVER_DISABLED", NT_STATUS_SERVER_DISABLED },
172	{ "NT_STATUS_SERVER_NOT_DISABLED", NT_STATUS_SERVER_NOT_DISABLED },
173	{ "NT_STATUS_TOO_MANY_GUIDS_REQUESTED", NT_STATUS_TOO_MANY_GUIDS_REQUESTED },
174	{ "NT_STATUS_GUIDS_EXHAUSTED", NT_STATUS_GUIDS_EXHAUSTED },
175	{ "NT_STATUS_INVALID_ID_AUTHORITY", NT_STATUS_INVALID_ID_AUTHORITY },
176	{ "NT_STATUS_AGENTS_EXHAUSTED", NT_STATUS_AGENTS_EXHAUSTED },
177	{ "NT_STATUS_INVALID_VOLUME_LABEL", NT_STATUS_INVALID_VOLUME_LABEL },
178	{ "NT_STATUS_SECTION_NOT_EXTENDED", NT_STATUS_SECTION_NOT_EXTENDED },
179	{ "NT_STATUS_NOT_MAPPED_DATA", NT_STATUS_NOT_MAPPED_DATA },
180	{ "NT_STATUS_RESOURCE_DATA_NOT_FOUND", NT_STATUS_RESOURCE_DATA_NOT_FOUND },
181	{ "NT_STATUS_RESOURCE_TYPE_NOT_FOUND", NT_STATUS_RESOURCE_TYPE_NOT_FOUND },
182	{ "NT_STATUS_RESOURCE_NAME_NOT_FOUND", NT_STATUS_RESOURCE_NAME_NOT_FOUND },
183	{ "NT_STATUS_ARRAY_BOUNDS_EXCEEDED", NT_STATUS_ARRAY_BOUNDS_EXCEEDED },
184	{ "NT_STATUS_FLOAT_DENORMAL_OPERAND", NT_STATUS_FLOAT_DENORMAL_OPERAND },
185	{ "NT_STATUS_FLOAT_DIVIDE_BY_ZERO", NT_STATUS_FLOAT_DIVIDE_BY_ZERO },
186	{ "NT_STATUS_FLOAT_INEXACT_RESULT", NT_STATUS_FLOAT_INEXACT_RESULT },
187	{ "NT_STATUS_FLOAT_INVALID_OPERATION", NT_STATUS_FLOAT_INVALID_OPERATION },
188	{ "NT_STATUS_FLOAT_OVERFLOW", NT_STATUS_FLOAT_OVERFLOW },
189	{ "NT_STATUS_FLOAT_STACK_CHECK", NT_STATUS_FLOAT_STACK_CHECK },
190	{ "NT_STATUS_FLOAT_UNDERFLOW", NT_STATUS_FLOAT_UNDERFLOW },
191	{ "NT_STATUS_INTEGER_DIVIDE_BY_ZERO", NT_STATUS_INTEGER_DIVIDE_BY_ZERO },
192	{ "NT_STATUS_INTEGER_OVERFLOW", NT_STATUS_INTEGER_OVERFLOW },
193	{ "NT_STATUS_PRIVILEGED_INSTRUCTION", NT_STATUS_PRIVILEGED_INSTRUCTION },
194	{ "NT_STATUS_TOO_MANY_PAGING_FILES", NT_STATUS_TOO_MANY_PAGING_FILES },
195	{ "NT_STATUS_FILE_INVALID", NT_STATUS_FILE_INVALID },
196	{ "NT_STATUS_ALLOTTED_SPACE_EXCEEDED", NT_STATUS_ALLOTTED_SPACE_EXCEEDED },
197	{ "NT_STATUS_INSUFFICIENT_RESOURCES", NT_STATUS_INSUFFICIENT_RESOURCES },
198	{ "NT_STATUS_DFS_EXIT_PATH_FOUND", NT_STATUS_DFS_EXIT_PATH_FOUND },
199	{ "NT_STATUS_DEVICE_DATA_ERROR", NT_STATUS_DEVICE_DATA_ERROR },
200	{ "NT_STATUS_DEVICE_NOT_CONNECTED", NT_STATUS_DEVICE_NOT_CONNECTED },
201	{ "NT_STATUS_DEVICE_POWER_FAILURE", NT_STATUS_DEVICE_POWER_FAILURE },
202	{ "NT_STATUS_FREE_VM_NOT_AT_BASE", NT_STATUS_FREE_VM_NOT_AT_BASE },
203	{ "NT_STATUS_MEMORY_NOT_ALLOCATED", NT_STATUS_MEMORY_NOT_ALLOCATED },
204	{ "NT_STATUS_WORKING_SET_QUOTA", NT_STATUS_WORKING_SET_QUOTA },
205	{ "NT_STATUS_MEDIA_WRITE_PROTECTED", NT_STATUS_MEDIA_WRITE_PROTECTED },
206	{ "NT_STATUS_DEVICE_NOT_READY", NT_STATUS_DEVICE_NOT_READY },
207	{ "NT_STATUS_INVALID_GROUP_ATTRIBUTES", NT_STATUS_INVALID_GROUP_ATTRIBUTES },
208	{ "NT_STATUS_BAD_IMPERSONATION_LEVEL", NT_STATUS_BAD_IMPERSONATION_LEVEL },
209	{ "NT_STATUS_CANT_OPEN_ANONYMOUS", NT_STATUS_CANT_OPEN_ANONYMOUS },
210	{ "NT_STATUS_BAD_VALIDATION_CLASS", NT_STATUS_BAD_VALIDATION_CLASS },
211	{ "NT_STATUS_BAD_TOKEN_TYPE", NT_STATUS_BAD_TOKEN_TYPE },
212	{ "NT_STATUS_BAD_MASTER_BOOT_RECORD", NT_STATUS_BAD_MASTER_BOOT_RECORD },
213	{ "NT_STATUS_INSTRUCTION_MISALIGNMENT", NT_STATUS_INSTRUCTION_MISALIGNMENT },
214	{ "NT_STATUS_INSTANCE_NOT_AVAILABLE", NT_STATUS_INSTANCE_NOT_AVAILABLE },
215	{ "NT_STATUS_PIPE_NOT_AVAILABLE", NT_STATUS_PIPE_NOT_AVAILABLE },
216	{ "NT_STATUS_INVALID_PIPE_STATE", NT_STATUS_INVALID_PIPE_STATE },
217	{ "NT_STATUS_PIPE_BUSY", NT_STATUS_PIPE_BUSY },
218	{ "NT_STATUS_ILLEGAL_FUNCTION", NT_STATUS_ILLEGAL_FUNCTION },
219	{ "NT_STATUS_PIPE_DISCONNECTED", NT_STATUS_PIPE_DISCONNECTED },
220	{ "NT_STATUS_PIPE_CLOSING", NT_STATUS_PIPE_CLOSING },
221	{ "NT_STATUS_PIPE_CONNECTED", NT_STATUS_PIPE_CONNECTED },
222	{ "NT_STATUS_PIPE_LISTENING", NT_STATUS_PIPE_LISTENING },
223	{ "NT_STATUS_INVALID_READ_MODE", NT_STATUS_INVALID_READ_MODE },
224	{ "NT_STATUS_IO_TIMEOUT", NT_STATUS_IO_TIMEOUT },
225	{ "NT_STATUS_FILE_FORCED_CLOSED", NT_STATUS_FILE_FORCED_CLOSED },
226	{ "NT_STATUS_PROFILING_NOT_STARTED", NT_STATUS_PROFILING_NOT_STARTED },
227	{ "NT_STATUS_PROFILING_NOT_STOPPED", NT_STATUS_PROFILING_NOT_STOPPED },
228	{ "NT_STATUS_COULD_NOT_INTERPRET", NT_STATUS_COULD_NOT_INTERPRET },
229	{ "NT_STATUS_FILE_IS_A_DIRECTORY", NT_STATUS_FILE_IS_A_DIRECTORY },
230	{ "NT_STATUS_NOT_SUPPORTED", NT_STATUS_NOT_SUPPORTED },
231	{ "NT_STATUS_REMOTE_NOT_LISTENING", NT_STATUS_REMOTE_NOT_LISTENING },
232	{ "NT_STATUS_DUPLICATE_NAME", NT_STATUS_DUPLICATE_NAME },
233	{ "NT_STATUS_BAD_NETWORK_PATH", NT_STATUS_BAD_NETWORK_PATH },
234	{ "NT_STATUS_NETWORK_BUSY", NT_STATUS_NETWORK_BUSY },
235	{ "NT_STATUS_DEVICE_DOES_NOT_EXIST", NT_STATUS_DEVICE_DOES_NOT_EXIST },
236	{ "NT_STATUS_TOO_MANY_COMMANDS", NT_STATUS_TOO_MANY_COMMANDS },
237	{ "NT_STATUS_ADAPTER_HARDWARE_ERROR", NT_STATUS_ADAPTER_HARDWARE_ERROR },
238	{ "NT_STATUS_INVALID_NETWORK_RESPONSE", NT_STATUS_INVALID_NETWORK_RESPONSE },
239	{ "NT_STATUS_UNEXPECTED_NETWORK_ERROR", NT_STATUS_UNEXPECTED_NETWORK_ERROR },
240	{ "NT_STATUS_BAD_REMOTE_ADAPTER", NT_STATUS_BAD_REMOTE_ADAPTER },
241	{ "NT_STATUS_PRINT_QUEUE_FULL", NT_STATUS_PRINT_QUEUE_FULL },
242	{ "NT_STATUS_NO_SPOOL_SPACE", NT_STATUS_NO_SPOOL_SPACE },
243	{ "NT_STATUS_PRINT_CANCELLED", NT_STATUS_PRINT_CANCELLED },
244	{ "NT_STATUS_NETWORK_NAME_DELETED", NT_STATUS_NETWORK_NAME_DELETED },
245	{ "NT_STATUS_NETWORK_ACCESS_DENIED", NT_STATUS_NETWORK_ACCESS_DENIED },
246	{ "NT_STATUS_BAD_DEVICE_TYPE", NT_STATUS_BAD_DEVICE_TYPE },
247	{ "NT_STATUS_BAD_NETWORK_NAME", NT_STATUS_BAD_NETWORK_NAME },
248	{ "NT_STATUS_TOO_MANY_NAMES", NT_STATUS_TOO_MANY_NAMES },
249	{ "NT_STATUS_TOO_MANY_SESSIONS", NT_STATUS_TOO_MANY_SESSIONS },
250	{ "NT_STATUS_SHARING_PAUSED", NT_STATUS_SHARING_PAUSED },
251	{ "NT_STATUS_REQUEST_NOT_ACCEPTED", NT_STATUS_REQUEST_NOT_ACCEPTED },
252	{ "NT_STATUS_REDIRECTOR_PAUSED", NT_STATUS_REDIRECTOR_PAUSED },
253	{ "NT_STATUS_NET_WRITE_FAULT", NT_STATUS_NET_WRITE_FAULT },
254	{ "NT_STATUS_PROFILING_AT_LIMIT", NT_STATUS_PROFILING_AT_LIMIT },
255	{ "NT_STATUS_NOT_SAME_DEVICE", NT_STATUS_NOT_SAME_DEVICE },
256	{ "NT_STATUS_FILE_RENAMED", NT_STATUS_FILE_RENAMED },
257	{ "NT_STATUS_VIRTUAL_CIRCUIT_CLOSED", NT_STATUS_VIRTUAL_CIRCUIT_CLOSED },
258	{ "NT_STATUS_NO_SECURITY_ON_OBJECT", NT_STATUS_NO_SECURITY_ON_OBJECT },
259	{ "NT_STATUS_CANT_WAIT", NT_STATUS_CANT_WAIT },
260	{ "NT_STATUS_PIPE_EMPTY", NT_STATUS_PIPE_EMPTY },
261	{ "NT_STATUS_CANT_ACCESS_DOMAIN_INFO", NT_STATUS_CANT_ACCESS_DOMAIN_INFO },
262	{ "NT_STATUS_CANT_TERMINATE_SELF", NT_STATUS_CANT_TERMINATE_SELF },
263	{ "NT_STATUS_INVALID_SERVER_STATE", NT_STATUS_INVALID_SERVER_STATE },
264	{ "NT_STATUS_INVALID_DOMAIN_STATE", NT_STATUS_INVALID_DOMAIN_STATE },
265	{ "NT_STATUS_INVALID_DOMAIN_ROLE", NT_STATUS_INVALID_DOMAIN_ROLE },
266	{ "NT_STATUS_NO_SUCH_DOMAIN", NT_STATUS_NO_SUCH_DOMAIN },
267	{ "NT_STATUS_DOMAIN_EXISTS", NT_STATUS_DOMAIN_EXISTS },
268	{ "NT_STATUS_DOMAIN_LIMIT_EXCEEDED", NT_STATUS_DOMAIN_LIMIT_EXCEEDED },
269	{ "NT_STATUS_OPLOCK_NOT_GRANTED", NT_STATUS_OPLOCK_NOT_GRANTED },
270	{ "NT_STATUS_INVALID_OPLOCK_PROTOCOL", NT_STATUS_INVALID_OPLOCK_PROTOCOL },
271	{ "NT_STATUS_INTERNAL_DB_CORRUPTION", NT_STATUS_INTERNAL_DB_CORRUPTION },
272	{ "NT_STATUS_INTERNAL_ERROR", NT_STATUS_INTERNAL_ERROR },
273	{ "NT_STATUS_GENERIC_NOT_MAPPED", NT_STATUS_GENERIC_NOT_MAPPED },
274	{ "NT_STATUS_BAD_DESCRIPTOR_FORMAT", NT_STATUS_BAD_DESCRIPTOR_FORMAT },
275	{ "NT_STATUS_INVALID_USER_BUFFER", NT_STATUS_INVALID_USER_BUFFER },
276	{ "NT_STATUS_UNEXPECTED_IO_ERROR", NT_STATUS_UNEXPECTED_IO_ERROR },
277	{ "NT_STATUS_UNEXPECTED_MM_CREATE_ERR", NT_STATUS_UNEXPECTED_MM_CREATE_ERR },
278	{ "NT_STATUS_UNEXPECTED_MM_MAP_ERROR", NT_STATUS_UNEXPECTED_MM_MAP_ERROR },
279	{ "NT_STATUS_UNEXPECTED_MM_EXTEND_ERR", NT_STATUS_UNEXPECTED_MM_EXTEND_ERR },
280	{ "NT_STATUS_NOT_LOGON_PROCESS", NT_STATUS_NOT_LOGON_PROCESS },
281	{ "NT_STATUS_LOGON_SESSION_EXISTS", NT_STATUS_LOGON_SESSION_EXISTS },
282	{ "NT_STATUS_INVALID_PARAMETER_1", NT_STATUS_INVALID_PARAMETER_1 },
283	{ "NT_STATUS_INVALID_PARAMETER_2", NT_STATUS_INVALID_PARAMETER_2 },
284	{ "NT_STATUS_INVALID_PARAMETER_3", NT_STATUS_INVALID_PARAMETER_3 },
285	{ "NT_STATUS_INVALID_PARAMETER_4", NT_STATUS_INVALID_PARAMETER_4 },
286	{ "NT_STATUS_INVALID_PARAMETER_5", NT_STATUS_INVALID_PARAMETER_5 },
287	{ "NT_STATUS_INVALID_PARAMETER_6", NT_STATUS_INVALID_PARAMETER_6 },
288	{ "NT_STATUS_INVALID_PARAMETER_7", NT_STATUS_INVALID_PARAMETER_7 },
289	{ "NT_STATUS_INVALID_PARAMETER_8", NT_STATUS_INVALID_PARAMETER_8 },
290	{ "NT_STATUS_INVALID_PARAMETER_9", NT_STATUS_INVALID_PARAMETER_9 },
291	{ "NT_STATUS_INVALID_PARAMETER_10", NT_STATUS_INVALID_PARAMETER_10 },
292	{ "NT_STATUS_INVALID_PARAMETER_11", NT_STATUS_INVALID_PARAMETER_11 },
293	{ "NT_STATUS_INVALID_PARAMETER_12", NT_STATUS_INVALID_PARAMETER_12 },
294	{ "NT_STATUS_REDIRECTOR_NOT_STARTED", NT_STATUS_REDIRECTOR_NOT_STARTED },
295	{ "NT_STATUS_REDIRECTOR_STARTED", NT_STATUS_REDIRECTOR_STARTED },
296	{ "NT_STATUS_STACK_OVERFLOW", NT_STATUS_STACK_OVERFLOW },
297	{ "NT_STATUS_NO_SUCH_PACKAGE", NT_STATUS_NO_SUCH_PACKAGE },
298	{ "NT_STATUS_BAD_FUNCTION_TABLE", NT_STATUS_BAD_FUNCTION_TABLE },
299	{ "NT_STATUS_DIRECTORY_NOT_EMPTY", NT_STATUS_DIRECTORY_NOT_EMPTY },
300	{ "NT_STATUS_FILE_CORRUPT_ERROR", NT_STATUS_FILE_CORRUPT_ERROR },
301	{ "NT_STATUS_NOT_A_DIRECTORY", NT_STATUS_NOT_A_DIRECTORY },
302	{ "NT_STATUS_BAD_LOGON_SESSION_STATE", NT_STATUS_BAD_LOGON_SESSION_STATE },
303	{ "NT_STATUS_LOGON_SESSION_COLLISION", NT_STATUS_LOGON_SESSION_COLLISION },
304	{ "NT_STATUS_NAME_TOO_LONG", NT_STATUS_NAME_TOO_LONG },
305	{ "NT_STATUS_FILES_OPEN", NT_STATUS_FILES_OPEN },
306	{ "NT_STATUS_CONNECTION_IN_USE", NT_STATUS_CONNECTION_IN_USE },
307	{ "NT_STATUS_MESSAGE_NOT_FOUND", NT_STATUS_MESSAGE_NOT_FOUND },
308	{ "NT_STATUS_PROCESS_IS_TERMINATING", NT_STATUS_PROCESS_IS_TERMINATING },
309	{ "NT_STATUS_INVALID_LOGON_TYPE", NT_STATUS_INVALID_LOGON_TYPE },
310	{ "NT_STATUS_NO_GUID_TRANSLATION", NT_STATUS_NO_GUID_TRANSLATION },
311	{ "NT_STATUS_CANNOT_IMPERSONATE", NT_STATUS_CANNOT_IMPERSONATE },
312	{ "NT_STATUS_IMAGE_ALREADY_LOADED", NT_STATUS_IMAGE_ALREADY_LOADED },
313	{ "NT_STATUS_ABIOS_NOT_PRESENT", NT_STATUS_ABIOS_NOT_PRESENT },
314	{ "NT_STATUS_ABIOS_LID_NOT_EXIST", NT_STATUS_ABIOS_LID_NOT_EXIST },
315	{ "NT_STATUS_ABIOS_LID_ALREADY_OWNED", NT_STATUS_ABIOS_LID_ALREADY_OWNED },
316	{ "NT_STATUS_ABIOS_NOT_LID_OWNER", NT_STATUS_ABIOS_NOT_LID_OWNER },
317	{ "NT_STATUS_ABIOS_INVALID_COMMAND", NT_STATUS_ABIOS_INVALID_COMMAND },
318	{ "NT_STATUS_ABIOS_INVALID_LID", NT_STATUS_ABIOS_INVALID_LID },
319	{ "NT_STATUS_ABIOS_SELECTOR_NOT_AVAILABLE", NT_STATUS_ABIOS_SELECTOR_NOT_AVAILABLE },
320	{ "NT_STATUS_ABIOS_INVALID_SELECTOR", NT_STATUS_ABIOS_INVALID_SELECTOR },
321	{ "NT_STATUS_NO_LDT", NT_STATUS_NO_LDT },
322	{ "NT_STATUS_INVALID_LDT_SIZE", NT_STATUS_INVALID_LDT_SIZE },
323	{ "NT_STATUS_INVALID_LDT_OFFSET", NT_STATUS_INVALID_LDT_OFFSET },
324	{ "NT_STATUS_INVALID_LDT_DESCRIPTOR", NT_STATUS_INVALID_LDT_DESCRIPTOR },
325	{ "NT_STATUS_INVALID_IMAGE_NE_FORMAT", NT_STATUS_INVALID_IMAGE_NE_FORMAT },
326	{ "NT_STATUS_RXACT_INVALID_STATE", NT_STATUS_RXACT_INVALID_STATE },
327	{ "NT_STATUS_RXACT_COMMIT_FAILURE", NT_STATUS_RXACT_COMMIT_FAILURE },
328	{ "NT_STATUS_MAPPED_FILE_SIZE_ZERO", NT_STATUS_MAPPED_FILE_SIZE_ZERO },
329	{ "NT_STATUS_TOO_MANY_OPENED_FILES", NT_STATUS_TOO_MANY_OPENED_FILES },
330	{ "NT_STATUS_CANCELLED", NT_STATUS_CANCELLED },
331	{ "NT_STATUS_CANNOT_DELETE", NT_STATUS_CANNOT_DELETE },
332	{ "NT_STATUS_INVALID_COMPUTER_NAME", NT_STATUS_INVALID_COMPUTER_NAME },
333	{ "NT_STATUS_FILE_DELETED", NT_STATUS_FILE_DELETED },
334	{ "NT_STATUS_SPECIAL_ACCOUNT", NT_STATUS_SPECIAL_ACCOUNT },
335	{ "NT_STATUS_SPECIAL_GROUP", NT_STATUS_SPECIAL_GROUP },
336	{ "NT_STATUS_SPECIAL_USER", NT_STATUS_SPECIAL_USER },
337	{ "NT_STATUS_MEMBERS_PRIMARY_GROUP", NT_STATUS_MEMBERS_PRIMARY_GROUP },
338	{ "NT_STATUS_FILE_CLOSED", NT_STATUS_FILE_CLOSED },
339	{ "NT_STATUS_TOO_MANY_THREADS", NT_STATUS_TOO_MANY_THREADS },
340	{ "NT_STATUS_THREAD_NOT_IN_PROCESS", NT_STATUS_THREAD_NOT_IN_PROCESS },
341	{ "NT_STATUS_TOKEN_ALREADY_IN_USE", NT_STATUS_TOKEN_ALREADY_IN_USE },
342	{ "NT_STATUS_PAGEFILE_QUOTA_EXCEEDED", NT_STATUS_PAGEFILE_QUOTA_EXCEEDED },
343	{ "NT_STATUS_COMMITMENT_LIMIT", NT_STATUS_COMMITMENT_LIMIT },
344	{ "NT_STATUS_INVALID_IMAGE_LE_FORMAT", NT_STATUS_INVALID_IMAGE_LE_FORMAT },
345	{ "NT_STATUS_INVALID_IMAGE_NOT_MZ", NT_STATUS_INVALID_IMAGE_NOT_MZ },
346	{ "NT_STATUS_INVALID_IMAGE_PROTECT", NT_STATUS_INVALID_IMAGE_PROTECT },
347	{ "NT_STATUS_INVALID_IMAGE_WIN_16", NT_STATUS_INVALID_IMAGE_WIN_16 },
348	{ "NT_STATUS_LOGON_SERVER_CONFLICT", NT_STATUS_LOGON_SERVER_CONFLICT },
349	{ "NT_STATUS_TIME_DIFFERENCE_AT_DC", NT_STATUS_TIME_DIFFERENCE_AT_DC },
350	{ "NT_STATUS_SYNCHRONIZATION_REQUIRED", NT_STATUS_SYNCHRONIZATION_REQUIRED },
351	{ "NT_STATUS_DLL_NOT_FOUND", NT_STATUS_DLL_NOT_FOUND },
352	{ "NT_STATUS_OPEN_FAILED", NT_STATUS_OPEN_FAILED },
353	{ "NT_STATUS_IO_PRIVILEGE_FAILED", NT_STATUS_IO_PRIVILEGE_FAILED },
354	{ "NT_STATUS_ORDINAL_NOT_FOUND", NT_STATUS_ORDINAL_NOT_FOUND },
355	{ "NT_STATUS_ENTRYPOINT_NOT_FOUND", NT_STATUS_ENTRYPOINT_NOT_FOUND },
356	{ "NT_STATUS_CONTROL_C_EXIT", NT_STATUS_CONTROL_C_EXIT },
357	{ "NT_STATUS_LOCAL_DISCONNECT", NT_STATUS_LOCAL_DISCONNECT },
358	{ "NT_STATUS_REMOTE_DISCONNECT", NT_STATUS_REMOTE_DISCONNECT },
359	{ "NT_STATUS_REMOTE_RESOURCES", NT_STATUS_REMOTE_RESOURCES },
360	{ "NT_STATUS_LINK_FAILED", NT_STATUS_LINK_FAILED },
361	{ "NT_STATUS_LINK_TIMEOUT", NT_STATUS_LINK_TIMEOUT },
362	{ "NT_STATUS_INVALID_CONNECTION", NT_STATUS_INVALID_CONNECTION },
363	{ "NT_STATUS_INVALID_ADDRESS", NT_STATUS_INVALID_ADDRESS },
364	{ "NT_STATUS_DLL_INIT_FAILED", NT_STATUS_DLL_INIT_FAILED },
365	{ "NT_STATUS_MISSING_SYSTEMFILE", NT_STATUS_MISSING_SYSTEMFILE },
366	{ "NT_STATUS_UNHANDLED_EXCEPTION", NT_STATUS_UNHANDLED_EXCEPTION },
367	{ "NT_STATUS_APP_INIT_FAILURE", NT_STATUS_APP_INIT_FAILURE },
368	{ "NT_STATUS_PAGEFILE_CREATE_FAILED", NT_STATUS_PAGEFILE_CREATE_FAILED },
369	{ "NT_STATUS_NO_PAGEFILE", NT_STATUS_NO_PAGEFILE },
370	{ "NT_STATUS_INVALID_LEVEL", NT_STATUS_INVALID_LEVEL },
371	{ "NT_STATUS_WRONG_PASSWORD_CORE", NT_STATUS_WRONG_PASSWORD_CORE },
372	{ "NT_STATUS_ILLEGAL_FLOAT_CONTEXT", NT_STATUS_ILLEGAL_FLOAT_CONTEXT },
373	{ "NT_STATUS_PIPE_BROKEN", NT_STATUS_PIPE_BROKEN },
374	{ "NT_STATUS_REGISTRY_CORRUPT", NT_STATUS_REGISTRY_CORRUPT },
375	{ "NT_STATUS_REGISTRY_IO_FAILED", NT_STATUS_REGISTRY_IO_FAILED },
376	{ "NT_STATUS_NO_EVENT_PAIR", NT_STATUS_NO_EVENT_PAIR },
377	{ "NT_STATUS_UNRECOGNIZED_VOLUME", NT_STATUS_UNRECOGNIZED_VOLUME },
378	{ "NT_STATUS_SERIAL_NO_DEVICE_INITED", NT_STATUS_SERIAL_NO_DEVICE_INITED },
379	{ "NT_STATUS_NO_SUCH_ALIAS", NT_STATUS_NO_SUCH_ALIAS },
380	{ "NT_STATUS_MEMBER_NOT_IN_ALIAS", NT_STATUS_MEMBER_NOT_IN_ALIAS },
381	{ "NT_STATUS_MEMBER_IN_ALIAS", NT_STATUS_MEMBER_IN_ALIAS },
382	{ "NT_STATUS_ALIAS_EXISTS", NT_STATUS_ALIAS_EXISTS },
383	{ "NT_STATUS_LOGON_NOT_GRANTED", NT_STATUS_LOGON_NOT_GRANTED },
384	{ "NT_STATUS_TOO_MANY_SECRETS", NT_STATUS_TOO_MANY_SECRETS },
385	{ "NT_STATUS_SECRET_TOO_LONG", NT_STATUS_SECRET_TOO_LONG },
386	{ "NT_STATUS_INTERNAL_DB_ERROR", NT_STATUS_INTERNAL_DB_ERROR },
387	{ "NT_STATUS_FULLSCREEN_MODE", NT_STATUS_FULLSCREEN_MODE },
388	{ "NT_STATUS_TOO_MANY_CONTEXT_IDS", NT_STATUS_TOO_MANY_CONTEXT_IDS },
389	{ "NT_STATUS_LOGON_TYPE_NOT_GRANTED", NT_STATUS_LOGON_TYPE_NOT_GRANTED },
390	{ "NT_STATUS_NOT_REGISTRY_FILE", NT_STATUS_NOT_REGISTRY_FILE },
391	{ "NT_STATUS_NT_CROSS_ENCRYPTION_REQUIRED", NT_STATUS_NT_CROSS_ENCRYPTION_REQUIRED },
392	{ "NT_STATUS_DOMAIN_CTRLR_CONFIG_ERROR", NT_STATUS_DOMAIN_CTRLR_CONFIG_ERROR },
393	{ "NT_STATUS_FT_MISSING_MEMBER", NT_STATUS_FT_MISSING_MEMBER },
394	{ "NT_STATUS_ILL_FORMED_SERVICE_ENTRY", NT_STATUS_ILL_FORMED_SERVICE_ENTRY },
395	{ "NT_STATUS_ILLEGAL_CHARACTER", NT_STATUS_ILLEGAL_CHARACTER },
396	{ "NT_STATUS_UNMAPPABLE_CHARACTER", NT_STATUS_UNMAPPABLE_CHARACTER },
397	{ "NT_STATUS_UNDEFINED_CHARACTER", NT_STATUS_UNDEFINED_CHARACTER },
398	{ "NT_STATUS_FLOPPY_VOLUME", NT_STATUS_FLOPPY_VOLUME },
399	{ "NT_STATUS_FLOPPY_ID_MARK_NOT_FOUND", NT_STATUS_FLOPPY_ID_MARK_NOT_FOUND },
400	{ "NT_STATUS_FLOPPY_WRONG_CYLINDER", NT_STATUS_FLOPPY_WRONG_CYLINDER },
401	{ "NT_STATUS_FLOPPY_UNKNOWN_ERROR", NT_STATUS_FLOPPY_UNKNOWN_ERROR },
402	{ "NT_STATUS_FLOPPY_BAD_REGISTERS", NT_STATUS_FLOPPY_BAD_REGISTERS },
403	{ "NT_STATUS_DISK_RECALIBRATE_FAILED", NT_STATUS_DISK_RECALIBRATE_FAILED },
404	{ "NT_STATUS_DISK_OPERATION_FAILED", NT_STATUS_DISK_OPERATION_FAILED },
405	{ "NT_STATUS_DISK_RESET_FAILED", NT_STATUS_DISK_RESET_FAILED },
406	{ "NT_STATUS_SHARED_IRQ_BUSY", NT_STATUS_SHARED_IRQ_BUSY },
407	{ "NT_STATUS_FT_ORPHANING", NT_STATUS_FT_ORPHANING },
408	{ "NT_STATUS_PARTITION_FAILURE", NT_STATUS_PARTITION_FAILURE },
409	{ "NT_STATUS_INVALID_BLOCK_LENGTH", NT_STATUS_INVALID_BLOCK_LENGTH },
410	{ "NT_STATUS_DEVICE_NOT_PARTITIONED", NT_STATUS_DEVICE_NOT_PARTITIONED },
411	{ "NT_STATUS_UNABLE_TO_LOCK_MEDIA", NT_STATUS_UNABLE_TO_LOCK_MEDIA },
412	{ "NT_STATUS_UNABLE_TO_UNLOAD_MEDIA", NT_STATUS_UNABLE_TO_UNLOAD_MEDIA },
413	{ "NT_STATUS_EOM_OVERFLOW", NT_STATUS_EOM_OVERFLOW },
414	{ "NT_STATUS_NO_MEDIA", NT_STATUS_NO_MEDIA },
415	{ "NT_STATUS_NO_SUCH_MEMBER", NT_STATUS_NO_SUCH_MEMBER },
416	{ "NT_STATUS_INVALID_MEMBER", NT_STATUS_INVALID_MEMBER },
417	{ "NT_STATUS_KEY_DELETED", NT_STATUS_KEY_DELETED },
418	{ "NT_STATUS_NO_LOG_SPACE", NT_STATUS_NO_LOG_SPACE },
419	{ "NT_STATUS_TOO_MANY_SIDS", NT_STATUS_TOO_MANY_SIDS },
420	{ "NT_STATUS_LM_CROSS_ENCRYPTION_REQUIRED", NT_STATUS_LM_CROSS_ENCRYPTION_REQUIRED },
421	{ "NT_STATUS_KEY_HAS_CHILDREN", NT_STATUS_KEY_HAS_CHILDREN },
422	{ "NT_STATUS_CHILD_MUST_BE_VOLATILE", NT_STATUS_CHILD_MUST_BE_VOLATILE },
423	{ "NT_STATUS_DEVICE_CONFIGURATION_ERROR", NT_STATUS_DEVICE_CONFIGURATION_ERROR },
424	{ "NT_STATUS_DRIVER_INTERNAL_ERROR", NT_STATUS_DRIVER_INTERNAL_ERROR },
425	{ "NT_STATUS_INVALID_DEVICE_STATE", NT_STATUS_INVALID_DEVICE_STATE },
426	{ "NT_STATUS_IO_DEVICE_ERROR", NT_STATUS_IO_DEVICE_ERROR },
427	{ "NT_STATUS_DEVICE_PROTOCOL_ERROR", NT_STATUS_DEVICE_PROTOCOL_ERROR },
428	{ "NT_STATUS_BACKUP_CONTROLLER", NT_STATUS_BACKUP_CONTROLLER },
429	{ "NT_STATUS_LOG_FILE_FULL", NT_STATUS_LOG_FILE_FULL },
430	{ "NT_STATUS_TOO_LATE", NT_STATUS_TOO_LATE },
431	{ "NT_STATUS_NO_TRUST_LSA_SECRET", NT_STATUS_NO_TRUST_LSA_SECRET },
432	{ "NT_STATUS_NO_TRUST_SAM_ACCOUNT", NT_STATUS_NO_TRUST_SAM_ACCOUNT },
433	{ "NT_STATUS_TRUSTED_DOMAIN_FAILURE", NT_STATUS_TRUSTED_DOMAIN_FAILURE },
434	{ "NT_STATUS_TRUSTED_RELATIONSHIP_FAILURE", NT_STATUS_TRUSTED_RELATIONSHIP_FAILURE },
435	{ "NT_STATUS_EVENTLOG_FILE_CORRUPT", NT_STATUS_EVENTLOG_FILE_CORRUPT },
436	{ "NT_STATUS_EVENTLOG_CANT_START", NT_STATUS_EVENTLOG_CANT_START },
437	{ "NT_STATUS_TRUST_FAILURE", NT_STATUS_TRUST_FAILURE },
438	{ "NT_STATUS_MUTANT_LIMIT_EXCEEDED", NT_STATUS_MUTANT_LIMIT_EXCEEDED },
439	{ "NT_STATUS_NETLOGON_NOT_STARTED", NT_STATUS_NETLOGON_NOT_STARTED },
440	{ "NT_STATUS_ACCOUNT_EXPIRED", NT_STATUS_ACCOUNT_EXPIRED },
441	{ "NT_STATUS_POSSIBLE_DEADLOCK", NT_STATUS_POSSIBLE_DEADLOCK },
442	{ "NT_STATUS_NETWORK_CREDENTIAL_CONFLICT", NT_STATUS_NETWORK_CREDENTIAL_CONFLICT },
443	{ "NT_STATUS_REMOTE_SESSION_LIMIT", NT_STATUS_REMOTE_SESSION_LIMIT },
444	{ "NT_STATUS_EVENTLOG_FILE_CHANGED", NT_STATUS_EVENTLOG_FILE_CHANGED },
445	{ "NT_STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT", NT_STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT },
446	{ "NT_STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT", NT_STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT },
447	{ "NT_STATUS_NOLOGON_SERVER_TRUST_ACCOUNT", NT_STATUS_NOLOGON_SERVER_TRUST_ACCOUNT },
448	{ "NT_STATUS_DOMAIN_TRUST_INCONSISTENT", NT_STATUS_DOMAIN_TRUST_INCONSISTENT },
449	{ "NT_STATUS_FS_DRIVER_REQUIRED", NT_STATUS_FS_DRIVER_REQUIRED },
450	{ "NT_STATUS_NO_USER_SESSION_KEY", NT_STATUS_NO_USER_SESSION_KEY },
451	{ "NT_STATUS_USER_SESSION_DELETED", NT_STATUS_USER_SESSION_DELETED },
452	{ "NT_STATUS_RESOURCE_LANG_NOT_FOUND", NT_STATUS_RESOURCE_LANG_NOT_FOUND },
453	{ "NT_STATUS_INSUFF_SERVER_RESOURCES", NT_STATUS_INSUFF_SERVER_RESOURCES },
454	{ "NT_STATUS_INVALID_BUFFER_SIZE", NT_STATUS_INVALID_BUFFER_SIZE },
455	{ "NT_STATUS_INVALID_ADDRESS_COMPONENT", NT_STATUS_INVALID_ADDRESS_COMPONENT },
456	{ "NT_STATUS_INVALID_ADDRESS_WILDCARD", NT_STATUS_INVALID_ADDRESS_WILDCARD },
457	{ "NT_STATUS_TOO_MANY_ADDRESSES", NT_STATUS_TOO_MANY_ADDRESSES },
458	{ "NT_STATUS_ADDRESS_ALREADY_EXISTS", NT_STATUS_ADDRESS_ALREADY_EXISTS },
459	{ "NT_STATUS_ADDRESS_CLOSED", NT_STATUS_ADDRESS_CLOSED },
460	{ "NT_STATUS_CONNECTION_DISCONNECTED", NT_STATUS_CONNECTION_DISCONNECTED },
461	{ "NT_STATUS_CONNECTION_RESET", NT_STATUS_CONNECTION_RESET },
462	{ "NT_STATUS_TOO_MANY_NODES", NT_STATUS_TOO_MANY_NODES },
463	{ "NT_STATUS_TRANSACTION_ABORTED", NT_STATUS_TRANSACTION_ABORTED },
464	{ "NT_STATUS_TRANSACTION_TIMED_OUT", NT_STATUS_TRANSACTION_TIMED_OUT },
465	{ "NT_STATUS_TRANSACTION_NO_RELEASE", NT_STATUS_TRANSACTION_NO_RELEASE },
466	{ "NT_STATUS_TRANSACTION_NO_MATCH", NT_STATUS_TRANSACTION_NO_MATCH },
467	{ "NT_STATUS_TRANSACTION_RESPONDED", NT_STATUS_TRANSACTION_RESPONDED },
468	{ "NT_STATUS_TRANSACTION_INVALID_ID", NT_STATUS_TRANSACTION_INVALID_ID },
469	{ "NT_STATUS_TRANSACTION_INVALID_TYPE", NT_STATUS_TRANSACTION_INVALID_TYPE },
470	{ "NT_STATUS_NOT_SERVER_SESSION", NT_STATUS_NOT_SERVER_SESSION },
471	{ "NT_STATUS_NOT_CLIENT_SESSION", NT_STATUS_NOT_CLIENT_SESSION },
472	{ "NT_STATUS_CANNOT_LOAD_REGISTRY_FILE", NT_STATUS_CANNOT_LOAD_REGISTRY_FILE },
473	{ "NT_STATUS_DEBUG_ATTACH_FAILED", NT_STATUS_DEBUG_ATTACH_FAILED },
474	{ "NT_STATUS_SYSTEM_PROCESS_TERMINATED", NT_STATUS_SYSTEM_PROCESS_TERMINATED },
475	{ "NT_STATUS_DATA_NOT_ACCEPTED", NT_STATUS_DATA_NOT_ACCEPTED },
476	{ "NT_STATUS_NO_BROWSER_SERVERS_FOUND", NT_STATUS_NO_BROWSER_SERVERS_FOUND },
477	{ "NT_STATUS_VDM_HARD_ERROR", NT_STATUS_VDM_HARD_ERROR },
478	{ "NT_STATUS_DRIVER_CANCEL_TIMEOUT", NT_STATUS_DRIVER_CANCEL_TIMEOUT },
479	{ "NT_STATUS_REPLY_MESSAGE_MISMATCH", NT_STATUS_REPLY_MESSAGE_MISMATCH },
480	{ "NT_STATUS_MAPPED_ALIGNMENT", NT_STATUS_MAPPED_ALIGNMENT },
481	{ "NT_STATUS_IMAGE_CHECKSUM_MISMATCH", NT_STATUS_IMAGE_CHECKSUM_MISMATCH },
482	{ "NT_STATUS_LOST_WRITEBEHIND_DATA", NT_STATUS_LOST_WRITEBEHIND_DATA },
483	{ "NT_STATUS_CLIENT_SERVER_PARAMETERS_INVALID", NT_STATUS_CLIENT_SERVER_PARAMETERS_INVALID },
484	{ "NT_STATUS_PASSWORD_MUST_CHANGE", NT_STATUS_PASSWORD_MUST_CHANGE },
485	{ "NT_STATUS_NOT_FOUND", NT_STATUS_NOT_FOUND },
486	{ "NT_STATUS_NOT_TINY_STREAM", NT_STATUS_NOT_TINY_STREAM },
487	{ "NT_STATUS_RECOVERY_FAILURE", NT_STATUS_RECOVERY_FAILURE },
488	{ "NT_STATUS_STACK_OVERFLOW_READ", NT_STATUS_STACK_OVERFLOW_READ },
489	{ "NT_STATUS_FAIL_CHECK", NT_STATUS_FAIL_CHECK },
490	{ "NT_STATUS_DUPLICATE_OBJECTID", NT_STATUS_DUPLICATE_OBJECTID },
491	{ "NT_STATUS_OBJECTID_EXISTS", NT_STATUS_OBJECTID_EXISTS },
492	{ "NT_STATUS_CONVERT_TO_LARGE", NT_STATUS_CONVERT_TO_LARGE },
493	{ "NT_STATUS_RETRY", NT_STATUS_RETRY },
494	{ "NT_STATUS_FOUND_OUT_OF_SCOPE", NT_STATUS_FOUND_OUT_OF_SCOPE },
495	{ "NT_STATUS_ALLOCATE_BUCKET", NT_STATUS_ALLOCATE_BUCKET },
496	{ "NT_STATUS_PROPSET_NOT_FOUND", NT_STATUS_PROPSET_NOT_FOUND },
497	{ "NT_STATUS_MARSHALL_OVERFLOW", NT_STATUS_MARSHALL_OVERFLOW },
498	{ "NT_STATUS_INVALID_VARIANT", NT_STATUS_INVALID_VARIANT },
499	{ "NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND", NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND },
500	{ "NT_STATUS_ACCOUNT_LOCKED_OUT", NT_STATUS_ACCOUNT_LOCKED_OUT },
501	{ "NT_STATUS_HANDLE_NOT_CLOSABLE", NT_STATUS_HANDLE_NOT_CLOSABLE },
502	{ "NT_STATUS_CONNECTION_REFUSED", NT_STATUS_CONNECTION_REFUSED },
503	{ "NT_STATUS_GRACEFUL_DISCONNECT", NT_STATUS_GRACEFUL_DISCONNECT },
504	{ "NT_STATUS_ADDRESS_ALREADY_ASSOCIATED", NT_STATUS_ADDRESS_ALREADY_ASSOCIATED },
505	{ "NT_STATUS_ADDRESS_NOT_ASSOCIATED", NT_STATUS_ADDRESS_NOT_ASSOCIATED },
506	{ "NT_STATUS_CONNECTION_INVALID", NT_STATUS_CONNECTION_INVALID },
507	{ "NT_STATUS_CONNECTION_ACTIVE", NT_STATUS_CONNECTION_ACTIVE },
508	{ "NT_STATUS_NETWORK_UNREACHABLE", NT_STATUS_NETWORK_UNREACHABLE },
509	{ "NT_STATUS_HOST_UNREACHABLE", NT_STATUS_HOST_UNREACHABLE },
510	{ "NT_STATUS_PROTOCOL_UNREACHABLE", NT_STATUS_PROTOCOL_UNREACHABLE },
511	{ "NT_STATUS_PORT_UNREACHABLE", NT_STATUS_PORT_UNREACHABLE },
512	{ "NT_STATUS_REQUEST_ABORTED", NT_STATUS_REQUEST_ABORTED },
513	{ "NT_STATUS_CONNECTION_ABORTED", NT_STATUS_CONNECTION_ABORTED },
514	{ "NT_STATUS_BAD_COMPRESSION_BUFFER", NT_STATUS_BAD_COMPRESSION_BUFFER },
515	{ "NT_STATUS_USER_MAPPED_FILE", NT_STATUS_USER_MAPPED_FILE },
516	{ "NT_STATUS_AUDIT_FAILED", NT_STATUS_AUDIT_FAILED },
517	{ "NT_STATUS_TIMER_RESOLUTION_NOT_SET", NT_STATUS_TIMER_RESOLUTION_NOT_SET },
518	{ "NT_STATUS_CONNECTION_COUNT_LIMIT", NT_STATUS_CONNECTION_COUNT_LIMIT },
519	{ "NT_STATUS_LOGIN_TIME_RESTRICTION", NT_STATUS_LOGIN_TIME_RESTRICTION },
520	{ "NT_STATUS_LOGIN_WKSTA_RESTRICTION", NT_STATUS_LOGIN_WKSTA_RESTRICTION },
521	{ "NT_STATUS_IMAGE_MP_UP_MISMATCH", NT_STATUS_IMAGE_MP_UP_MISMATCH },
522	{ "NT_STATUS_INSUFFICIENT_LOGON_INFO", NT_STATUS_INSUFFICIENT_LOGON_INFO },
523	{ "NT_STATUS_BAD_DLL_ENTRYPOINT", NT_STATUS_BAD_DLL_ENTRYPOINT },
524	{ "NT_STATUS_BAD_SERVICE_ENTRYPOINT", NT_STATUS_BAD_SERVICE_ENTRYPOINT },
525	{ "NT_STATUS_LPC_REPLY_LOST", NT_STATUS_LPC_REPLY_LOST },
526	{ "NT_STATUS_IP_ADDRESS_CONFLICT1", NT_STATUS_IP_ADDRESS_CONFLICT1 },
527	{ "NT_STATUS_IP_ADDRESS_CONFLICT2", NT_STATUS_IP_ADDRESS_CONFLICT2 },
528	{ "NT_STATUS_REGISTRY_QUOTA_LIMIT", NT_STATUS_REGISTRY_QUOTA_LIMIT },
529	{ "NT_STATUS_PATH_NOT_COVERED", NT_STATUS_PATH_NOT_COVERED },
530	{ "NT_STATUS_NO_CALLBACK_ACTIVE", NT_STATUS_NO_CALLBACK_ACTIVE },
531	{ "NT_STATUS_LICENSE_QUOTA_EXCEEDED", NT_STATUS_LICENSE_QUOTA_EXCEEDED },
532	{ "NT_STATUS_PWD_TOO_SHORT", NT_STATUS_PWD_TOO_SHORT },
533	{ "NT_STATUS_PWD_TOO_RECENT", NT_STATUS_PWD_TOO_RECENT },
534	{ "NT_STATUS_PWD_HISTORY_CONFLICT", NT_STATUS_PWD_HISTORY_CONFLICT },
535	{ "NT_STATUS_PLUGPLAY_NO_DEVICE", NT_STATUS_PLUGPLAY_NO_DEVICE },
536	{ "NT_STATUS_UNSUPPORTED_COMPRESSION", NT_STATUS_UNSUPPORTED_COMPRESSION },
537	{ "NT_STATUS_INVALID_HW_PROFILE", NT_STATUS_INVALID_HW_PROFILE },
538	{ "NT_STATUS_INVALID_PLUGPLAY_DEVICE_PATH", NT_STATUS_INVALID_PLUGPLAY_DEVICE_PATH },
539	{ "NT_STATUS_DRIVER_ORDINAL_NOT_FOUND", NT_STATUS_DRIVER_ORDINAL_NOT_FOUND },
540	{ "NT_STATUS_DRIVER_ENTRYPOINT_NOT_FOUND", NT_STATUS_DRIVER_ENTRYPOINT_NOT_FOUND },
541	{ "NT_STATUS_RESOURCE_NOT_OWNED", NT_STATUS_RESOURCE_NOT_OWNED },
542	{ "NT_STATUS_TOO_MANY_LINKS", NT_STATUS_TOO_MANY_LINKS },
543	{ "NT_STATUS_QUOTA_LIST_INCONSISTENT", NT_STATUS_QUOTA_LIST_INCONSISTENT },
544	{ "NT_STATUS_FILE_IS_OFFLINE", NT_STATUS_FILE_IS_OFFLINE },
545	{ "NT_STATUS_DS_NO_MORE_RIDS", NT_STATUS_DS_NO_MORE_RIDS },
546        { "NT_STATUS_NO_MORE_ENTRIES", NT_STATUS_NO_MORE_ENTRIES },
547	{ "NT_STATUS_RPC_PROTSEQ_NOT_SUPPORTED", NT_STATUS_RPC_PROTSEQ_NOT_SUPPORTED },
548	{ "NT_STATUS_RPC_UNSUPPORTED_NAME_SYNTAX", NT_STATUS_RPC_UNSUPPORTED_NAME_SYNTAX },
549	{ "NT_STATUS_CURRENT_DOMAIN_NOT_ALLOWED", NT_STATUS_CURRENT_DOMAIN_NOT_ALLOWED },
550	{ "NT_STATUS_OBJECTID_NOT_FOUND", NT_STATUS_OBJECTID_NOT_FOUND },
551	{ "NT_STATUS_DOWNGRADE_DETECTED", NT_STATUS_DOWNGRADE_DETECTED },
552	{ "NT_STATUS_INVALID_LOCK_RANGE", NT_STATUS_INVALID_LOCK_RANGE },
553	{ "NT_STATUS_ERROR_DS_OBJ_STRING_NAME_EXISTS", NT_STATUS_ERROR_DS_OBJ_STRING_NAME_EXISTS },
554	{ "NT_STATUS_ERROR_DS_INCOMPATIBLE_VERSION", NT_STATUS_ERROR_DS_INCOMPATIBLE_VERSION },
555	{ "STATUS_MORE_ENTRIES", STATUS_MORE_ENTRIES },
556	{ "STATUS_SOME_UNMAPPED", STATUS_SOME_UNMAPPED },
557	{ "STATUS_NOTIFY_CLEANUP", STATUS_NOTIFY_CLEANUP },
558	{ "STATUS_NOTIFY_ENUM_DIR", STATUS_NOTIFY_ENUM_DIR },
559
560	DOS_CODE(ERRDOS, ERRsuccess),
561	DOS_CODE(ERRDOS, ERRbadfunc),
562	DOS_CODE(ERRDOS, ERRbadfile),
563	DOS_CODE(ERRDOS, ERRbadpath),
564	DOS_CODE(ERRDOS, ERRnofids),
565	DOS_CODE(ERRDOS, ERRnoaccess),
566	DOS_CODE(ERRDOS, ERRbadfid),
567	DOS_CODE(ERRDOS, ERRbadmcb),
568	DOS_CODE(ERRDOS, ERRnomem),
569	DOS_CODE(ERRDOS, ERRbadmem),
570	DOS_CODE(ERRDOS, ERRbadenv),
571	DOS_CODE(ERRDOS, ERRbadaccess),
572	DOS_CODE(ERRDOS, ERRbaddata),
573	DOS_CODE(ERRDOS, ERRres),
574	DOS_CODE(ERRDOS, ERRbaddrive),
575	DOS_CODE(ERRDOS, ERRremcd),
576	DOS_CODE(ERRDOS, ERRdiffdevice),
577	DOS_CODE(ERRDOS, ERRnofiles),
578	DOS_CODE(ERRDOS, ERRgeneral),
579	DOS_CODE(ERRDOS, ERRbadshare),
580	DOS_CODE(ERRDOS, ERRlock),
581	DOS_CODE(ERRDOS, ERRunsup),
582	DOS_CODE(ERRDOS, ERRnetnamedel),
583	DOS_CODE(ERRDOS, ERRnosuchshare),
584	DOS_CODE(ERRDOS, ERRfilexists),
585	DOS_CODE(ERRDOS, ERRinvalidparam),
586	DOS_CODE(ERRDOS, ERRcannotopen),
587	DOS_CODE(ERRDOS, ERRinsufficientbuffer),
588	DOS_CODE(ERRDOS, ERRinvalidname),
589	DOS_CODE(ERRDOS, ERRunknownlevel),
590	DOS_CODE(ERRDOS, ERRnotlocked),
591	DOS_CODE(ERRDOS, ERRinvalidpath),
592	DOS_CODE(ERRDOS, ERRcancelviolation),
593	DOS_CODE(ERRDOS, ERRnoatomiclocks),
594	DOS_CODE(ERRDOS, ERRrename),
595	DOS_CODE(ERRDOS, ERRbadpipe),
596	DOS_CODE(ERRDOS, ERRpipebusy),
597	DOS_CODE(ERRDOS, ERRpipeclosing),
598	DOS_CODE(ERRDOS, ERRnotconnected),
599	DOS_CODE(ERRDOS, ERRmoredata),
600	DOS_CODE(ERRDOS, ERRnomoreitems),
601	DOS_CODE(ERRDOS, ERRbaddirectory),
602	DOS_CODE(ERRDOS, ERReasnotsupported),
603	DOS_CODE(ERRDOS, ERRlogonfailure),
604	DOS_CODE(ERRDOS, ERRbuftoosmall),
605	DOS_CODE(ERRDOS, ERRunknownipc),
606	DOS_CODE(ERRDOS, ERRnosuchprintjob),
607	DOS_CODE(ERRDOS, ERRinvgroup),
608	DOS_CODE(ERRDOS, ERRnoipc),
609	DOS_CODE(ERRDOS, ERRdriveralreadyinstalled),
610	DOS_CODE(ERRDOS, ERRunknownprinterport),
611	DOS_CODE(ERRDOS, ERRunknownprinterdriver),
612	DOS_CODE(ERRDOS, ERRunknownprintprocessor),
613	DOS_CODE(ERRDOS, ERRinvalidseparatorfile),
614	DOS_CODE(ERRDOS, ERRinvalidjobpriority),
615	DOS_CODE(ERRDOS, ERRinvalidprintername),
616	DOS_CODE(ERRDOS, ERRprinteralreadyexists),
617	DOS_CODE(ERRDOS, ERRinvalidprintercommand),
618	DOS_CODE(ERRDOS, ERRinvaliddatatype),
619	DOS_CODE(ERRDOS, ERRinvalidenvironment),
620	DOS_CODE(ERRDOS, ERRunknownprintmonitor),
621	DOS_CODE(ERRDOS, ERRprinterdriverinuse),
622	DOS_CODE(ERRDOS, ERRspoolfilenotfound),
623	DOS_CODE(ERRDOS, ERRnostartdoc),
624	DOS_CODE(ERRDOS, ERRnoaddjob),
625	DOS_CODE(ERRDOS, ERRprintprocessoralreadyinstalled),
626	DOS_CODE(ERRDOS, ERRprintmonitoralreadyinstalled),
627	DOS_CODE(ERRDOS, ERRinvalidprintmonitor),
628	DOS_CODE(ERRDOS, ERRprintmonitorinuse),
629	DOS_CODE(ERRDOS, ERRprinterhasjobsqueued),
630	DOS_CODE(ERRDOS, ERReainconsistent),
631
632	DOS_CODE(ERRSRV, ERRerror),
633	DOS_CODE(ERRSRV, ERRbadpw),
634	DOS_CODE(ERRSRV, ERRbadtype),
635	DOS_CODE(ERRSRV, ERRaccess),
636	DOS_CODE(ERRSRV, ERRinvnid),
637	DOS_CODE(ERRSRV, ERRinvnetname),
638	DOS_CODE(ERRSRV, ERRinvdevice),
639	DOS_CODE(ERRSRV, ERRqfull),
640	DOS_CODE(ERRSRV, ERRqtoobig),
641	DOS_CODE(ERRSRV, ERRinvpfid),
642	DOS_CODE(ERRSRV, ERRsmbcmd),
643	DOS_CODE(ERRSRV, ERRsrverror),
644	DOS_CODE(ERRSRV, ERRfilespecs),
645	DOS_CODE(ERRSRV, ERRbadlink),
646	DOS_CODE(ERRSRV, ERRbadpermits),
647	DOS_CODE(ERRSRV, ERRbadpid),
648	DOS_CODE(ERRSRV, ERRsetattrmode),
649	DOS_CODE(ERRSRV, ERRpaused),
650	DOS_CODE(ERRSRV, ERRmsgoff),
651	DOS_CODE(ERRSRV, ERRnoroom),
652	DOS_CODE(ERRSRV, ERRrmuns),
653	DOS_CODE(ERRSRV, ERRtimeout),
654	DOS_CODE(ERRSRV, ERRnoresource),
655	DOS_CODE(ERRSRV, ERRtoomanyuids),
656	DOS_CODE(ERRSRV, ERRbaduid),
657	DOS_CODE(ERRSRV, ERRuseMPX),
658	DOS_CODE(ERRSRV, ERRuseSTD),
659	DOS_CODE(ERRSRV, ERRcontMPX),
660	DOS_CODE(ERRSRV, ERRnosupport),
661	DOS_CODE(ERRSRV, ERRunknownsmb),
662
663	DOS_CODE(ERRHRD, ERRnowrite),
664	DOS_CODE(ERRHRD, ERRbadunit),
665	DOS_CODE(ERRHRD, ERRnotready),
666	DOS_CODE(ERRHRD, ERRbadcmd),
667	DOS_CODE(ERRHRD, ERRdata),
668	DOS_CODE(ERRHRD, ERRbadreq),
669	DOS_CODE(ERRHRD, ERRseek),
670	DOS_CODE(ERRHRD, ERRbadmedia),
671	DOS_CODE(ERRHRD, ERRbadsector),
672	DOS_CODE(ERRHRD, ERRnopaper),
673	DOS_CODE(ERRHRD, ERRwrite),
674	DOS_CODE(ERRHRD, ERRread),
675	DOS_CODE(ERRHRD, ERRgeneral),
676	DOS_CODE(ERRHRD, ERRwrongdisk),
677	DOS_CODE(ERRHRD, ERRFCBunavail),
678	DOS_CODE(ERRHRD, ERRsharebufexc),
679	DOS_CODE(ERRHRD, ERRdiskfull),
680
681	LDAP_CODE(LDAP_SUCCESS),
682	LDAP_CODE(LDAP_OPERATIONS_ERROR),
683	LDAP_CODE(LDAP_PROTOCOL_ERROR),
684	LDAP_CODE(LDAP_TIME_LIMIT_EXCEEDED),
685	LDAP_CODE(LDAP_SIZE_LIMIT_EXCEEDED),
686	LDAP_CODE(LDAP_COMPARE_FALSE),
687	LDAP_CODE(LDAP_COMPARE_TRUE),
688	LDAP_CODE(LDAP_AUTH_METHOD_NOT_SUPPORTED),
689	LDAP_CODE(LDAP_STRONG_AUTH_REQUIRED),
690	LDAP_CODE(LDAP_REFERRAL),
691	LDAP_CODE(LDAP_ADMIN_LIMIT_EXCEEDED),
692	LDAP_CODE(LDAP_UNAVAILABLE_CRITICAL_EXTENSION),
693	LDAP_CODE(LDAP_CONFIDENTIALITY_REQUIRED),
694	LDAP_CODE(LDAP_SASL_BIND_IN_PROGRESS),
695	LDAP_CODE(LDAP_NO_SUCH_ATTRIBUTE),
696	LDAP_CODE(LDAP_UNDEFINED_ATTRIBUTE_TYPE),
697	LDAP_CODE(LDAP_INAPPROPRIATE_MATCHING),
698	LDAP_CODE(LDAP_CONSTRAINT_VIOLATION),
699	LDAP_CODE(LDAP_ATTRIBUTE_OR_VALUE_EXISTS),
700	LDAP_CODE(LDAP_INVALID_ATTRIBUTE_SYNTAX),
701	LDAP_CODE(LDAP_NO_SUCH_OBJECT),
702	LDAP_CODE(LDAP_ALIAS_PROBLEM),
703	LDAP_CODE(LDAP_INVALID_DN_SYNTAX),
704	LDAP_CODE(LDAP_ALIAS_DEREFERENCING_PROBLEM),
705	LDAP_CODE(LDAP_INAPPROPRIATE_AUTHENTICATION),
706	LDAP_CODE(LDAP_INVALID_CREDENTIALS),
707	LDAP_CODE(LDAP_INSUFFICIENT_ACCESS_RIGHTS),
708	LDAP_CODE(LDAP_BUSY),
709	LDAP_CODE(LDAP_UNAVAILABLE),
710	LDAP_CODE(LDAP_UNWILLING_TO_PERFORM),
711	LDAP_CODE(LDAP_LOOP_DETECT),
712	LDAP_CODE(LDAP_NAMING_VIOLATION),
713	LDAP_CODE(LDAP_OBJECT_CLASS_VIOLATION),
714	LDAP_CODE(LDAP_NOT_ALLOWED_ON_NON_LEAF),
715	LDAP_CODE(LDAP_NOT_ALLOWED_ON_RDN),
716	LDAP_CODE(LDAP_ENTRY_ALREADY_EXISTS),
717	LDAP_CODE(LDAP_OBJECT_CLASS_MODS_PROHIBITED),
718	LDAP_CODE(LDAP_AFFECTS_MULTIPLE_DSAS),
719	LDAP_CODE(LDAP_OTHER),
720
721	{ NULL, NT_STATUS(0) }
722};
723
724static const nt_err_code_struct nt_err_desc[] =
725{
726	{ "Success", 				NT_STATUS_OK },
727	{ "Undetermined error", 		NT_STATUS_UNSUCCESSFUL },
728	{ "Access denied", 			NT_STATUS_ACCESS_DENIED },
729	{ "Account locked out", 		NT_STATUS_ACCOUNT_LOCKED_OUT },
730	{ "Must change password", 		NT_STATUS_PASSWORD_MUST_CHANGE },
731	{ "Password is too short", 		NT_STATUS_PWD_TOO_SHORT },
732	{ "Password is too recent", 		NT_STATUS_PWD_TOO_RECENT },
733	{ "Password history conflict", 		NT_STATUS_PWD_HISTORY_CONFLICT },
734	{ "No logon servers", 			NT_STATUS_NO_LOGON_SERVERS },
735	{ "Improperly formed account name", 	NT_STATUS_INVALID_ACCOUNT_NAME },
736	{ "User exists", 			NT_STATUS_USER_EXISTS },
737	{ "No such user", 			NT_STATUS_NO_SUCH_USER },
738	{ "Group exists", 			NT_STATUS_GROUP_EXISTS },
739	{ "No such group", 			NT_STATUS_NO_SUCH_GROUP },
740	{ "Member not in group", 		NT_STATUS_MEMBER_NOT_IN_GROUP },
741	{ "Wrong Password", 			NT_STATUS_WRONG_PASSWORD },
742	{ "Ill formed password", 		NT_STATUS_ILL_FORMED_PASSWORD },
743	{ "Password restriction", 		NT_STATUS_PASSWORD_RESTRICTION },
744	{ "Logon failure", 			NT_STATUS_LOGON_FAILURE },
745	{ "Account restriction", 		NT_STATUS_ACCOUNT_RESTRICTION },
746	{ "Invalid logon hours", 		NT_STATUS_INVALID_LOGON_HOURS },
747	{ "Invalid workstation", 		NT_STATUS_INVALID_WORKSTATION },
748	{ "Password expired", 			NT_STATUS_PASSWORD_EXPIRED },
749	{ "Account disabled", 			NT_STATUS_ACCOUNT_DISABLED },
750	{ "Unexpected information received", 	NT_STATUS_INVALID_PARAMETER },
751	{ "Memory allocation error", 		NT_STATUS_NO_MEMORY },
752	{ "No domain controllers located", 	NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND },
753	{ "Account locked out", 		NT_STATUS_ACCOUNT_LOCKED_OUT },
754	{ "Named pipe not available", 		NT_STATUS_PIPE_NOT_AVAILABLE },
755	{ "Not implemented", 			NT_STATUS_NOT_IMPLEMENTED },
756	{ "Invalid information class", 		NT_STATUS_INVALID_INFO_CLASS },
757	{ "Information length mismatch", 	NT_STATUS_INFO_LENGTH_MISMATCH },
758	{ "Access violation", 			NT_STATUS_ACCESS_VIOLATION },
759	{ "Invalid handle", 			NT_STATUS_INVALID_HANDLE },
760	{ "Invalid parameter", 			NT_STATUS_INVALID_PARAMETER },
761	{ "No memory", 				NT_STATUS_NO_MEMORY },
762	{ "Buffer too small", 			NT_STATUS_BUFFER_TOO_SMALL },
763	{ "Revision mismatch", 			NT_STATUS_REVISION_MISMATCH },
764	{ "No logon servers", 			NT_STATUS_NO_LOGON_SERVERS },
765	{ "No such logon session", 		NT_STATUS_NO_SUCH_LOGON_SESSION },
766	{ "No such privilege", 			NT_STATUS_NO_SUCH_PRIVILEGE },
767	{ "Procedure not found", 		NT_STATUS_PROCEDURE_NOT_FOUND },
768	{ "Server disabled", 			NT_STATUS_SERVER_DISABLED },
769	{ "Invalid pipe state", 		NT_STATUS_INVALID_PIPE_STATE },
770	{ "Named pipe busy", 			NT_STATUS_PIPE_BUSY },
771	{ "Illegal function",		 	NT_STATUS_ILLEGAL_FUNCTION },
772	{ "Named pipe dicconnected", 		NT_STATUS_PIPE_DISCONNECTED },
773	{ "Named pipe closing", 		NT_STATUS_PIPE_CLOSING },
774	{ "Remote host not listening", 		NT_STATUS_REMOTE_NOT_LISTENING },
775	{ "Duplicate name on network", 		NT_STATUS_DUPLICATE_NAME },
776	{ "Print queue is full", 		NT_STATUS_PRINT_QUEUE_FULL },
777	{ "No print spool space available", 	NT_STATUS_NO_SPOOL_SPACE },
778	{ "Too many names", 			NT_STATUS_TOO_MANY_NAMES },
779	{ "Too many sessions", 			NT_STATUS_TOO_MANY_SESSIONS },
780	{ "Invalid server state", 		NT_STATUS_INVALID_SERVER_STATE },
781	{ "Invalid domain state", 		NT_STATUS_INVALID_DOMAIN_STATE },
782	{ "Invalid domain role", 		NT_STATUS_INVALID_DOMAIN_ROLE },
783	{ "No such domain", 			NT_STATUS_NO_SUCH_DOMAIN },
784	{ "Domain exists", 			NT_STATUS_DOMAIN_EXISTS },
785	{ "Domain limit exceeded", 		NT_STATUS_DOMAIN_LIMIT_EXCEEDED },
786	{ "Bad logon session state", 		NT_STATUS_BAD_LOGON_SESSION_STATE },
787	{ "Logon session collision", 		NT_STATUS_LOGON_SESSION_COLLISION },
788	{ "Invalid logon type", 		NT_STATUS_INVALID_LOGON_TYPE },
789	{ "Cancelled", 				NT_STATUS_CANCELLED },
790	{ "Invalid computer name", 		NT_STATUS_INVALID_COMPUTER_NAME },
791	{ "Logon server conflict", 		NT_STATUS_LOGON_SERVER_CONFLICT },
792	{ "Time difference at domain controller", NT_STATUS_TIME_DIFFERENCE_AT_DC },
793	{ "Pipe broken", 			NT_STATUS_PIPE_BROKEN },
794	{ "Registry corrupt", 			NT_STATUS_REGISTRY_CORRUPT },
795	{ "Too many secrets", 			NT_STATUS_TOO_MANY_SECRETS },
796	{ "Too many SIDs", 			NT_STATUS_TOO_MANY_SIDS },
797	{ "Lanmanager cross encryption required", NT_STATUS_LM_CROSS_ENCRYPTION_REQUIRED },
798	{ "Log file full", 			NT_STATUS_LOG_FILE_FULL },
799	{ "No trusted LSA secret", 		NT_STATUS_NO_TRUST_LSA_SECRET },
800	{ "No trusted SAM account", 		NT_STATUS_NO_TRUST_SAM_ACCOUNT },
801	{ "Trusted domain failure", 		NT_STATUS_TRUSTED_DOMAIN_FAILURE },
802	{ "Trust relationship failure", 	NT_STATUS_TRUSTED_RELATIONSHIP_FAILURE },
803	{ "Trust failure", 			NT_STATUS_TRUST_FAILURE },
804	{ "Netlogon service not started", 	NT_STATUS_NETLOGON_NOT_STARTED },
805	{ "Account expired", 			NT_STATUS_ACCOUNT_EXPIRED },
806	{ "Network credential conflict", 	NT_STATUS_NETWORK_CREDENTIAL_CONFLICT },
807	{ "Remote session limit", 		NT_STATUS_REMOTE_SESSION_LIMIT },
808	{ "No logon interdomain trust account", NT_STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT },
809	{ "No logon workstation trust account", NT_STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT },
810	{ "No logon server trust account", 	NT_STATUS_NOLOGON_SERVER_TRUST_ACCOUNT },
811	{ "Domain trust inconsistent", 		NT_STATUS_DOMAIN_TRUST_INCONSISTENT },
812	{ "No user session key available", 	NT_STATUS_NO_USER_SESSION_KEY },
813	{ "User session deleted", 		NT_STATUS_USER_SESSION_DELETED },
814	{ "Insufficient server resources", 	NT_STATUS_INSUFF_SERVER_RESOURCES },
815	{ "Insufficient logon information", 	NT_STATUS_INSUFFICIENT_LOGON_INFO },
816
817	{ "License quota exceeded", 		NT_STATUS_LICENSE_QUOTA_EXCEEDED },
818
819	{ NULL, NT_STATUS(0) }
820};
821
822/*****************************************************************************
823 returns an NT error message.  not amazingly helpful, but better than a number.
824 *****************************************************************************/
825const char *nt_errstr(NTSTATUS nt_code)
826{
827        static char msg[40];
828        int idx = 0;
829
830	while (nt_errs[idx].nt_errstr != NULL) {
831		if (NT_STATUS_V(nt_errs[idx].nt_errcode) ==
832                    NT_STATUS_V(nt_code)) {
833                        return nt_errs[idx].nt_errstr;
834		}
835		idx++;
836	}
837
838	if (NT_STATUS_IS_LDAP(nt_code)) {
839		slprintf(msg, sizeof(msg), "LDAP code %u", NT_STATUS_LDAP_CODE(nt_code));
840		return msg;
841	}
842
843	slprintf(msg, sizeof(msg), "NT code 0x%08x", NT_STATUS_V(nt_code));
844
845        return msg;
846}
847
848/************************************************************************
849 Print friendler version fo NT error code
850 ***********************************************************************/
851const char *get_friendly_nt_error_msg(NTSTATUS nt_code)
852{
853        int idx = 0;
854
855	while (nt_err_desc[idx].nt_errstr != NULL) {
856		if (NT_STATUS_V(nt_err_desc[idx].nt_errcode) == NT_STATUS_V(nt_code)) {
857                        return nt_err_desc[idx].nt_errstr;
858		}
859		idx++;
860	}
861
862	/* fall back to NT_STATUS_XXX string */
863	return nt_errstr(nt_code);
864}
865
866/*****************************************************************************
867 returns an NT_STATUS constant as a string for inclusion in autogen C code
868 *****************************************************************************/
869const char *get_nt_error_c_code(NTSTATUS nt_code)
870{
871        static char out[40];
872        int idx = 0;
873
874	while (nt_errs[idx].nt_errstr != NULL) {
875		if (NT_STATUS_V(nt_errs[idx].nt_errcode) ==
876                    NT_STATUS_V(nt_code)) {
877                        return nt_errs[idx].nt_errstr;
878		}
879		idx++;
880	}
881
882	slprintf(out, sizeof(out), "NT_STATUS(0x%08x)", NT_STATUS_V(nt_code));
883
884        return out;
885}
886
887/*****************************************************************************
888 returns the NT_STATUS constant matching the string supplied (as an NTSTATUS)
889 *****************************************************************************/
890NTSTATUS nt_status_string_to_code(const char *nt_status_str)
891{
892        int idx = 0;
893
894	while (nt_errs[idx].nt_errstr != NULL) {
895		if (strcasecmp(nt_errs[idx].nt_errstr, nt_status_str) == 0) {
896                        return nt_errs[idx].nt_errcode;
897		}
898		idx++;
899	}
900	return NT_STATUS_UNSUCCESSFUL;
901}
902