libsmb/nterr.c

説明を見る。
00001 /* 
00002  *  Unix SMB/CIFS implementation.
00003  *  RPC Pipe client / server routines
00004  *  Copyright (C) Luke Kenneth Casson Leighton 1997-2001.
00005  *  
00006  *  This program is free software; you can redistribute it and/or modify
00007  *  it under the terms of the GNU General Public License as published by
00008  *  the Free Software Foundation; either version 2 of the License, or
00009  *  (at your option) any later version.
00010  *  
00011  *  This program is distributed in the hope that it will be useful,
00012  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014  *  GNU General Public License for more details.
00015  *  
00016  *  You should have received a copy of the GNU General Public License
00017  *  along with this program; if not, write to the Free Software
00018  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00019  */
00020 
00021 /* NT error codes.  please read nterr.h */
00022 
00023 #include "includes.h"
00024 
00025 typedef struct
00026 {
00027         const char *nt_errstr;
00028         NTSTATUS nt_errcode;
00029 } nt_err_code_struct;
00030 
00031 static const nt_err_code_struct nt_errs[] =
00032 {
00033         { "NT_STATUS_OK", NT_STATUS_OK },
00034         { "NT_STATUS_UNSUCCESSFUL", NT_STATUS_UNSUCCESSFUL },
00035         { "NT_STATUS_NOT_IMPLEMENTED", NT_STATUS_NOT_IMPLEMENTED },
00036         { "NT_STATUS_INVALID_INFO_CLASS", NT_STATUS_INVALID_INFO_CLASS },
00037         { "NT_STATUS_INFO_LENGTH_MISMATCH", NT_STATUS_INFO_LENGTH_MISMATCH },
00038         { "NT_STATUS_ACCESS_VIOLATION", NT_STATUS_ACCESS_VIOLATION },
00039         { "STATUS_BUFFER_OVERFLOW", STATUS_BUFFER_OVERFLOW },
00040         { "NT_STATUS_IN_PAGE_ERROR", NT_STATUS_IN_PAGE_ERROR },
00041         { "NT_STATUS_PAGEFILE_QUOTA", NT_STATUS_PAGEFILE_QUOTA },
00042         { "NT_STATUS_INVALID_HANDLE", NT_STATUS_INVALID_HANDLE },
00043         { "NT_STATUS_BAD_INITIAL_STACK", NT_STATUS_BAD_INITIAL_STACK },
00044         { "NT_STATUS_BAD_INITIAL_PC", NT_STATUS_BAD_INITIAL_PC },
00045         { "NT_STATUS_INVALID_CID", NT_STATUS_INVALID_CID },
00046         { "NT_STATUS_TIMER_NOT_CANCELED", NT_STATUS_TIMER_NOT_CANCELED },
00047         { "NT_STATUS_INVALID_PARAMETER", NT_STATUS_INVALID_PARAMETER },
00048         { "NT_STATUS_NO_SUCH_DEVICE", NT_STATUS_NO_SUCH_DEVICE },
00049         { "NT_STATUS_NO_SUCH_FILE", NT_STATUS_NO_SUCH_FILE },
00050         { "NT_STATUS_INVALID_DEVICE_REQUEST", NT_STATUS_INVALID_DEVICE_REQUEST },
00051         { "NT_STATUS_END_OF_FILE", NT_STATUS_END_OF_FILE },
00052         { "NT_STATUS_WRONG_VOLUME", NT_STATUS_WRONG_VOLUME },
00053         { "NT_STATUS_NO_MEDIA_IN_DEVICE", NT_STATUS_NO_MEDIA_IN_DEVICE },
00054         { "NT_STATUS_UNRECOGNIZED_MEDIA", NT_STATUS_UNRECOGNIZED_MEDIA },
00055         { "NT_STATUS_NONEXISTENT_SECTOR", NT_STATUS_NONEXISTENT_SECTOR },
00056         { "NT_STATUS_MORE_PROCESSING_REQUIRED", NT_STATUS_MORE_PROCESSING_REQUIRED },
00057         { "NT_STATUS_NO_MEMORY", NT_STATUS_NO_MEMORY },
00058         { "NT_STATUS_CONFLICTING_ADDRESSES", NT_STATUS_CONFLICTING_ADDRESSES },
00059         { "NT_STATUS_NOT_MAPPED_VIEW", NT_STATUS_NOT_MAPPED_VIEW },
00060         { "NT_STATUS_UNABLE_TO_FREE_VM", NT_STATUS_UNABLE_TO_FREE_VM },
00061         { "NT_STATUS_UNABLE_TO_DELETE_SECTION", NT_STATUS_UNABLE_TO_DELETE_SECTION },
00062         { "NT_STATUS_INVALID_SYSTEM_SERVICE", NT_STATUS_INVALID_SYSTEM_SERVICE },
00063         { "NT_STATUS_ILLEGAL_INSTRUCTION", NT_STATUS_ILLEGAL_INSTRUCTION },
00064         { "NT_STATUS_INVALID_LOCK_SEQUENCE", NT_STATUS_INVALID_LOCK_SEQUENCE },
00065         { "NT_STATUS_INVALID_VIEW_SIZE", NT_STATUS_INVALID_VIEW_SIZE },
00066         { "NT_STATUS_INVALID_FILE_FOR_SECTION", NT_STATUS_INVALID_FILE_FOR_SECTION },
00067         { "NT_STATUS_ALREADY_COMMITTED", NT_STATUS_ALREADY_COMMITTED },
00068         { "NT_STATUS_ACCESS_DENIED", NT_STATUS_ACCESS_DENIED },
00069         { "NT_STATUS_BUFFER_TOO_SMALL", NT_STATUS_BUFFER_TOO_SMALL },
00070         { "NT_STATUS_OBJECT_TYPE_MISMATCH", NT_STATUS_OBJECT_TYPE_MISMATCH },
00071         { "NT_STATUS_NONCONTINUABLE_EXCEPTION", NT_STATUS_NONCONTINUABLE_EXCEPTION },
00072         { "NT_STATUS_INVALID_DISPOSITION", NT_STATUS_INVALID_DISPOSITION },
00073         { "NT_STATUS_UNWIND", NT_STATUS_UNWIND },
00074         { "NT_STATUS_BAD_STACK", NT_STATUS_BAD_STACK },
00075         { "NT_STATUS_INVALID_UNWIND_TARGET", NT_STATUS_INVALID_UNWIND_TARGET },
00076         { "NT_STATUS_NOT_LOCKED", NT_STATUS_NOT_LOCKED },
00077         { "NT_STATUS_PARITY_ERROR", NT_STATUS_PARITY_ERROR },
00078         { "NT_STATUS_UNABLE_TO_DECOMMIT_VM", NT_STATUS_UNABLE_TO_DECOMMIT_VM },
00079         { "NT_STATUS_NOT_COMMITTED", NT_STATUS_NOT_COMMITTED },
00080         { "NT_STATUS_INVALID_PORT_ATTRIBUTES", NT_STATUS_INVALID_PORT_ATTRIBUTES },
00081         { "NT_STATUS_PORT_MESSAGE_TOO_LONG", NT_STATUS_PORT_MESSAGE_TOO_LONG },
00082         { "NT_STATUS_INVALID_PARAMETER_MIX", NT_STATUS_INVALID_PARAMETER_MIX },
00083         { "NT_STATUS_INVALID_QUOTA_LOWER", NT_STATUS_INVALID_QUOTA_LOWER },
00084         { "NT_STATUS_DISK_CORRUPT_ERROR", NT_STATUS_DISK_CORRUPT_ERROR },
00085         { "NT_STATUS_OBJECT_NAME_INVALID", NT_STATUS_OBJECT_NAME_INVALID },
00086         { "NT_STATUS_OBJECT_NAME_NOT_FOUND", NT_STATUS_OBJECT_NAME_NOT_FOUND },
00087         { "NT_STATUS_OBJECT_NAME_COLLISION", NT_STATUS_OBJECT_NAME_COLLISION },
00088         { "NT_STATUS_HANDLE_NOT_WAITABLE", NT_STATUS_HANDLE_NOT_WAITABLE },
00089         { "NT_STATUS_PORT_DISCONNECTED", NT_STATUS_PORT_DISCONNECTED },
00090         { "NT_STATUS_DEVICE_ALREADY_ATTACHED", NT_STATUS_DEVICE_ALREADY_ATTACHED },
00091         { "NT_STATUS_OBJECT_PATH_INVALID", NT_STATUS_OBJECT_PATH_INVALID },
00092         { "NT_STATUS_OBJECT_PATH_NOT_FOUND", NT_STATUS_OBJECT_PATH_NOT_FOUND },
00093         { "NT_STATUS_OBJECT_PATH_SYNTAX_BAD", NT_STATUS_OBJECT_PATH_SYNTAX_BAD },
00094         { "NT_STATUS_DATA_OVERRUN", NT_STATUS_DATA_OVERRUN },
00095         { "NT_STATUS_DATA_LATE_ERROR", NT_STATUS_DATA_LATE_ERROR },
00096         { "NT_STATUS_DATA_ERROR", NT_STATUS_DATA_ERROR },
00097         { "NT_STATUS_CRC_ERROR", NT_STATUS_CRC_ERROR },
00098         { "NT_STATUS_SECTION_TOO_BIG", NT_STATUS_SECTION_TOO_BIG },
00099         { "NT_STATUS_PORT_CONNECTION_REFUSED", NT_STATUS_PORT_CONNECTION_REFUSED },
00100         { "NT_STATUS_INVALID_PORT_HANDLE", NT_STATUS_INVALID_PORT_HANDLE },
00101         { "NT_STATUS_SHARING_VIOLATION", NT_STATUS_SHARING_VIOLATION },
00102         { "NT_STATUS_QUOTA_EXCEEDED", NT_STATUS_QUOTA_EXCEEDED },
00103         { "NT_STATUS_INVALID_PAGE_PROTECTION", NT_STATUS_INVALID_PAGE_PROTECTION },
00104         { "NT_STATUS_MUTANT_NOT_OWNED", NT_STATUS_MUTANT_NOT_OWNED },
00105         { "NT_STATUS_SEMAPHORE_LIMIT_EXCEEDED", NT_STATUS_SEMAPHORE_LIMIT_EXCEEDED },
00106         { "NT_STATUS_PORT_ALREADY_SET", NT_STATUS_PORT_ALREADY_SET },
00107         { "NT_STATUS_SECTION_NOT_IMAGE", NT_STATUS_SECTION_NOT_IMAGE },
00108         { "NT_STATUS_SUSPEND_COUNT_EXCEEDED", NT_STATUS_SUSPEND_COUNT_EXCEEDED },
00109         { "NT_STATUS_THREAD_IS_TERMINATING", NT_STATUS_THREAD_IS_TERMINATING },
00110         { "NT_STATUS_BAD_WORKING_SET_LIMIT", NT_STATUS_BAD_WORKING_SET_LIMIT },
00111         { "NT_STATUS_INCOMPATIBLE_FILE_MAP", NT_STATUS_INCOMPATIBLE_FILE_MAP },
00112         { "NT_STATUS_SECTION_PROTECTION", NT_STATUS_SECTION_PROTECTION },
00113         { "NT_STATUS_EAS_NOT_SUPPORTED", NT_STATUS_EAS_NOT_SUPPORTED },
00114         { "NT_STATUS_EA_TOO_LARGE", NT_STATUS_EA_TOO_LARGE },
00115         { "NT_STATUS_NONEXISTENT_EA_ENTRY", NT_STATUS_NONEXISTENT_EA_ENTRY },
00116         { "NT_STATUS_NO_EAS_ON_FILE", NT_STATUS_NO_EAS_ON_FILE },
00117         { "NT_STATUS_EA_CORRUPT_ERROR", NT_STATUS_EA_CORRUPT_ERROR },
00118         { "NT_STATUS_FILE_LOCK_CONFLICT", NT_STATUS_FILE_LOCK_CONFLICT },
00119         { "NT_STATUS_LOCK_NOT_GRANTED", NT_STATUS_LOCK_NOT_GRANTED },
00120         { "NT_STATUS_DELETE_PENDING", NT_STATUS_DELETE_PENDING },
00121         { "NT_STATUS_CTL_FILE_NOT_SUPPORTED", NT_STATUS_CTL_FILE_NOT_SUPPORTED },
00122         { "NT_STATUS_UNKNOWN_REVISION", NT_STATUS_UNKNOWN_REVISION },
00123         { "NT_STATUS_REVISION_MISMATCH", NT_STATUS_REVISION_MISMATCH },
00124         { "NT_STATUS_INVALID_OWNER", NT_STATUS_INVALID_OWNER },
00125         { "NT_STATUS_INVALID_PRIMARY_GROUP", NT_STATUS_INVALID_PRIMARY_GROUP },
00126         { "NT_STATUS_NO_IMPERSONATION_TOKEN", NT_STATUS_NO_IMPERSONATION_TOKEN },
00127         { "NT_STATUS_CANT_DISABLE_MANDATORY", NT_STATUS_CANT_DISABLE_MANDATORY },
00128         { "NT_STATUS_NO_LOGON_SERVERS", NT_STATUS_NO_LOGON_SERVERS },
00129         { "NT_STATUS_NO_SUCH_LOGON_SESSION", NT_STATUS_NO_SUCH_LOGON_SESSION },
00130         { "NT_STATUS_NO_SUCH_PRIVILEGE", NT_STATUS_NO_SUCH_PRIVILEGE },
00131         { "NT_STATUS_PRIVILEGE_NOT_HELD", NT_STATUS_PRIVILEGE_NOT_HELD },
00132         { "NT_STATUS_INVALID_ACCOUNT_NAME", NT_STATUS_INVALID_ACCOUNT_NAME },
00133         { "NT_STATUS_USER_EXISTS", NT_STATUS_USER_EXISTS },
00134         { "NT_STATUS_NO_SUCH_USER", NT_STATUS_NO_SUCH_USER },
00135         { "NT_STATUS_GROUP_EXISTS", NT_STATUS_GROUP_EXISTS },
00136         { "NT_STATUS_NO_SUCH_GROUP", NT_STATUS_NO_SUCH_GROUP },
00137         { "NT_STATUS_MEMBER_IN_GROUP", NT_STATUS_MEMBER_IN_GROUP },
00138         { "NT_STATUS_MEMBER_NOT_IN_GROUP", NT_STATUS_MEMBER_NOT_IN_GROUP },
00139         { "NT_STATUS_LAST_ADMIN", NT_STATUS_LAST_ADMIN },
00140         { "NT_STATUS_WRONG_PASSWORD", NT_STATUS_WRONG_PASSWORD },
00141         { "NT_STATUS_ILL_FORMED_PASSWORD", NT_STATUS_ILL_FORMED_PASSWORD },
00142         { "NT_STATUS_PASSWORD_RESTRICTION", NT_STATUS_PASSWORD_RESTRICTION },
00143         { "NT_STATUS_LOGON_FAILURE", NT_STATUS_LOGON_FAILURE },
00144         { "NT_STATUS_ACCOUNT_RESTRICTION", NT_STATUS_ACCOUNT_RESTRICTION },
00145         { "NT_STATUS_INVALID_LOGON_HOURS", NT_STATUS_INVALID_LOGON_HOURS },
00146         { "NT_STATUS_INVALID_WORKSTATION", NT_STATUS_INVALID_WORKSTATION },
00147         { "NT_STATUS_PASSWORD_EXPIRED", NT_STATUS_PASSWORD_EXPIRED },
00148         { "NT_STATUS_ACCOUNT_DISABLED", NT_STATUS_ACCOUNT_DISABLED },
00149         { "NT_STATUS_NONE_MAPPED", NT_STATUS_NONE_MAPPED },
00150         { "NT_STATUS_TOO_MANY_LUIDS_REQUESTED", NT_STATUS_TOO_MANY_LUIDS_REQUESTED },
00151         { "NT_STATUS_LUIDS_EXHAUSTED", NT_STATUS_LUIDS_EXHAUSTED },
00152         { "NT_STATUS_INVALID_SUB_AUTHORITY", NT_STATUS_INVALID_SUB_AUTHORITY },
00153         { "NT_STATUS_INVALID_ACL", NT_STATUS_INVALID_ACL },
00154         { "NT_STATUS_INVALID_SID", NT_STATUS_INVALID_SID },
00155         { "NT_STATUS_INVALID_SECURITY_DESCR", NT_STATUS_INVALID_SECURITY_DESCR },
00156         { "NT_STATUS_PROCEDURE_NOT_FOUND", NT_STATUS_PROCEDURE_NOT_FOUND },
00157         { "NT_STATUS_INVALID_IMAGE_FORMAT", NT_STATUS_INVALID_IMAGE_FORMAT },
00158         { "NT_STATUS_NO_TOKEN", NT_STATUS_NO_TOKEN },
00159         { "NT_STATUS_BAD_INHERITANCE_ACL", NT_STATUS_BAD_INHERITANCE_ACL },
00160         { "NT_STATUS_RANGE_NOT_LOCKED", NT_STATUS_RANGE_NOT_LOCKED },
00161         { "NT_STATUS_DISK_FULL", NT_STATUS_DISK_FULL },
00162         { "NT_STATUS_SERVER_DISABLED", NT_STATUS_SERVER_DISABLED },
00163         { "NT_STATUS_SERVER_NOT_DISABLED", NT_STATUS_SERVER_NOT_DISABLED },
00164         { "NT_STATUS_TOO_MANY_GUIDS_REQUESTED", NT_STATUS_TOO_MANY_GUIDS_REQUESTED },
00165         { "NT_STATUS_GUIDS_EXHAUSTED", NT_STATUS_GUIDS_EXHAUSTED },
00166         { "NT_STATUS_INVALID_ID_AUTHORITY", NT_STATUS_INVALID_ID_AUTHORITY },
00167         { "NT_STATUS_AGENTS_EXHAUSTED", NT_STATUS_AGENTS_EXHAUSTED },
00168         { "NT_STATUS_INVALID_VOLUME_LABEL", NT_STATUS_INVALID_VOLUME_LABEL },
00169         { "NT_STATUS_SECTION_NOT_EXTENDED", NT_STATUS_SECTION_NOT_EXTENDED },
00170         { "NT_STATUS_NOT_MAPPED_DATA", NT_STATUS_NOT_MAPPED_DATA },
00171         { "NT_STATUS_RESOURCE_DATA_NOT_FOUND", NT_STATUS_RESOURCE_DATA_NOT_FOUND },
00172         { "NT_STATUS_RESOURCE_TYPE_NOT_FOUND", NT_STATUS_RESOURCE_TYPE_NOT_FOUND },
00173         { "NT_STATUS_RESOURCE_NAME_NOT_FOUND", NT_STATUS_RESOURCE_NAME_NOT_FOUND },
00174         { "NT_STATUS_ARRAY_BOUNDS_EXCEEDED", NT_STATUS_ARRAY_BOUNDS_EXCEEDED },
00175         { "NT_STATUS_FLOAT_DENORMAL_OPERAND", NT_STATUS_FLOAT_DENORMAL_OPERAND },
00176         { "NT_STATUS_FLOAT_DIVIDE_BY_ZERO", NT_STATUS_FLOAT_DIVIDE_BY_ZERO },
00177         { "NT_STATUS_FLOAT_INEXACT_RESULT", NT_STATUS_FLOAT_INEXACT_RESULT },
00178         { "NT_STATUS_FLOAT_INVALID_OPERATION", NT_STATUS_FLOAT_INVALID_OPERATION },
00179         { "NT_STATUS_FLOAT_OVERFLOW", NT_STATUS_FLOAT_OVERFLOW },
00180         { "NT_STATUS_FLOAT_STACK_CHECK", NT_STATUS_FLOAT_STACK_CHECK },
00181         { "NT_STATUS_FLOAT_UNDERFLOW", NT_STATUS_FLOAT_UNDERFLOW },
00182         { "NT_STATUS_INTEGER_DIVIDE_BY_ZERO", NT_STATUS_INTEGER_DIVIDE_BY_ZERO },
00183         { "NT_STATUS_INTEGER_OVERFLOW", NT_STATUS_INTEGER_OVERFLOW },
00184         { "NT_STATUS_PRIVILEGED_INSTRUCTION", NT_STATUS_PRIVILEGED_INSTRUCTION },
00185         { "NT_STATUS_TOO_MANY_PAGING_FILES", NT_STATUS_TOO_MANY_PAGING_FILES },
00186         { "NT_STATUS_FILE_INVALID", NT_STATUS_FILE_INVALID },
00187         { "NT_STATUS_ALLOTTED_SPACE_EXCEEDED", NT_STATUS_ALLOTTED_SPACE_EXCEEDED },
00188         { "NT_STATUS_INSUFFICIENT_RESOURCES", NT_STATUS_INSUFFICIENT_RESOURCES },
00189         { "NT_STATUS_DFS_EXIT_PATH_FOUND", NT_STATUS_DFS_EXIT_PATH_FOUND },
00190         { "NT_STATUS_DEVICE_DATA_ERROR", NT_STATUS_DEVICE_DATA_ERROR },
00191         { "NT_STATUS_DEVICE_NOT_CONNECTED", NT_STATUS_DEVICE_NOT_CONNECTED },
00192         { "NT_STATUS_DEVICE_POWER_FAILURE", NT_STATUS_DEVICE_POWER_FAILURE },
00193         { "NT_STATUS_FREE_VM_NOT_AT_BASE", NT_STATUS_FREE_VM_NOT_AT_BASE },
00194         { "NT_STATUS_MEMORY_NOT_ALLOCATED", NT_STATUS_MEMORY_NOT_ALLOCATED },
00195         { "NT_STATUS_WORKING_SET_QUOTA", NT_STATUS_WORKING_SET_QUOTA },
00196         { "NT_STATUS_MEDIA_WRITE_PROTECTED", NT_STATUS_MEDIA_WRITE_PROTECTED },
00197         { "NT_STATUS_DEVICE_NOT_READY", NT_STATUS_DEVICE_NOT_READY },
00198         { "NT_STATUS_INVALID_GROUP_ATTRIBUTES", NT_STATUS_INVALID_GROUP_ATTRIBUTES },
00199         { "NT_STATUS_BAD_IMPERSONATION_LEVEL", NT_STATUS_BAD_IMPERSONATION_LEVEL },
00200         { "NT_STATUS_CANT_OPEN_ANONYMOUS", NT_STATUS_CANT_OPEN_ANONYMOUS },
00201         { "NT_STATUS_BAD_VALIDATION_CLASS", NT_STATUS_BAD_VALIDATION_CLASS },
00202         { "NT_STATUS_BAD_TOKEN_TYPE", NT_STATUS_BAD_TOKEN_TYPE },
00203         { "NT_STATUS_BAD_MASTER_BOOT_RECORD", NT_STATUS_BAD_MASTER_BOOT_RECORD },
00204         { "NT_STATUS_INSTRUCTION_MISALIGNMENT", NT_STATUS_INSTRUCTION_MISALIGNMENT },
00205         { "NT_STATUS_INSTANCE_NOT_AVAILABLE", NT_STATUS_INSTANCE_NOT_AVAILABLE },
00206         { "NT_STATUS_PIPE_NOT_AVAILABLE", NT_STATUS_PIPE_NOT_AVAILABLE },
00207         { "NT_STATUS_INVALID_PIPE_STATE", NT_STATUS_INVALID_PIPE_STATE },
00208         { "NT_STATUS_PIPE_BUSY", NT_STATUS_PIPE_BUSY },
00209         { "NT_STATUS_ILLEGAL_FUNCTION", NT_STATUS_ILLEGAL_FUNCTION },
00210         { "NT_STATUS_PIPE_DISCONNECTED", NT_STATUS_PIPE_DISCONNECTED },
00211         { "NT_STATUS_PIPE_CLOSING", NT_STATUS_PIPE_CLOSING },
00212         { "NT_STATUS_PIPE_CONNECTED", NT_STATUS_PIPE_CONNECTED },
00213         { "NT_STATUS_PIPE_LISTENING", NT_STATUS_PIPE_LISTENING },
00214         { "NT_STATUS_INVALID_READ_MODE", NT_STATUS_INVALID_READ_MODE },
00215         { "NT_STATUS_IO_TIMEOUT", NT_STATUS_IO_TIMEOUT },
00216         { "NT_STATUS_FILE_FORCED_CLOSED", NT_STATUS_FILE_FORCED_CLOSED },
00217         { "NT_STATUS_PROFILING_NOT_STARTED", NT_STATUS_PROFILING_NOT_STARTED },
00218         { "NT_STATUS_PROFILING_NOT_STOPPED", NT_STATUS_PROFILING_NOT_STOPPED },
00219         { "NT_STATUS_COULD_NOT_INTERPRET", NT_STATUS_COULD_NOT_INTERPRET },
00220         { "NT_STATUS_FILE_IS_A_DIRECTORY", NT_STATUS_FILE_IS_A_DIRECTORY },
00221         { "NT_STATUS_NOT_SUPPORTED", NT_STATUS_NOT_SUPPORTED },
00222         { "NT_STATUS_REMOTE_NOT_LISTENING", NT_STATUS_REMOTE_NOT_LISTENING },
00223         { "NT_STATUS_DUPLICATE_NAME", NT_STATUS_DUPLICATE_NAME },
00224         { "NT_STATUS_BAD_NETWORK_PATH", NT_STATUS_BAD_NETWORK_PATH },
00225         { "NT_STATUS_NETWORK_BUSY", NT_STATUS_NETWORK_BUSY },
00226         { "NT_STATUS_DEVICE_DOES_NOT_EXIST", NT_STATUS_DEVICE_DOES_NOT_EXIST },
00227         { "NT_STATUS_TOO_MANY_COMMANDS", NT_STATUS_TOO_MANY_COMMANDS },
00228         { "NT_STATUS_ADAPTER_HARDWARE_ERROR", NT_STATUS_ADAPTER_HARDWARE_ERROR },
00229         { "NT_STATUS_INVALID_NETWORK_RESPONSE", NT_STATUS_INVALID_NETWORK_RESPONSE },
00230         { "NT_STATUS_UNEXPECTED_NETWORK_ERROR", NT_STATUS_UNEXPECTED_NETWORK_ERROR },
00231         { "NT_STATUS_BAD_REMOTE_ADAPTER", NT_STATUS_BAD_REMOTE_ADAPTER },
00232         { "NT_STATUS_PRINT_QUEUE_FULL", NT_STATUS_PRINT_QUEUE_FULL },
00233         { "NT_STATUS_NO_SPOOL_SPACE", NT_STATUS_NO_SPOOL_SPACE },
00234         { "NT_STATUS_PRINT_CANCELLED", NT_STATUS_PRINT_CANCELLED },
00235         { "NT_STATUS_NETWORK_NAME_DELETED", NT_STATUS_NETWORK_NAME_DELETED },
00236         { "NT_STATUS_NETWORK_ACCESS_DENIED", NT_STATUS_NETWORK_ACCESS_DENIED },
00237         { "NT_STATUS_BAD_DEVICE_TYPE", NT_STATUS_BAD_DEVICE_TYPE },
00238         { "NT_STATUS_BAD_NETWORK_NAME", NT_STATUS_BAD_NETWORK_NAME },
00239         { "NT_STATUS_TOO_MANY_NAMES", NT_STATUS_TOO_MANY_NAMES },
00240         { "NT_STATUS_TOO_MANY_SESSIONS", NT_STATUS_TOO_MANY_SESSIONS },
00241         { "NT_STATUS_SHARING_PAUSED", NT_STATUS_SHARING_PAUSED },
00242         { "NT_STATUS_REQUEST_NOT_ACCEPTED", NT_STATUS_REQUEST_NOT_ACCEPTED },
00243         { "NT_STATUS_REDIRECTOR_PAUSED", NT_STATUS_REDIRECTOR_PAUSED },
00244         { "NT_STATUS_NET_WRITE_FAULT", NT_STATUS_NET_WRITE_FAULT },
00245         { "NT_STATUS_PROFILING_AT_LIMIT", NT_STATUS_PROFILING_AT_LIMIT },
00246         { "NT_STATUS_NOT_SAME_DEVICE", NT_STATUS_NOT_SAME_DEVICE },
00247         { "NT_STATUS_FILE_RENAMED", NT_STATUS_FILE_RENAMED },
00248         { "NT_STATUS_VIRTUAL_CIRCUIT_CLOSED", NT_STATUS_VIRTUAL_CIRCUIT_CLOSED },
00249         { "NT_STATUS_NO_SECURITY_ON_OBJECT", NT_STATUS_NO_SECURITY_ON_OBJECT },
00250         { "NT_STATUS_CANT_WAIT", NT_STATUS_CANT_WAIT },
00251         { "NT_STATUS_PIPE_EMPTY", NT_STATUS_PIPE_EMPTY },
00252         { "NT_STATUS_CANT_ACCESS_DOMAIN_INFO", NT_STATUS_CANT_ACCESS_DOMAIN_INFO },
00253         { "NT_STATUS_CANT_TERMINATE_SELF", NT_STATUS_CANT_TERMINATE_SELF },
00254         { "NT_STATUS_INVALID_SERVER_STATE", NT_STATUS_INVALID_SERVER_STATE },
00255         { "NT_STATUS_INVALID_DOMAIN_STATE", NT_STATUS_INVALID_DOMAIN_STATE },
00256         { "NT_STATUS_INVALID_DOMAIN_ROLE", NT_STATUS_INVALID_DOMAIN_ROLE },
00257         { "NT_STATUS_NO_SUCH_DOMAIN", NT_STATUS_NO_SUCH_DOMAIN },
00258         { "NT_STATUS_DOMAIN_EXISTS", NT_STATUS_DOMAIN_EXISTS },
00259         { "NT_STATUS_DOMAIN_LIMIT_EXCEEDED", NT_STATUS_DOMAIN_LIMIT_EXCEEDED },
00260         { "NT_STATUS_OPLOCK_NOT_GRANTED", NT_STATUS_OPLOCK_NOT_GRANTED },
00261         { "NT_STATUS_INVALID_OPLOCK_PROTOCOL", NT_STATUS_INVALID_OPLOCK_PROTOCOL },
00262         { "NT_STATUS_INTERNAL_DB_CORRUPTION", NT_STATUS_INTERNAL_DB_CORRUPTION },
00263         { "NT_STATUS_INTERNAL_ERROR", NT_STATUS_INTERNAL_ERROR },
00264         { "NT_STATUS_GENERIC_NOT_MAPPED", NT_STATUS_GENERIC_NOT_MAPPED },
00265         { "NT_STATUS_BAD_DESCRIPTOR_FORMAT", NT_STATUS_BAD_DESCRIPTOR_FORMAT },
00266         { "NT_STATUS_INVALID_USER_BUFFER", NT_STATUS_INVALID_USER_BUFFER },
00267         { "NT_STATUS_UNEXPECTED_IO_ERROR", NT_STATUS_UNEXPECTED_IO_ERROR },
00268         { "NT_STATUS_UNEXPECTED_MM_CREATE_ERR", NT_STATUS_UNEXPECTED_MM_CREATE_ERR },
00269         { "NT_STATUS_UNEXPECTED_MM_MAP_ERROR", NT_STATUS_UNEXPECTED_MM_MAP_ERROR },
00270         { "NT_STATUS_UNEXPECTED_MM_EXTEND_ERR", NT_STATUS_UNEXPECTED_MM_EXTEND_ERR },
00271         { "NT_STATUS_NOT_LOGON_PROCESS", NT_STATUS_NOT_LOGON_PROCESS },
00272         { "NT_STATUS_LOGON_SESSION_EXISTS", NT_STATUS_LOGON_SESSION_EXISTS },
00273         { "NT_STATUS_INVALID_PARAMETER_1", NT_STATUS_INVALID_PARAMETER_1 },
00274         { "NT_STATUS_INVALID_PARAMETER_2", NT_STATUS_INVALID_PARAMETER_2 },
00275         { "NT_STATUS_INVALID_PARAMETER_3", NT_STATUS_INVALID_PARAMETER_3 },
00276         { "NT_STATUS_INVALID_PARAMETER_4", NT_STATUS_INVALID_PARAMETER_4 },
00277         { "NT_STATUS_INVALID_PARAMETER_5", NT_STATUS_INVALID_PARAMETER_5 },
00278         { "NT_STATUS_INVALID_PARAMETER_6", NT_STATUS_INVALID_PARAMETER_6 },
00279         { "NT_STATUS_INVALID_PARAMETER_7", NT_STATUS_INVALID_PARAMETER_7 },
00280         { "NT_STATUS_INVALID_PARAMETER_8", NT_STATUS_INVALID_PARAMETER_8 },
00281         { "NT_STATUS_INVALID_PARAMETER_9", NT_STATUS_INVALID_PARAMETER_9 },
00282         { "NT_STATUS_INVALID_PARAMETER_10", NT_STATUS_INVALID_PARAMETER_10 },
00283         { "NT_STATUS_INVALID_PARAMETER_11", NT_STATUS_INVALID_PARAMETER_11 },
00284         { "NT_STATUS_INVALID_PARAMETER_12", NT_STATUS_INVALID_PARAMETER_12 },
00285         { "NT_STATUS_REDIRECTOR_NOT_STARTED", NT_STATUS_REDIRECTOR_NOT_STARTED },
00286         { "NT_STATUS_REDIRECTOR_STARTED", NT_STATUS_REDIRECTOR_STARTED },
00287         { "NT_STATUS_STACK_OVERFLOW", NT_STATUS_STACK_OVERFLOW },
00288         { "NT_STATUS_NO_SUCH_PACKAGE", NT_STATUS_NO_SUCH_PACKAGE },
00289         { "NT_STATUS_BAD_FUNCTION_TABLE", NT_STATUS_BAD_FUNCTION_TABLE },
00290         { "NT_STATUS_DIRECTORY_NOT_EMPTY", NT_STATUS_DIRECTORY_NOT_EMPTY },
00291         { "NT_STATUS_FILE_CORRUPT_ERROR", NT_STATUS_FILE_CORRUPT_ERROR },
00292         { "NT_STATUS_NOT_A_DIRECTORY", NT_STATUS_NOT_A_DIRECTORY },
00293         { "NT_STATUS_BAD_LOGON_SESSION_STATE", NT_STATUS_BAD_LOGON_SESSION_STATE },
00294         { "NT_STATUS_LOGON_SESSION_COLLISION", NT_STATUS_LOGON_SESSION_COLLISION },
00295         { "NT_STATUS_NAME_TOO_LONG", NT_STATUS_NAME_TOO_LONG },
00296         { "NT_STATUS_FILES_OPEN", NT_STATUS_FILES_OPEN },
00297         { "NT_STATUS_CONNECTION_IN_USE", NT_STATUS_CONNECTION_IN_USE },
00298         { "NT_STATUS_MESSAGE_NOT_FOUND", NT_STATUS_MESSAGE_NOT_FOUND },
00299         { "NT_STATUS_PROCESS_IS_TERMINATING", NT_STATUS_PROCESS_IS_TERMINATING },
00300         { "NT_STATUS_INVALID_LOGON_TYPE", NT_STATUS_INVALID_LOGON_TYPE },
00301         { "NT_STATUS_NO_GUID_TRANSLATION", NT_STATUS_NO_GUID_TRANSLATION },
00302         { "NT_STATUS_CANNOT_IMPERSONATE", NT_STATUS_CANNOT_IMPERSONATE },
00303         { "NT_STATUS_IMAGE_ALREADY_LOADED", NT_STATUS_IMAGE_ALREADY_LOADED },
00304         { "NT_STATUS_ABIOS_NOT_PRESENT", NT_STATUS_ABIOS_NOT_PRESENT },
00305         { "NT_STATUS_ABIOS_LID_NOT_EXIST", NT_STATUS_ABIOS_LID_NOT_EXIST },
00306         { "NT_STATUS_ABIOS_LID_ALREADY_OWNED", NT_STATUS_ABIOS_LID_ALREADY_OWNED },
00307         { "NT_STATUS_ABIOS_NOT_LID_OWNER", NT_STATUS_ABIOS_NOT_LID_OWNER },
00308         { "NT_STATUS_ABIOS_INVALID_COMMAND", NT_STATUS_ABIOS_INVALID_COMMAND },
00309         { "NT_STATUS_ABIOS_INVALID_LID", NT_STATUS_ABIOS_INVALID_LID },
00310         { "NT_STATUS_ABIOS_SELECTOR_NOT_AVAILABLE", NT_STATUS_ABIOS_SELECTOR_NOT_AVAILABLE },
00311         { "NT_STATUS_ABIOS_INVALID_SELECTOR", NT_STATUS_ABIOS_INVALID_SELECTOR },
00312         { "NT_STATUS_NO_LDT", NT_STATUS_NO_LDT },
00313         { "NT_STATUS_INVALID_LDT_SIZE", NT_STATUS_INVALID_LDT_SIZE },
00314         { "NT_STATUS_INVALID_LDT_OFFSET", NT_STATUS_INVALID_LDT_OFFSET },
00315         { "NT_STATUS_INVALID_LDT_DESCRIPTOR", NT_STATUS_INVALID_LDT_DESCRIPTOR },
00316         { "NT_STATUS_INVALID_IMAGE_NE_FORMAT", NT_STATUS_INVALID_IMAGE_NE_FORMAT },
00317         { "NT_STATUS_RXACT_INVALID_STATE", NT_STATUS_RXACT_INVALID_STATE },
00318         { "NT_STATUS_RXACT_COMMIT_FAILURE", NT_STATUS_RXACT_COMMIT_FAILURE },
00319         { "NT_STATUS_MAPPED_FILE_SIZE_ZERO", NT_STATUS_MAPPED_FILE_SIZE_ZERO },
00320         { "NT_STATUS_TOO_MANY_OPENED_FILES", NT_STATUS_TOO_MANY_OPENED_FILES },
00321         { "NT_STATUS_CANCELLED", NT_STATUS_CANCELLED },
00322         { "NT_STATUS_CANNOT_DELETE", NT_STATUS_CANNOT_DELETE },
00323         { "NT_STATUS_INVALID_COMPUTER_NAME", NT_STATUS_INVALID_COMPUTER_NAME },
00324         { "NT_STATUS_FILE_DELETED", NT_STATUS_FILE_DELETED },
00325         { "NT_STATUS_SPECIAL_ACCOUNT", NT_STATUS_SPECIAL_ACCOUNT },
00326         { "NT_STATUS_SPECIAL_GROUP", NT_STATUS_SPECIAL_GROUP },
00327         { "NT_STATUS_SPECIAL_USER", NT_STATUS_SPECIAL_USER },
00328         { "NT_STATUS_MEMBERS_PRIMARY_GROUP", NT_STATUS_MEMBERS_PRIMARY_GROUP },
00329         { "NT_STATUS_FILE_CLOSED", NT_STATUS_FILE_CLOSED },
00330         { "NT_STATUS_TOO_MANY_THREADS", NT_STATUS_TOO_MANY_THREADS },
00331         { "NT_STATUS_THREAD_NOT_IN_PROCESS", NT_STATUS_THREAD_NOT_IN_PROCESS },
00332         { "NT_STATUS_TOKEN_ALREADY_IN_USE", NT_STATUS_TOKEN_ALREADY_IN_USE },
00333         { "NT_STATUS_PAGEFILE_QUOTA_EXCEEDED", NT_STATUS_PAGEFILE_QUOTA_EXCEEDED },
00334         { "NT_STATUS_COMMITMENT_LIMIT", NT_STATUS_COMMITMENT_LIMIT },
00335         { "NT_STATUS_INVALID_IMAGE_LE_FORMAT", NT_STATUS_INVALID_IMAGE_LE_FORMAT },
00336         { "NT_STATUS_INVALID_IMAGE_NOT_MZ", NT_STATUS_INVALID_IMAGE_NOT_MZ },
00337         { "NT_STATUS_INVALID_IMAGE_PROTECT", NT_STATUS_INVALID_IMAGE_PROTECT },
00338         { "NT_STATUS_INVALID_IMAGE_WIN_16", NT_STATUS_INVALID_IMAGE_WIN_16 },
00339         { "NT_STATUS_LOGON_SERVER_CONFLICT", NT_STATUS_LOGON_SERVER_CONFLICT },
00340         { "NT_STATUS_TIME_DIFFERENCE_AT_DC", NT_STATUS_TIME_DIFFERENCE_AT_DC },
00341         { "NT_STATUS_SYNCHRONIZATION_REQUIRED", NT_STATUS_SYNCHRONIZATION_REQUIRED },
00342         { "NT_STATUS_DLL_NOT_FOUND", NT_STATUS_DLL_NOT_FOUND },
00343         { "NT_STATUS_OPEN_FAILED", NT_STATUS_OPEN_FAILED },
00344         { "NT_STATUS_IO_PRIVILEGE_FAILED", NT_STATUS_IO_PRIVILEGE_FAILED },
00345         { "NT_STATUS_ORDINAL_NOT_FOUND", NT_STATUS_ORDINAL_NOT_FOUND },
00346         { "NT_STATUS_ENTRYPOINT_NOT_FOUND", NT_STATUS_ENTRYPOINT_NOT_FOUND },
00347         { "NT_STATUS_CONTROL_C_EXIT", NT_STATUS_CONTROL_C_EXIT },
00348         { "NT_STATUS_LOCAL_DISCONNECT", NT_STATUS_LOCAL_DISCONNECT },
00349         { "NT_STATUS_REMOTE_DISCONNECT", NT_STATUS_REMOTE_DISCONNECT },
00350         { "NT_STATUS_REMOTE_RESOURCES", NT_STATUS_REMOTE_RESOURCES },
00351         { "NT_STATUS_LINK_FAILED", NT_STATUS_LINK_FAILED },
00352         { "NT_STATUS_LINK_TIMEOUT", NT_STATUS_LINK_TIMEOUT },
00353         { "NT_STATUS_INVALID_CONNECTION", NT_STATUS_INVALID_CONNECTION },
00354         { "NT_STATUS_INVALID_ADDRESS", NT_STATUS_INVALID_ADDRESS },
00355         { "NT_STATUS_DLL_INIT_FAILED", NT_STATUS_DLL_INIT_FAILED },
00356         { "NT_STATUS_MISSING_SYSTEMFILE", NT_STATUS_MISSING_SYSTEMFILE },
00357         { "NT_STATUS_UNHANDLED_EXCEPTION", NT_STATUS_UNHANDLED_EXCEPTION },
00358         { "NT_STATUS_APP_INIT_FAILURE", NT_STATUS_APP_INIT_FAILURE },
00359         { "NT_STATUS_PAGEFILE_CREATE_FAILED", NT_STATUS_PAGEFILE_CREATE_FAILED },
00360         { "NT_STATUS_NO_PAGEFILE", NT_STATUS_NO_PAGEFILE },
00361         { "NT_STATUS_INVALID_LEVEL", NT_STATUS_INVALID_LEVEL },
00362         { "NT_STATUS_WRONG_PASSWORD_CORE", NT_STATUS_WRONG_PASSWORD_CORE },
00363         { "NT_STATUS_ILLEGAL_FLOAT_CONTEXT", NT_STATUS_ILLEGAL_FLOAT_CONTEXT },
00364         { "NT_STATUS_PIPE_BROKEN", NT_STATUS_PIPE_BROKEN },
00365         { "NT_STATUS_REGISTRY_CORRUPT", NT_STATUS_REGISTRY_CORRUPT },
00366         { "NT_STATUS_REGISTRY_IO_FAILED", NT_STATUS_REGISTRY_IO_FAILED },
00367         { "NT_STATUS_NO_EVENT_PAIR", NT_STATUS_NO_EVENT_PAIR },
00368         { "NT_STATUS_UNRECOGNIZED_VOLUME", NT_STATUS_UNRECOGNIZED_VOLUME },
00369         { "NT_STATUS_SERIAL_NO_DEVICE_INITED", NT_STATUS_SERIAL_NO_DEVICE_INITED },
00370         { "NT_STATUS_NO_SUCH_ALIAS", NT_STATUS_NO_SUCH_ALIAS },
00371         { "NT_STATUS_MEMBER_NOT_IN_ALIAS", NT_STATUS_MEMBER_NOT_IN_ALIAS },
00372         { "NT_STATUS_MEMBER_IN_ALIAS", NT_STATUS_MEMBER_IN_ALIAS },
00373         { "NT_STATUS_ALIAS_EXISTS", NT_STATUS_ALIAS_EXISTS },
00374         { "NT_STATUS_LOGON_NOT_GRANTED", NT_STATUS_LOGON_NOT_GRANTED },
00375         { "NT_STATUS_TOO_MANY_SECRETS", NT_STATUS_TOO_MANY_SECRETS },
00376         { "NT_STATUS_SECRET_TOO_LONG", NT_STATUS_SECRET_TOO_LONG },
00377         { "NT_STATUS_INTERNAL_DB_ERROR", NT_STATUS_INTERNAL_DB_ERROR },
00378         { "NT_STATUS_FULLSCREEN_MODE", NT_STATUS_FULLSCREEN_MODE },
00379         { "NT_STATUS_TOO_MANY_CONTEXT_IDS", NT_STATUS_TOO_MANY_CONTEXT_IDS },
00380         { "NT_STATUS_LOGON_TYPE_NOT_GRANTED", NT_STATUS_LOGON_TYPE_NOT_GRANTED },
00381         { "NT_STATUS_NOT_REGISTRY_FILE", NT_STATUS_NOT_REGISTRY_FILE },
00382         { "NT_STATUS_NT_CROSS_ENCRYPTION_REQUIRED", NT_STATUS_NT_CROSS_ENCRYPTION_REQUIRED },
00383         { "NT_STATUS_DOMAIN_CTRLR_CONFIG_ERROR", NT_STATUS_DOMAIN_CTRLR_CONFIG_ERROR },
00384         { "NT_STATUS_FT_MISSING_MEMBER", NT_STATUS_FT_MISSING_MEMBER },
00385         { "NT_STATUS_ILL_FORMED_SERVICE_ENTRY", NT_STATUS_ILL_FORMED_SERVICE_ENTRY },
00386         { "NT_STATUS_ILLEGAL_CHARACTER", NT_STATUS_ILLEGAL_CHARACTER },
00387         { "NT_STATUS_UNMAPPABLE_CHARACTER", NT_STATUS_UNMAPPABLE_CHARACTER },
00388         { "NT_STATUS_UNDEFINED_CHARACTER", NT_STATUS_UNDEFINED_CHARACTER },
00389         { "NT_STATUS_FLOPPY_VOLUME", NT_STATUS_FLOPPY_VOLUME },
00390         { "NT_STATUS_FLOPPY_ID_MARK_NOT_FOUND", NT_STATUS_FLOPPY_ID_MARK_NOT_FOUND },
00391         { "NT_STATUS_FLOPPY_WRONG_CYLINDER", NT_STATUS_FLOPPY_WRONG_CYLINDER },
00392         { "NT_STATUS_FLOPPY_UNKNOWN_ERROR", NT_STATUS_FLOPPY_UNKNOWN_ERROR },
00393         { "NT_STATUS_FLOPPY_BAD_REGISTERS", NT_STATUS_FLOPPY_BAD_REGISTERS },
00394         { "NT_STATUS_DISK_RECALIBRATE_FAILED", NT_STATUS_DISK_RECALIBRATE_FAILED },
00395         { "NT_STATUS_DISK_OPERATION_FAILED", NT_STATUS_DISK_OPERATION_FAILED },
00396         { "NT_STATUS_DISK_RESET_FAILED", NT_STATUS_DISK_RESET_FAILED },
00397         { "NT_STATUS_SHARED_IRQ_BUSY", NT_STATUS_SHARED_IRQ_BUSY },
00398         { "NT_STATUS_FT_ORPHANING", NT_STATUS_FT_ORPHANING },
00399         { "NT_STATUS_PARTITION_FAILURE", NT_STATUS_PARTITION_FAILURE },
00400         { "NT_STATUS_INVALID_BLOCK_LENGTH", NT_STATUS_INVALID_BLOCK_LENGTH },
00401         { "NT_STATUS_DEVICE_NOT_PARTITIONED", NT_STATUS_DEVICE_NOT_PARTITIONED },
00402         { "NT_STATUS_UNABLE_TO_LOCK_MEDIA", NT_STATUS_UNABLE_TO_LOCK_MEDIA },
00403         { "NT_STATUS_UNABLE_TO_UNLOAD_MEDIA", NT_STATUS_UNABLE_TO_UNLOAD_MEDIA },
00404         { "NT_STATUS_EOM_OVERFLOW", NT_STATUS_EOM_OVERFLOW },
00405         { "NT_STATUS_NO_MEDIA", NT_STATUS_NO_MEDIA },
00406         { "NT_STATUS_NO_SUCH_MEMBER", NT_STATUS_NO_SUCH_MEMBER },
00407         { "NT_STATUS_INVALID_MEMBER", NT_STATUS_INVALID_MEMBER },
00408         { "NT_STATUS_KEY_DELETED", NT_STATUS_KEY_DELETED },
00409         { "NT_STATUS_NO_LOG_SPACE", NT_STATUS_NO_LOG_SPACE },
00410         { "NT_STATUS_TOO_MANY_SIDS", NT_STATUS_TOO_MANY_SIDS },
00411         { "NT_STATUS_LM_CROSS_ENCRYPTION_REQUIRED", NT_STATUS_LM_CROSS_ENCRYPTION_REQUIRED },
00412         { "NT_STATUS_KEY_HAS_CHILDREN", NT_STATUS_KEY_HAS_CHILDREN },
00413         { "NT_STATUS_CHILD_MUST_BE_VOLATILE", NT_STATUS_CHILD_MUST_BE_VOLATILE },
00414         { "NT_STATUS_DEVICE_CONFIGURATION_ERROR", NT_STATUS_DEVICE_CONFIGURATION_ERROR },
00415         { "NT_STATUS_DRIVER_INTERNAL_ERROR", NT_STATUS_DRIVER_INTERNAL_ERROR },
00416         { "NT_STATUS_INVALID_DEVICE_STATE", NT_STATUS_INVALID_DEVICE_STATE },
00417         { "NT_STATUS_IO_DEVICE_ERROR", NT_STATUS_IO_DEVICE_ERROR },
00418         { "NT_STATUS_DEVICE_PROTOCOL_ERROR", NT_STATUS_DEVICE_PROTOCOL_ERROR },
00419         { "NT_STATUS_BACKUP_CONTROLLER", NT_STATUS_BACKUP_CONTROLLER },
00420         { "NT_STATUS_LOG_FILE_FULL", NT_STATUS_LOG_FILE_FULL },
00421         { "NT_STATUS_TOO_LATE", NT_STATUS_TOO_LATE },
00422         { "NT_STATUS_NO_TRUST_LSA_SECRET", NT_STATUS_NO_TRUST_LSA_SECRET },
00423         { "NT_STATUS_NO_TRUST_SAM_ACCOUNT", NT_STATUS_NO_TRUST_SAM_ACCOUNT },
00424         { "NT_STATUS_TRUSTED_DOMAIN_FAILURE", NT_STATUS_TRUSTED_DOMAIN_FAILURE },
00425         { "NT_STATUS_TRUSTED_RELATIONSHIP_FAILURE", NT_STATUS_TRUSTED_RELATIONSHIP_FAILURE },
00426         { "NT_STATUS_EVENTLOG_FILE_CORRUPT", NT_STATUS_EVENTLOG_FILE_CORRUPT },
00427         { "NT_STATUS_EVENTLOG_CANT_START", NT_STATUS_EVENTLOG_CANT_START },
00428         { "NT_STATUS_TRUST_FAILURE", NT_STATUS_TRUST_FAILURE },
00429         { "NT_STATUS_MUTANT_LIMIT_EXCEEDED", NT_STATUS_MUTANT_LIMIT_EXCEEDED },
00430         { "NT_STATUS_NETLOGON_NOT_STARTED", NT_STATUS_NETLOGON_NOT_STARTED },
00431         { "NT_STATUS_ACCOUNT_EXPIRED", NT_STATUS_ACCOUNT_EXPIRED },
00432         { "NT_STATUS_POSSIBLE_DEADLOCK", NT_STATUS_POSSIBLE_DEADLOCK },
00433         { "NT_STATUS_NETWORK_CREDENTIAL_CONFLICT", NT_STATUS_NETWORK_CREDENTIAL_CONFLICT },
00434         { "NT_STATUS_REMOTE_SESSION_LIMIT", NT_STATUS_REMOTE_SESSION_LIMIT },
00435         { "NT_STATUS_EVENTLOG_FILE_CHANGED", NT_STATUS_EVENTLOG_FILE_CHANGED },
00436         { "NT_STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT", NT_STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT },
00437         { "NT_STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT", NT_STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT },
00438         { "NT_STATUS_NOLOGON_SERVER_TRUST_ACCOUNT", NT_STATUS_NOLOGON_SERVER_TRUST_ACCOUNT },
00439         { "NT_STATUS_DOMAIN_TRUST_INCONSISTENT", NT_STATUS_DOMAIN_TRUST_INCONSISTENT },
00440         { "NT_STATUS_FS_DRIVER_REQUIRED", NT_STATUS_FS_DRIVER_REQUIRED },
00441         { "NT_STATUS_NO_USER_SESSION_KEY", NT_STATUS_NO_USER_SESSION_KEY },
00442         { "NT_STATUS_USER_SESSION_DELETED", NT_STATUS_USER_SESSION_DELETED },
00443         { "NT_STATUS_RESOURCE_LANG_NOT_FOUND", NT_STATUS_RESOURCE_LANG_NOT_FOUND },
00444         { "NT_STATUS_INSUFF_SERVER_RESOURCES", NT_STATUS_INSUFF_SERVER_RESOURCES },
00445         { "NT_STATUS_INVALID_BUFFER_SIZE", NT_STATUS_INVALID_BUFFER_SIZE },
00446         { "NT_STATUS_INVALID_ADDRESS_COMPONENT", NT_STATUS_INVALID_ADDRESS_COMPONENT },
00447         { "NT_STATUS_INVALID_ADDRESS_WILDCARD", NT_STATUS_INVALID_ADDRESS_WILDCARD },
00448         { "NT_STATUS_TOO_MANY_ADDRESSES", NT_STATUS_TOO_MANY_ADDRESSES },
00449         { "NT_STATUS_ADDRESS_ALREADY_EXISTS", NT_STATUS_ADDRESS_ALREADY_EXISTS },
00450         { "NT_STATUS_ADDRESS_CLOSED", NT_STATUS_ADDRESS_CLOSED },
00451         { "NT_STATUS_CONNECTION_DISCONNECTED", NT_STATUS_CONNECTION_DISCONNECTED },
00452         { "NT_STATUS_CONNECTION_RESET", NT_STATUS_CONNECTION_RESET },
00453         { "NT_STATUS_TOO_MANY_NODES", NT_STATUS_TOO_MANY_NODES },
00454         { "NT_STATUS_TRANSACTION_ABORTED", NT_STATUS_TRANSACTION_ABORTED },
00455         { "NT_STATUS_TRANSACTION_TIMED_OUT", NT_STATUS_TRANSACTION_TIMED_OUT },
00456         { "NT_STATUS_TRANSACTION_NO_RELEASE", NT_STATUS_TRANSACTION_NO_RELEASE },
00457         { "NT_STATUS_TRANSACTION_NO_MATCH", NT_STATUS_TRANSACTION_NO_MATCH },
00458         { "NT_STATUS_TRANSACTION_RESPONDED", NT_STATUS_TRANSACTION_RESPONDED },
00459         { "NT_STATUS_TRANSACTION_INVALID_ID", NT_STATUS_TRANSACTION_INVALID_ID },
00460         { "NT_STATUS_TRANSACTION_INVALID_TYPE", NT_STATUS_TRANSACTION_INVALID_TYPE },
00461         { "NT_STATUS_NOT_SERVER_SESSION", NT_STATUS_NOT_SERVER_SESSION },
00462         { "NT_STATUS_NOT_CLIENT_SESSION", NT_STATUS_NOT_CLIENT_SESSION },
00463         { "NT_STATUS_CANNOT_LOAD_REGISTRY_FILE", NT_STATUS_CANNOT_LOAD_REGISTRY_FILE },
00464         { "NT_STATUS_DEBUG_ATTACH_FAILED", NT_STATUS_DEBUG_ATTACH_FAILED },
00465         { "NT_STATUS_SYSTEM_PROCESS_TERMINATED", NT_STATUS_SYSTEM_PROCESS_TERMINATED },
00466         { "NT_STATUS_DATA_NOT_ACCEPTED", NT_STATUS_DATA_NOT_ACCEPTED },
00467         { "NT_STATUS_NO_BROWSER_SERVERS_FOUND", NT_STATUS_NO_BROWSER_SERVERS_FOUND },
00468         { "NT_STATUS_VDM_HARD_ERROR", NT_STATUS_VDM_HARD_ERROR },
00469         { "NT_STATUS_DRIVER_CANCEL_TIMEOUT", NT_STATUS_DRIVER_CANCEL_TIMEOUT },
00470         { "NT_STATUS_REPLY_MESSAGE_MISMATCH", NT_STATUS_REPLY_MESSAGE_MISMATCH },
00471         { "NT_STATUS_MAPPED_ALIGNMENT", NT_STATUS_MAPPED_ALIGNMENT },
00472         { "NT_STATUS_IMAGE_CHECKSUM_MISMATCH", NT_STATUS_IMAGE_CHECKSUM_MISMATCH },
00473         { "NT_STATUS_LOST_WRITEBEHIND_DATA", NT_STATUS_LOST_WRITEBEHIND_DATA },
00474         { "NT_STATUS_CLIENT_SERVER_PARAMETERS_INVALID", NT_STATUS_CLIENT_SERVER_PARAMETERS_INVALID },
00475         { "NT_STATUS_PASSWORD_MUST_CHANGE", NT_STATUS_PASSWORD_MUST_CHANGE },
00476         { "NT_STATUS_NOT_FOUND", NT_STATUS_NOT_FOUND },
00477         { "NT_STATUS_NOT_TINY_STREAM", NT_STATUS_NOT_TINY_STREAM },
00478         { "NT_STATUS_RECOVERY_FAILURE", NT_STATUS_RECOVERY_FAILURE },
00479         { "NT_STATUS_STACK_OVERFLOW_READ", NT_STATUS_STACK_OVERFLOW_READ },
00480         { "NT_STATUS_FAIL_CHECK", NT_STATUS_FAIL_CHECK },
00481         { "NT_STATUS_DUPLICATE_OBJECTID", NT_STATUS_DUPLICATE_OBJECTID },
00482         { "NT_STATUS_OBJECTID_EXISTS", NT_STATUS_OBJECTID_EXISTS },
00483         { "NT_STATUS_CONVERT_TO_LARGE", NT_STATUS_CONVERT_TO_LARGE },
00484         { "NT_STATUS_RETRY", NT_STATUS_RETRY },
00485         { "NT_STATUS_FOUND_OUT_OF_SCOPE", NT_STATUS_FOUND_OUT_OF_SCOPE },
00486         { "NT_STATUS_ALLOCATE_BUCKET", NT_STATUS_ALLOCATE_BUCKET },
00487         { "NT_STATUS_PROPSET_NOT_FOUND", NT_STATUS_PROPSET_NOT_FOUND },
00488         { "NT_STATUS_MARSHALL_OVERFLOW", NT_STATUS_MARSHALL_OVERFLOW },
00489         { "NT_STATUS_INVALID_VARIANT", NT_STATUS_INVALID_VARIANT },
00490         { "NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND", NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND },
00491         { "NT_STATUS_ACCOUNT_LOCKED_OUT", NT_STATUS_ACCOUNT_LOCKED_OUT },
00492         { "NT_STATUS_HANDLE_NOT_CLOSABLE", NT_STATUS_HANDLE_NOT_CLOSABLE },
00493         { "NT_STATUS_CONNECTION_REFUSED", NT_STATUS_CONNECTION_REFUSED },
00494         { "NT_STATUS_GRACEFUL_DISCONNECT", NT_STATUS_GRACEFUL_DISCONNECT },
00495         { "NT_STATUS_ADDRESS_ALREADY_ASSOCIATED", NT_STATUS_ADDRESS_ALREADY_ASSOCIATED },
00496         { "NT_STATUS_ADDRESS_NOT_ASSOCIATED", NT_STATUS_ADDRESS_NOT_ASSOCIATED },
00497         { "NT_STATUS_CONNECTION_INVALID", NT_STATUS_CONNECTION_INVALID },
00498         { "NT_STATUS_CONNECTION_ACTIVE", NT_STATUS_CONNECTION_ACTIVE },
00499         { "NT_STATUS_NETWORK_UNREACHABLE", NT_STATUS_NETWORK_UNREACHABLE },
00500         { "NT_STATUS_HOST_UNREACHABLE", NT_STATUS_HOST_UNREACHABLE },
00501         { "NT_STATUS_PROTOCOL_UNREACHABLE", NT_STATUS_PROTOCOL_UNREACHABLE },
00502         { "NT_STATUS_PORT_UNREACHABLE", NT_STATUS_PORT_UNREACHABLE },
00503         { "NT_STATUS_REQUEST_ABORTED", NT_STATUS_REQUEST_ABORTED },
00504         { "NT_STATUS_CONNECTION_ABORTED", NT_STATUS_CONNECTION_ABORTED },
00505         { "NT_STATUS_BAD_COMPRESSION_BUFFER", NT_STATUS_BAD_COMPRESSION_BUFFER },
00506         { "NT_STATUS_USER_MAPPED_FILE", NT_STATUS_USER_MAPPED_FILE },
00507         { "NT_STATUS_AUDIT_FAILED", NT_STATUS_AUDIT_FAILED },
00508         { "NT_STATUS_TIMER_RESOLUTION_NOT_SET", NT_STATUS_TIMER_RESOLUTION_NOT_SET },
00509         { "NT_STATUS_CONNECTION_COUNT_LIMIT", NT_STATUS_CONNECTION_COUNT_LIMIT },
00510         { "NT_STATUS_LOGIN_TIME_RESTRICTION", NT_STATUS_LOGIN_TIME_RESTRICTION },
00511         { "NT_STATUS_LOGIN_WKSTA_RESTRICTION", NT_STATUS_LOGIN_WKSTA_RESTRICTION },
00512         { "NT_STATUS_IMAGE_MP_UP_MISMATCH", NT_STATUS_IMAGE_MP_UP_MISMATCH },
00513         { "NT_STATUS_INSUFFICIENT_LOGON_INFO", NT_STATUS_INSUFFICIENT_LOGON_INFO },
00514         { "NT_STATUS_BAD_DLL_ENTRYPOINT", NT_STATUS_BAD_DLL_ENTRYPOINT },
00515         { "NT_STATUS_BAD_SERVICE_ENTRYPOINT", NT_STATUS_BAD_SERVICE_ENTRYPOINT },
00516         { "NT_STATUS_LPC_REPLY_LOST", NT_STATUS_LPC_REPLY_LOST },
00517         { "NT_STATUS_IP_ADDRESS_CONFLICT1", NT_STATUS_IP_ADDRESS_CONFLICT1 },
00518         { "NT_STATUS_IP_ADDRESS_CONFLICT2", NT_STATUS_IP_ADDRESS_CONFLICT2 },
00519         { "NT_STATUS_REGISTRY_QUOTA_LIMIT", NT_STATUS_REGISTRY_QUOTA_LIMIT },
00520         { "NT_STATUS_PATH_NOT_COVERED", NT_STATUS_PATH_NOT_COVERED },
00521         { "NT_STATUS_NO_CALLBACK_ACTIVE", NT_STATUS_NO_CALLBACK_ACTIVE },
00522         { "NT_STATUS_LICENSE_QUOTA_EXCEEDED", NT_STATUS_LICENSE_QUOTA_EXCEEDED },
00523         { "NT_STATUS_PWD_TOO_SHORT", NT_STATUS_PWD_TOO_SHORT },
00524         { "NT_STATUS_PWD_TOO_RECENT", NT_STATUS_PWD_TOO_RECENT },
00525         { "NT_STATUS_PWD_HISTORY_CONFLICT", NT_STATUS_PWD_HISTORY_CONFLICT },
00526         { "NT_STATUS_PLUGPLAY_NO_DEVICE", NT_STATUS_PLUGPLAY_NO_DEVICE },
00527         { "NT_STATUS_UNSUPPORTED_COMPRESSION", NT_STATUS_UNSUPPORTED_COMPRESSION },
00528         { "NT_STATUS_INVALID_HW_PROFILE", NT_STATUS_INVALID_HW_PROFILE },
00529         { "NT_STATUS_INVALID_PLUGPLAY_DEVICE_PATH", NT_STATUS_INVALID_PLUGPLAY_DEVICE_PATH },
00530         { "NT_STATUS_DRIVER_ORDINAL_NOT_FOUND", NT_STATUS_DRIVER_ORDINAL_NOT_FOUND },
00531         { "NT_STATUS_DRIVER_ENTRYPOINT_NOT_FOUND", NT_STATUS_DRIVER_ENTRYPOINT_NOT_FOUND },
00532         { "NT_STATUS_RESOURCE_NOT_OWNED", NT_STATUS_RESOURCE_NOT_OWNED },
00533         { "NT_STATUS_TOO_MANY_LINKS", NT_STATUS_TOO_MANY_LINKS },
00534         { "NT_STATUS_QUOTA_LIST_INCONSISTENT", NT_STATUS_QUOTA_LIST_INCONSISTENT },
00535         { "NT_STATUS_FILE_IS_OFFLINE", NT_STATUS_FILE_IS_OFFLINE },
00536         { "NT_STATUS_DS_NO_MORE_RIDS", NT_STATUS_DS_NO_MORE_RIDS },
00537         { "NT_STATUS_NOT_A_REPARSE_POINT", NT_STATUS_NOT_A_REPARSE_POINT },
00538         { "NT_STATUS_DOWNGRADE_DETECTED", NT_STATUS_DOWNGRADE_DETECTED },
00539         { "NT_STATUS_NO_MORE_ENTRIES", NT_STATUS_NO_MORE_ENTRIES },
00540         { "STATUS_MORE_ENTRIES", STATUS_MORE_ENTRIES },
00541         { "STATUS_SOME_UNMAPPED", STATUS_SOME_UNMAPPED },
00542         { "STATUS_NO_MORE_FILES", STATUS_NO_MORE_FILES },
00543         { NULL, NT_STATUS(0) }
00544 };
00545 
00546 /* These need sorting..... */
00547 
00548 nt_err_code_struct nt_err_desc[] =
00549 {
00550         { "Success",                            NT_STATUS_OK },
00551         { "Undetermined error",                 NT_STATUS_UNSUCCESSFUL },
00552         { "Access denied",                      NT_STATUS_ACCESS_DENIED },
00553         { "Account locked out",                 NT_STATUS_ACCOUNT_LOCKED_OUT },
00554         { "Must change password",               NT_STATUS_PASSWORD_MUST_CHANGE },
00555         { "Password is too short",              NT_STATUS_PWD_TOO_SHORT },
00556         { "Password is too recent",             NT_STATUS_PWD_TOO_RECENT },
00557         { "Password history conflict",          NT_STATUS_PWD_HISTORY_CONFLICT },
00558         { "No logon servers",                   NT_STATUS_NO_LOGON_SERVERS },
00559         { "Improperly formed account name",     NT_STATUS_INVALID_ACCOUNT_NAME },
00560         { "User exists",                        NT_STATUS_USER_EXISTS },
00561         { "No such user",                       NT_STATUS_NO_SUCH_USER },
00562         { "Group exists",                       NT_STATUS_GROUP_EXISTS },
00563         { "No such group",                      NT_STATUS_NO_SUCH_GROUP },
00564         { "Member not in group",                NT_STATUS_MEMBER_NOT_IN_GROUP },
00565         { "Wrong Password",                     NT_STATUS_WRONG_PASSWORD },
00566         { "Ill formed password",                NT_STATUS_ILL_FORMED_PASSWORD },
00567         { "Password restriction",               NT_STATUS_PASSWORD_RESTRICTION },
00568         { "Logon failure",                      NT_STATUS_LOGON_FAILURE },
00569         { "Account restriction",                NT_STATUS_ACCOUNT_RESTRICTION },
00570         { "Invalid logon hours",                NT_STATUS_INVALID_LOGON_HOURS },
00571         { "Invalid workstation",                NT_STATUS_INVALID_WORKSTATION },
00572         { "Password expired",                   NT_STATUS_PASSWORD_EXPIRED },
00573         { "Account disabled",                   NT_STATUS_ACCOUNT_DISABLED },
00574         { "Memory allocation error",            NT_STATUS_NO_MEMORY },
00575         { "No domain controllers located",      NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND },
00576         { "Named pipe not available",           NT_STATUS_PIPE_NOT_AVAILABLE },
00577         { "Not implemented",                    NT_STATUS_NOT_IMPLEMENTED },
00578         { "Invalid information class",          NT_STATUS_INVALID_INFO_CLASS },
00579         { "Information length mismatch",        NT_STATUS_INFO_LENGTH_MISMATCH },
00580         { "Access violation",                   NT_STATUS_ACCESS_VIOLATION },
00581         { "Invalid handle",                     NT_STATUS_INVALID_HANDLE },
00582         { "Invalid parameter",                  NT_STATUS_INVALID_PARAMETER },
00583         { "No memory",                          NT_STATUS_NO_MEMORY },
00584         { "Buffer too small",                   NT_STATUS_BUFFER_TOO_SMALL },
00585         { "Revision mismatch",                  NT_STATUS_REVISION_MISMATCH },
00586         { "No such logon session",              NT_STATUS_NO_SUCH_LOGON_SESSION },
00587         { "No such privilege",                  NT_STATUS_NO_SUCH_PRIVILEGE },
00588         { "Procedure not found",                NT_STATUS_PROCEDURE_NOT_FOUND },
00589         { "Server disabled",                    NT_STATUS_SERVER_DISABLED },
00590         { "Invalid pipe state",                 NT_STATUS_INVALID_PIPE_STATE },
00591         { "Named pipe busy",                    NT_STATUS_PIPE_BUSY },
00592         { "Illegal function",                   NT_STATUS_ILLEGAL_FUNCTION },
00593         { "Named pipe dicconnected",            NT_STATUS_PIPE_DISCONNECTED },
00594         { "Named pipe closing",                 NT_STATUS_PIPE_CLOSING },
00595         { "Remote host not listening",          NT_STATUS_REMOTE_NOT_LISTENING },
00596         { "Duplicate name on network",          NT_STATUS_DUPLICATE_NAME },
00597         { "Print queue is full",                NT_STATUS_PRINT_QUEUE_FULL },
00598         { "No print spool space available",     NT_STATUS_NO_SPOOL_SPACE },
00599         { "The network name cannot be found",   NT_STATUS_BAD_NETWORK_NAME },
00600         { "The connection was refused",         NT_STATUS_CONNECTION_REFUSED },
00601         { "Too many names",                     NT_STATUS_TOO_MANY_NAMES },
00602         { "Too many sessions",                  NT_STATUS_TOO_MANY_SESSIONS },
00603         { "Invalid server state",               NT_STATUS_INVALID_SERVER_STATE },
00604         { "Invalid domain state",               NT_STATUS_INVALID_DOMAIN_STATE },
00605         { "Invalid domain role",                NT_STATUS_INVALID_DOMAIN_ROLE },
00606         { "No such domain",                     NT_STATUS_NO_SUCH_DOMAIN },
00607         { "Domain exists",                      NT_STATUS_DOMAIN_EXISTS },
00608         { "Domain limit exceeded",              NT_STATUS_DOMAIN_LIMIT_EXCEEDED },
00609         { "Bad logon session state",            NT_STATUS_BAD_LOGON_SESSION_STATE },
00610         { "Logon session collision",            NT_STATUS_LOGON_SESSION_COLLISION },
00611         { "Invalid logon type",                 NT_STATUS_INVALID_LOGON_TYPE },
00612         { "Cancelled",                          NT_STATUS_CANCELLED },
00613         { "Invalid computer name",              NT_STATUS_INVALID_COMPUTER_NAME },      
00614         { "Logon server conflict",              NT_STATUS_LOGON_SERVER_CONFLICT },
00615         { "Time difference at domain controller", NT_STATUS_TIME_DIFFERENCE_AT_DC },
00616         { "Pipe broken",                        NT_STATUS_PIPE_BROKEN },
00617         { "Registry corrupt",                   NT_STATUS_REGISTRY_CORRUPT },
00618         { "Too many secrets",                   NT_STATUS_TOO_MANY_SECRETS },
00619         { "Too many SIDs",                      NT_STATUS_TOO_MANY_SIDS },
00620         { "Lanmanager cross encryption required", NT_STATUS_LM_CROSS_ENCRYPTION_REQUIRED },
00621         { "Log file full",                      NT_STATUS_LOG_FILE_FULL },
00622         { "No trusted LSA secret",              NT_STATUS_NO_TRUST_LSA_SECRET },
00623         { "No trusted SAM account",             NT_STATUS_NO_TRUST_SAM_ACCOUNT },
00624         { "Trusted domain failure",             NT_STATUS_TRUSTED_DOMAIN_FAILURE },
00625         { "Trust relationship failure",         NT_STATUS_TRUSTED_RELATIONSHIP_FAILURE },
00626         { "Trust failure",                      NT_STATUS_TRUST_FAILURE },
00627         { "Netlogon service not started",       NT_STATUS_NETLOGON_NOT_STARTED },
00628         { "Account expired",                    NT_STATUS_ACCOUNT_EXPIRED },
00629         { "Network credential conflict",        NT_STATUS_NETWORK_CREDENTIAL_CONFLICT },
00630         { "Remote session limit",               NT_STATUS_REMOTE_SESSION_LIMIT },
00631         { "No logon interdomain trust account", NT_STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT },
00632         { "No logon workstation trust account", NT_STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT },
00633         { "No logon server trust account",      NT_STATUS_NOLOGON_SERVER_TRUST_ACCOUNT },
00634         { "Domain trust inconsistent",          NT_STATUS_DOMAIN_TRUST_INCONSISTENT },
00635         { "No user session key available",      NT_STATUS_NO_USER_SESSION_KEY },
00636         { "User session deleted",               NT_STATUS_USER_SESSION_DELETED },
00637         { "Insufficient server resources",      NT_STATUS_INSUFF_SERVER_RESOURCES },
00638         { "Insufficient logon information",     NT_STATUS_INSUFFICIENT_LOGON_INFO },
00639         
00640         { "License quota exceeded",             NT_STATUS_LICENSE_QUOTA_EXCEEDED },
00641         { "No more files",                      STATUS_NO_MORE_FILES },
00642 
00643         { NULL, NT_STATUS(0) }
00644 };
00645 
00646 /*****************************************************************************
00647  Returns an NT error message.  not amazingly helpful, but better than a number.
00648  *****************************************************************************/
00649 
00650 const char *nt_errstr(NTSTATUS nt_code)
00651 {
00652         static pstring msg;
00653         int idx = 0;
00654 
00655 #ifdef HAVE_LDAP
00656         if (NT_STATUS_TYPE(nt_code) == NT_STATUS_TYPE_LDAP) {
00657                 return ldap_err2string(NT_STATUS_LDAP_CODE(nt_code));
00658         }
00659 #endif
00660 
00661         slprintf(msg, sizeof(msg), "NT code 0x%08x", NT_STATUS_V(nt_code));
00662 
00663         while (nt_errs[idx].nt_errstr != NULL) {
00664                 if (NT_STATUS_EQUAL(nt_errs[idx].nt_errcode, nt_code)) {
00665                         return nt_errs[idx].nt_errstr;
00666                 }
00667                 idx++;
00668         }
00669 
00670         return msg;
00671 }
00672 
00673 /************************************************************************
00674  Print friendler version fo NT error code
00675  ***********************************************************************/
00676  
00677 const char *get_friendly_nt_error_msg(NTSTATUS nt_code)
00678 {
00679         int idx = 0;
00680 
00681         while (nt_err_desc[idx].nt_errstr != NULL) {
00682                 if (NT_STATUS_V(nt_err_desc[idx].nt_errcode) == NT_STATUS_V(nt_code)) {
00683                         return nt_err_desc[idx].nt_errstr;
00684                 }
00685                 idx++;
00686         }
00687         
00688         /* fall back to NT_STATUS_XXX string */
00689         
00690         return nt_errstr(nt_code);
00691 }
00692 
00693 /*****************************************************************************
00694  Returns an NT_STATUS constant as a string for inclusion in autogen C code.
00695  *****************************************************************************/
00696 
00697 const char *get_nt_error_c_code(NTSTATUS nt_code)
00698 {
00699         static pstring out;
00700         int idx = 0;
00701 
00702         while (nt_errs[idx].nt_errstr != NULL) {
00703                 if (NT_STATUS_V(nt_errs[idx].nt_errcode) == 
00704                     NT_STATUS_V(nt_code)) {
00705                         return nt_errs[idx].nt_errstr;
00706                 }
00707                 idx++;
00708         }
00709 
00710         slprintf(out, sizeof(out), "NT_STATUS(0x%08x)", NT_STATUS_V(nt_code));
00711 
00712         return out;
00713 }
00714 
00715 /*****************************************************************************
00716  Returns the NT_STATUS constant matching the string supplied (as an NTSTATUS)
00717  *****************************************************************************/
00718 
00719 NTSTATUS nt_status_string_to_code(char *nt_status_str)
00720 {
00721         int idx = 0;
00722 
00723         while (nt_errs[idx].nt_errstr != NULL) {
00724                 if (strcmp(nt_errs[idx].nt_errstr, nt_status_str) == 0) {
00725                         return nt_errs[idx].nt_errcode;
00726                 }
00727                 idx++;
00728         }
00729         return NT_STATUS_UNSUCCESSFUL;
00730 }
00731 
00732 /**
00733  * Squash an NT_STATUS in line with security requirements.
00734  * In an attempt to avoid giving the whole game away when users
00735  * are authenticating, NT replaces both NT_STATUS_NO_SUCH_USER and 
00736  * NT_STATUS_WRONG_PASSWORD with NT_STATUS_LOGON_FAILURE in certain situations 
00737  * (session setups in particular).
00738  *
00739  * @param nt_status NTSTATUS input for squashing.
00740  * @return the 'squashed' nt_status
00741  **/
00742 
00743 NTSTATUS nt_status_squash(NTSTATUS nt_status)
00744 {
00745         if NT_STATUS_IS_OK(nt_status) {
00746                 return nt_status;               
00747         } else if NT_STATUS_EQUAL(nt_status, NT_STATUS_NO_SUCH_USER) {
00748                 /* Match WinXP and don't give the game away */
00749                 return NT_STATUS_LOGON_FAILURE;
00750                 
00751         } else if NT_STATUS_EQUAL(nt_status, NT_STATUS_WRONG_PASSWORD) {
00752                 /* Match WinXP and don't give the game away */
00753                 return NT_STATUS_LOGON_FAILURE;
00754         } else {
00755                 return nt_status;
00756         }  
00757 }

Sambaに対してSat Aug 29 21:23:05 2009に生成されました。  doxygen 1.4.7