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