root/source4/libcli/util/nterr.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. nt_errstr
  2. get_friendly_nt_error_msg
  3. get_nt_error_c_code
  4. nt_status_string_to_code

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

/* [<][>][^][v][top][bottom][index][help] */