All pastes #440197 Raw Edit

Untitled

public c v1 · immutable
·published 2007-04-14 21:13 UTC
rendered paste body
/****error.h - DOS error codes**   Copyright (c) 1987-1999, 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.*****//*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 *//* */#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