diff options
author | Adam <you@example.com> | 2020-05-17 05:51:50 +0200 |
---|---|---|
committer | Adam <you@example.com> | 2020-05-17 05:51:50 +0200 |
commit | e611b132f9b8abe35b362e5870b74bce94a1e58e (patch) | |
tree | a5781d2ec0e085eeca33cf350cf878f2efea6fe5 /private/crt32/h/error.h | |
download | NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2 NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip |
Diffstat (limited to 'private/crt32/h/error.h')
-rw-r--r-- | private/crt32/h/error.h | 383 |
1 files changed, 383 insertions, 0 deletions
diff --git a/private/crt32/h/error.h b/private/crt32/h/error.h new file mode 100644 index 000000000..174690a10 --- /dev/null +++ b/private/crt32/h/error.h @@ -0,0 +1,383 @@ +/*** +*error.h - DOS error codes +* +* Copyright (c) 1987-1990, Microsoft Corporation. All rights reserved. +* +*Purpose: +* DOS calls all return error codes through AX. If an error occurred then +* the carry bit will be set and the error code is in AX. If no error occurred +* then the carry bit is reset and AX contains returned info. +* +* Since the set of error codes is being extended as we extend the operating +* system, we have provided a means for applications to ask the system for a +* recommended course of action when they receive an error. +* +* The GetExtendedError system call returns a universal error, an error +* location and a recommended course of action. The universal error code is +* a symptom of the error REGARDLESS of the context in which GetExtendedError +* is issued. +* +*Revision History: +* 10-25-87 SKS Updated from final OS/2 v1.0 sources as of 10-25-87 +* 06-06-89 PHG Added network related errors from error.inc +* 08-03-89 GJF Fixed copyright +* 10-30-89 GJF Fixed copyright (again) +* 02-28-90 GJF Added #ifndef _INC_ERROR stuff +* +*******************************************************************************/ + +#ifndef _INC_ERROR + +/*static char *SCCSID = "@(#)error.h 7.25 87/07/23";*/ +/* XENIX calls all return error codes through AX. If an error occurred then */ +/* the carry bit will be set and the error code is in AX. If no error occurred */ +/* then the carry bit is reset and AX contains returned info. */ +/* */ +/* Since the set of error codes is being extended as we extend the operating */ +/* system, we have provided a means for applications to ask the system for a */ +/* recommended course of action when they receive an error. */ +/* */ +/* The GetExtendedError system call returns a universal error, an error */ +/* location and a recommended course of action. The universal error code is */ +/* a symptom of the error REGARDLESS of the context in which GetExtendedError */ +/* is issued. */ +/* */ +/* */ +/* These are the 2.0 error codes */ +/* */ +#define NO_ERROR 0 +#define ERROR_INVALID_FUNCTION 1 +#define ERROR_FILE_NOT_FOUND 2 +#define ERROR_PATH_NOT_FOUND 3 +#define ERROR_TOO_MANY_OPEN_FILES 4 +#define ERROR_ACCESS_DENIED 5 +#define ERROR_INVALID_HANDLE 6 +#define ERROR_ARENA_TRASHED 7 +#define ERROR_NOT_ENOUGH_MEMORY 8 +#define ERROR_INVALID_BLOCK 9 +#define ERROR_BAD_ENVIRONMENT 10 +#define ERROR_BAD_FORMAT 11 +#define ERROR_INVALID_ACCESS 12 +#define ERROR_INVALID_DATA 13 +/* **** reserved 14 ; ***** */ +#define ERROR_INVALID_DRIVE 15 +#define ERROR_CURRENT_DIRECTORY 16 +#define ERROR_NOT_SAME_DEVICE 17 +#define ERROR_NO_MORE_FILES 18 +/* */ +/* These are the universal int 24 mappings for the old INT 24 set of errors */ +/* */ +#define ERROR_WRITE_PROTECT 19 +#define ERROR_BAD_UNIT 20 +#define ERROR_NOT_READY 21 +#define ERROR_BAD_COMMAND 22 +#define ERROR_CRC 23 +#define ERROR_BAD_LENGTH 24 +#define ERROR_SEEK 25 +#define ERROR_NOT_DOS_DISK 26 +#define ERROR_SECTOR_NOT_FOUND 27 +#define ERROR_OUT_OF_PAPER 28 +#define ERROR_WRITE_FAULT 29 +#define ERROR_READ_FAULT 30 +#define ERROR_GEN_FAILURE 31 +/* */ +/* These are the new 3.0 error codes reported through INT 24 */ +/* */ +#define ERROR_SHARING_VIOLATION 32 +#define ERROR_LOCK_VIOLATION 33 +#define ERROR_WRONG_DISK 34 +#define ERROR_FCB_UNAVAILABLE 35 +#define ERROR_SHARING_BUFFER_EXCEEDED 36 +/* */ +/* New OEM network-related errors are 50-79 */ +/* */ +#define ERROR_NOT_SUPPORTED 50 +/* */ +/* End of INT 24 reportable errors */ +/* */ + +/* Network related errors */ +#define ERROR_NOT_SUPPORTED 50 /* Network request not supported */ +#define ERROR_REM_NOT_LIST 51 /* Remote computer not listening */ +#define ERROR_DUP_NAME 52 /* Duplicate name on network */ +#define ERROR_BAD_NETPATH 53 /* Network path not found */ +#define ERROR_NETWORK_BUSY 54 /* Network busy */ +#define ERROR_DEV_NOT_EXIST 55 /* Network device no longer exists */ +#define ERROR_TOO_MANY_CMDS 56 /* Net BIOS command limit exceeded */ +#define ERROR_ADAP_HDW_ERR 57 /* Network adapter hardware error */ +#define ERROR_BAD_NET_RESP 58 /* Incorrect response from network */ +#define ERROR_UNEXP_NET_ERR 59 /* Unexpected network error */ +#define ERROR_BAD_REM_ADAP 60 /* Incompatible remote adapter */ +#define ERROR_PRINTQ_FULL 61 /* Print queue full */ +#define ERROR_NO_SPOOL_SPACE 62 /* Not enough space for print file */ +#define ERROR_PRINT_CANCELLED 63 /* Print file was cancelled */ +#define ERROR_NETNAME_DELETED 64 /* Network name was deleted */ +#define ERROR_NETWORK_ACCESS_DENIED 65 /* Access denied */ +#define ERROR_BAD_DEV_TYPE 66 /* Network device type incorrect */ +#define ERROR_BAD_NET_NAME 67 /* Network name not found */ +#define ERROR_TOO_MANY_NAMES 68 /* Network name limit exceeded */ +#define ERROR_TOO_MANY_SESS 69 /* Net BIOS session limit exceeded */ +#define ERROR_SHARING_PAUSED 70 /* Sharing temporarily paused */ +#define ERROR_REQ_NOT_ACCEP 71 /* Network request not accepted */ +#define ERROR_REDIR_PAUSED 72 /* Print or disk redirection is paused */ + +#define ERROR_FILE_EXISTS 80 +#define ERROR_DUP_FCB 81 /* ***** */ +#define ERROR_CANNOT_MAKE 82 +#define ERROR_FAIL_I24 83 +/* */ +/* New 3.0 network related error codes */ +/* */ +#define ERROR_OUT_OF_STRUCTURES 84 +#define ERROR_ALREADY_ASSIGNED 85 +#define ERROR_INVALID_PASSWORD 86 +#define ERROR_INVALID_PARAMETER 87 +#define ERROR_NET_WRITE_FAULT 88 +/* */ +/* New error codes for 4.0 */ +/* */ +#define ERROR_NO_PROC_SLOTS 89 /* no process slots available */ +#define ERROR_NOT_FROZEN 90 +#define ERR_TSTOVFL 91 /* timer service table overflow */ +#define ERR_TSTDUP 92 /* timer service table duplicate */ +#define ERROR_NO_ITEMS 93 /* There were no items to operate upon */ +#define ERROR_INTERRUPT 95 /* interrupted system call */ + +#define ERROR_TOO_MANY_SEMAPHORES 100 +#define ERROR_EXCL_SEM_ALREADY_OWNED 101 +#define ERROR_SEM_IS_SET 102 +#define ERROR_TOO_MANY_SEM_REQUESTS 103 +#define ERROR_INVALID_AT_INTERRUPT_TIME 104 + +#define ERROR_SEM_OWNER_DIED 105 /* waitsem found owner died */ +#define ERROR_SEM_USER_LIMIT 106 /* too many procs have this sem */ +#define ERROR_DISK_CHANGE 107 /* insert disk b into drive a */ +#define ERROR_DRIVE_LOCKED 108 /* drive locked by another process */ +#define ERROR_BROKEN_PIPE 109 /* write on pipe with no reader */ +/* */ +/* New error codes for OS/2 */ +/* */ +#define ERROR_OPEN_FAILED 110 /* open/created failed due to */ + /* explicit fail command */ +#define ERROR_BUFFER_OVERFLOW 111 /* buffer passed to system call */ + /* is too small to hold return */ + /* data. */ +#define ERROR_DISK_FULL 112 /* not enough space on the disk */ + /* (DOSNEWSIZE/w_NewSize) */ +#define ERROR_NO_MORE_SEARCH_HANDLES 113 /* can't allocate another search */ + /* structure and handle. */ + /* (DOSFINDFIRST/w_FindFirst) */ +#define ERROR_INVALID_TARGET_HANDLE 114 /* Target handle in DOSDUPHANDLE */ + /* is invalid */ +#define ERROR_PROTECTION_VIOLATION 115 /* Bad user virtual address */ +#define ERROR_VIOKBD_REQUEST 116 +#define ERROR_INVALID_CATEGORY 117 /* Category for DEVIOCTL in not */ + /* defined */ +#define ERROR_INVALID_VERIFY_SWITCH 118 /* invalid value passed for */ + /* verify flag */ +#define ERROR_BAD_DRIVER_LEVEL 119 /* DosDevIOCTL looks for a level */ + /* four driver. If the driver */ + /* is not level four we return */ + /* this code */ +#define ERROR_CALL_NOT_IMPLEMENTED 120 /* returned from stub api calls. */ + /* This call will disappear when */ + /* all the api's are implemented. */ +#define ERROR_SEM_TIMEOUT 121 /* Time out happened from the */ + /* semaphore api functions. */ +#define ERROR_INSUFFICIENT_BUFFER 122 /* Some call require the */ + /* application to pass in a buffer */ + /* filled with data. This error is */ + /* returned if the data buffer is too */ + /* small. For example: DosSetFileInfo */ + /* requires 4 bytes of data. If a */ + /* two byte buffer is passed in then */ + /* this error is returned. */ + /* error_buffer_overflow is used when */ + /* the output buffer in not big enough. */ +#define ERROR_INVALID_NAME 123 /* illegal character or malformed */ + /* file system name */ +#define ERROR_INVALID_LEVEL 124 /* unimplemented level for info */ + /* retrieval or setting */ +#define ERROR_NO_VOLUME_LABEL 125 /* no volume label found with */ + /* DosQFSInfo command */ +#define ERROR_MOD_NOT_FOUND 126 /* w_getprocaddr,w_getmodhandle */ +#define ERROR_PROC_NOT_FOUND 127 /* w_getprocaddr */ + +#define ERROR_WAIT_NO_CHILDREN 128 /* CWait finds to children */ + +#define ERROR_CHILD_NOT_COMPLETE 129 /* CWait children not dead yet */ + +/*This is a temporary fix for the 4-19-86 build this should be changed when */ +/* we get the file from MS */ +#define ERROR_DIRECT_ACCESS_HANDLE 130 /* handle operation is invalid */ + /* for direct disk access */ + /* handles */ +#define ERROR_NEGATIVE_SEEK 131 /* application tried to seek */ + /* with negative offset */ +#define ERROR_SEEK_ON_DEVICE 132 /* application tried to seek */ + /* on device or pipe */ +/* */ +/* The following are errors generated by the join and subst workers */ +/* */ +#define ERROR_IS_JOIN_TARGET 133 +#define ERROR_IS_JOINED 134 +#define ERROR_IS_SUBSTED 135 +#define ERROR_NOT_JOINED 136 +#define ERROR_NOT_SUBSTED 137 +#define ERROR_JOIN_TO_JOIN 138 +#define ERROR_SUBST_TO_SUBST 139 +#define ERROR_JOIN_TO_SUBST 140 +#define ERROR_SUBST_TO_JOIN 141 +#define ERROR_BUSY_DRIVE 142 +#define ERROR_SAME_DRIVE 143 +#define ERROR_DIR_NOT_ROOT 144 +#define ERROR_DIR_NOT_EMPTY 145 +#define ERROR_IS_SUBST_PATH 146 +#define ERROR_IS_JOIN_PATH 147 +#define ERROR_PATH_BUSY 148 +#define ERROR_IS_SUBST_TARGET 149 +#define ERROR_SYSTEM_TRACE 150 /* system trace error */ +#define ERROR_INVALID_EVENT_COUNT 151 /* DosMuxSemWait errors */ +#define ERROR_TOO_MANY_MUXWAITERS 152 +#define ERROR_INVALID_LIST_FORMAT 153 +#define ERROR_LABEL_TOO_LONG 154 +#define ERROR_TOO_MANY_TCBS 155 +#define ERROR_SIGNAL_REFUSED 156 +#define ERROR_DISCARDED 157 +#define ERROR_NOT_LOCKED 158 +#define ERROR_BAD_THREADID_ADDR 159 +#define ERROR_BAD_ARGUMENTS 160 +#define ERROR_BAD_PATHNAME 161 +#define ERROR_SIGNAL_PENDING 162 +#define ERROR_UNCERTAIN_MEDIA 163 +#define ERROR_MAX_THRDS_REACHED 164 +#define ERROR_MONITORS_NOT_SUPPORTED 165 + +#define ERROR_INVALID_SEGMENT_NUMBER 180 +#define ERROR_INVALID_CALLGATE 181 +#define ERROR_INVALID_ORDINAL 182 +#define ERROR_ALREADY_EXISTS 183 +#define ERROR_NO_CHILD_PROCESS 184 +#define ERROR_CHILD_ALIVE_NOWAIT 185 +#define ERROR_INVALID_FLAG_NUMBER 186 +#define ERROR_SEM_NOT_FOUND 187 + +/* following error codes have added to make the loader error + messages distinct +*/ + +#define ERROR_INVALID_STARTING_CODESEG 188 +#define ERROR_INVALID_STACKSEG 189 +#define ERROR_INVALID_MODULETYPE 190 +#define ERROR_INVALID_EXE_SIGNATURE 191 +#define ERROR_EXE_MARKED_INVALID 192 +#define ERROR_BAD_EXE_FORMAT 193 +#define ERROR_ITERATED_DATA_EXCEEDS_64k 194 +#define ERROR_INVALID_MINALLOCSIZE 195 +#define ERROR_DYNLINK_FROM_INVALID_RING 196 +#define ERROR_IOPL_NOT_ENABLED 197 +#define ERROR_INVALID_SEGDPL 198 +#define ERROR_AUTODATASEG_EXCEEDS_64k 199 +#define ERROR_RING2SEG_MUST_BE_MOVABLE 200 +#define ERROR_RELOC_CHAIN_XEEDS_SEGLIM 201 +#define ERROR_INFLOOP_IN_RELOC_CHAIN 202 + +#define ERROR_ENVVAR_NOT_FOUND 203 +#define ERROR_NOT_CURRENT_CTRY 204 +#define ERROR_NO_SIGNAL_SENT 205 +#define ERROR_FILENAME_EXCED_RANGE 206 /* if filename > 8.3 */ +#define ERROR_RING2_STACK_IN_USE 207 /* for FAPI */ +#define ERROR_META_EXPANSION_TOO_LONG 208 /* if "*a" > 8.3 */ + +#define ERROR_INVALID_SIGNAL_NUMBER 209 +#define ERROR_THREAD_1_INACTIVE 210 +#define ERROR_INFO_NOT_AVAIL 211 /*@@ PTM 5550 */ +#define ERROR_LOCKED 212 +#define ERROR_BAD_DYNALINK 213 /*@@ PTM 5760 */ +#define ERROR_TOO_MANY_MODULES 214 +#define ERROR_NESTING_NOT_ALLOWED 215 + +/* + * Error codes 230 - 249 are reserved for MS Networks + */ + +#define ERROR_USER_DEFINED_BASE 0xF000 + +#define ERROR_I24_WRITE_PROTECT 0 +#define ERROR_I24_BAD_UNIT 1 +#define ERROR_I24_NOT_READY 2 +#define ERROR_I24_BAD_COMMAND 3 +#define ERROR_I24_CRC 4 +#define ERROR_I24_BAD_LENGTH 5 +#define ERROR_I24_SEEK 6 +#define ERROR_I24_NOT_DOS_DISK 7 +#define ERROR_I24_SECTOR_NOT_FOUND 8 +#define ERROR_I24_OUT_OF_PAPER 9 +#define ERROR_I24_WRITE_FAULT 0x0A +#define ERROR_I24_READ_FAULT 0x0B +#define ERROR_I24_GEN_FAILURE 0x0C +#define ERROR_I24_DISK_CHANGE 0x0D +#define ERROR_I24_WRONG_DISK 0x0F +#define ERROR_I24_UNCERTAIN_MEDIA 0x10 +#define ERROR_I24_CHAR_CALL_INTERRUPTED 0x11 +#define ERROR_I24_NO_MONITOR_SUPPORT 0x12 +#define ERROR_I24_INVALID_PARAMETER 0x13 + +#define ALLOWED_FAIL 0x0001 +#define ALLOWED_ABORT 0x0002 +#define ALLOWED_RETRY 0x0004 +#define ALLOWED_IGNORE 0x0008 + +#define I24_OPERATION 0x1 +#define I24_AREA 0x6 + /* 01 if FAT */ + /* 10 if root DIR */ + /* 11 if DATA */ +#define I24_CLASS 0x80 + + +/* Values for error CLASS */ + +#define ERRCLASS_OUTRES 1 /* Out of Resource */ +#define ERRCLASS_TEMPSIT 2 /* Temporary Situation */ +#define ERRCLASS_AUTH 3 /* Permission problem */ +#define ERRCLASS_INTRN 4 /* Internal System Error */ +#define ERRCLASS_HRDFAIL 5 /* Hardware Failure */ +#define ERRCLASS_SYSFAIL 6 /* System Failure */ +#define ERRCLASS_APPERR 7 /* Application Error */ +#define ERRCLASS_NOTFND 8 /* Not Found */ +#define ERRCLASS_BADFMT 9 /* Bad Format */ +#define ERRCLASS_LOCKED 10 /* Locked */ +#define ERRCLASS_MEDIA 11 /* Media Failure */ +#define ERRCLASS_ALREADY 12 /* Collision with Existing Item */ +#define ERRCLASS_UNK 13 /* Unknown/other */ +#define ERRCLASS_CANT 14 +#define ERRCLASS_TIME 15 + +/* Values for error ACTION */ + +#define ERRACT_RETRY 1 /* Retry */ +#define ERRACT_DLYRET 2 /* Delay Retry, retry after pause */ +#define ERRACT_USER 3 /* Ask user to regive info */ +#define ERRACT_ABORT 4 /* abort with clean up */ +#define ERRACT_PANIC 5 /* abort immediately */ +#define ERRACT_IGNORE 6 /* ignore */ +#define ERRACT_INTRET 7 /* Retry after User Intervention */ + +/* Values for error LOCUS */ + +#define ERRLOC_UNK 1 /* No appropriate value */ +#define ERRLOC_DISK 2 /* Random Access Mass Storage */ +#define ERRLOC_NET 3 /* Network */ +#define ERRLOC_SERDEV 4 /* Serial Device */ +#define ERRLOC_MEM 5 /* Memory */ + +/* Abnormal termination codes */ + +#define TC_NORMAL 0 +#define TC_HARDERR 1 +#define TC_GP_TRAP 2 +#define TC_SIGNAL 3 + +#define _INC_ERROR +#endif /* _INC_ERROR */ |