summaryrefslogtreecommitdiff
path: root/v4.0/src/H/ERROR.H
diff options
context:
space:
mode:
Diffstat (limited to 'v4.0/src/H/ERROR.H')
-rw-r--r--v4.0/src/H/ERROR.H294
1 files changed, 294 insertions, 0 deletions
diff --git a/v4.0/src/H/ERROR.H b/v4.0/src/H/ERROR.H
new file mode 100644
index 0000000..cc51e09
--- /dev/null
+++ b/v4.0/src/H/ERROR.H
@@ -0,0 +1,294 @@
1/*static char *SCCSID = "@(#)error.h 7.11 86/09/29";*/
2/* XENIX calls all return error codes through AX. If an error occurred then */
3/* the carry bit will be set and the error code is in AX. If no error occurred */
4/* then the carry bit is reset and AX contains returned info. */
5/* */
6/* Since the set of error codes is being extended as we extend the operating */
7/* system, we have provided a means for applications to ask the system for a */
8/* recommended course of action when they receive an error. */
9/* */
10/* The GetExtendedError system call returns a universal error, an error */
11/* location and a recommended course of action. The universal error code is */
12/* a symptom of the error REGARDLESS of the context in which GetExtendedError */
13/* is issued. */
14/* */
15
16/* */
17/* These are the 2.0 error codes */
18/* */
19#define NO_ERROR 0
20#define ERROR_INVALID_FUNCTION 1
21#define ERROR_FILE_NOT_FOUND 2
22#define ERROR_PATH_NOT_FOUND 3
23#define ERROR_TOO_MANY_OPEN_FILES 4
24#define ERROR_ACCESS_DENIED 5
25#define ERROR_INVALID_HANDLE 6
26#define ERROR_ARENA_TRASHED 7
27#define ERROR_NOT_ENOUGH_MEMORY 8
28#define ERROR_INVALID_BLOCK 9
29#define ERROR_BAD_ENVIRONMENT 10
30#define ERROR_BAD_FORMAT 11
31#define ERROR_INVALID_ACCESS 12
32#define ERROR_INVALID_DATA 13
33/***** reserved EQU 14 ; ***** */
34#define ERROR_INVALID_DRIVE 15
35#define ERROR_CURRENT_DIRECTORY 16
36#define ERROR_NOT_SAME_DEVICE 17
37#define ERROR_NO_MORE_FILES 18
38/* */
39/* These are the universal int 24 mappings for the old INT 24 set of errors */
40/* */
41#define ERROR_WRITE_PROTECT 19
42#define ERROR_BAD_UNIT 20
43#define ERROR_NOT_READY 21
44#define ERROR_BAD_COMMAND 22
45#define ERROR_CRC 23
46#define ERROR_BAD_LENGTH 24
47#define ERROR_SEEK 25
48#define ERROR_NOT_DOS_DISK 26
49#define ERROR_SECTOR_NOT_FOUND 27
50#define ERROR_OUT_OF_PAPER 28
51#define ERROR_WRITE_FAULT 29
52#define ERROR_READ_FAULT 30
53#define ERROR_GEN_FAILURE 31
54/* */
55/* These are the new 3.0 error codes reported through INT 24 */
56/* */
57#define ERROR_SHARING_VIOLATION 32
58#define ERROR_LOCK_VIOLATION 33
59#define ERROR_WRONG_DISK 34
60#define ERROR_FCB_UNAVAILABLE 35
61#define ERROR_SHARING_BUFFER_EXCEEDED 36
62/* */
63/* New OEM network-related errors are 50-79 */
64/* */
65#define ERROR_NOT_SUPPORTED 50
66/* */
67/* End of INT 24 reportable errors */
68/* */
69#define ERROR_FILE_EXISTS 80
70#define ERROR_DUP_FCB 81 /* ***** */
71#define ERROR_CANNOT_MAKE 82
72#define ERROR_FAIL_I24 83
73/* */
74/* New 3.0 network related error codes */
75/* */
76#define ERROR_OUT_OF_STRUCTURES 84
77#define ERROR_ALREADY_ASSIGNED 85
78#define ERROR_INVALID_PASSWORD 86
79#define ERROR_INVALID_PARAMETER 87
80#define ERROR_NET_WRITE_FAULT 88
81/* */
82/* New error codes for 4.0 */
83/* */
84#define ERROR_NO_PROC_SLOTS 89 /* no process slots available */
85#define ERROR_NOT_FROZEN 90
86#define ERR_TSTOVFL 91 /* timer service table overflow */
87#define ERR_TSTDUP 92 /* timer service table duplicate */
88#define ERROR_NO_ITEMS 93 /* There were no items to operate upon */
89#define ERROR_INTERRUPT 95 /* interrupted system call */
90
91#define ERROR_TOO_MANY_SEMAPHORES 100
92#define ERROR_EXCL_SEM_ALREADY_OWNED 101
93#define ERROR_SEM_IS_SET 102
94#define ERROR_TOO_MANY_SEM_REQUESTS 103
95#define ERROR_INVALID_AT_INTERRUPT_TIME 104
96
97#define ERROR_SEM_OWNER_DIED 105 /* waitsem found owner died */
98#define ERROR_SEM_USER_LIMIT 106 /* too many procs have this sem */
99#define ERROR_DISK_CHANGE 107 /* insert disk b into drive a */
100#define ERROR_DRIVE_LOCKED 108 /* drive locked by another process */
101#define ERROR_BROKEN_PIPE 109 /* write on pipe with no reader */
102/* */
103/* New error codes for 5.0 */
104/* */
105#define ERROR_OPEN_FAILED 110 /* open/created failed due to */
106 /* explicit fail command */
107#define ERROR_BUFFER_OVERFLOW 111 /* buffer passed to system call */
108 /* is too small to hold return */
109 /* data. */
110#define ERROR_DISK_FULL 112 /* not enough space on the disk */
111 /* (DOSNEWSIZE/w_NewSize) */
112#define ERROR_NO_MORE_SEARCH_HANDLES 113 /* can't allocate another search */
113 /* structure and handle. */
114 /* (DOSFINDFIRST/w_FindFirst) */
115#define ERROR_INVALID_TARGET_HANDLE 114 /* Target handle in DOSDUPHANDLE */
116 /* is invalid */
117#define ERROR_PROTECTION_VIOLATION 115 /* Bad user virtual address */
118#define ERROR_VIOKBD_REQUEST 116
119#define ERROR_INVALID_CATEGORY 117 /* Category for DEVIOCTL in not */
120 /* defined */
121#define ERROR_INVALID_VERIFY_SWITCH 118 /* invalid value passed for */
122 /* verify flag */
123#define ERROR_BAD_DRIVER_LEVEL 119 /* DosDevIOCTL looks for a level */
124 /* four driver. If the driver */
125 /* is not level four we return */
126 /* this code */
127#define ERROR_CALL_NOT_IMPLEMENTED 120 /* returned from stub api calls. */
128 /* This call will disappear when */
129 /* all the api's are implemented. */
130#define ERROR_SEM_TIMEOUT 121 /* Time out happened from the */
131 /* semaphore api functions. */
132#define ERROR_INSUFFICIENT_BUFFER 122 /* Some call require the */
133 /* application to pass in a buffer */
134 /* filled with data. This error is */
135 /* returned if the data buffer is too */
136 /* small. For example: DosSetFileInfo */
137 /* requires 4 bytes of data. If a */
138 /* two byte buffer is passed in then */
139 /* this error is returned. */
140 /* error_buffer_overflow is used when */
141 /* the output buffer in not big enough. */
142#define ERROR_INVALID_NAME 123 /* illegal character or malformed */
143 /* file system name */
144#define ERROR_INVALID_LEVEL 124 /* unimplemented level for info */
145 /* retrieval or setting */
146#define ERROR_NO_VOLUME_LABEL 125 /* no volume label found with */
147 /* DosQFSInfo command */
148#define ERROR_MOD_NOT_FOUND 126 /* w_getprocaddr,w_getmodhandle */
149#define ERROR_PROC_NOT_FOUND 127 /* w_getprocaddr */
150
151#define ERROR_WAIT_NO_CHILDREN 128 /* CWait finds to children */
152
153#define ERROR_CHILD_NOT_COMPLETE 129 /* CWait children not dead yet */
154
155#define ERROR_DIRECT_ACCESS_HANDLE 130 /* handle operation is invalid */
156 /* for direct disk access */
157 /* handles */
158#define ERROR_NEGATIVE_SEEK 131 /* application tried to seek */
159 /* with negitive offset */
160#define ERROR_SEEK_ON_DEVICE 132 /* application tried to seek */
161 /* on device or pipe */
162/* */
163/* The following are errors generated by the join and subst workers */
164/* */
165#define ERROR_IS_JOIN_TARGET 133
166#define ERROR_IS_JOINED 134
167#define ERROR_IS_SUBSTED 135
168#define ERROR_NOT_JOINED 136
169#define ERROR_NOT_SUBSTED 137
170#define ERROR_JOIN_TO_JOIN 138
171#define ERROR_SUBST_TO_SUBST 139
172#define ERROR_JOIN_TO_SUBST 140
173#define ERROR_SUBST_TO_JOIN 141
174#define ERROR_BUSY_DRIVE 142
175#define ERROR_SAME_DRIVE 143
176#define ERROR_DIR_NOT_ROOT 144
177#define ERROR_DIR_NOT_EMPTY 145
178#define ERROR_IS_SUBST_PATH 146
179#define ERROR_IS_JOIN_PATH 147
180#define ERROR_PATH_BUSY 148
181#define ERROR_IS_SUBST_TARGET 149
182#define ERROR_SYSTEM_TRACE 150 /* system trace error */
183#define ERROR_INVALID_EVENT_COUNT 151 /* DosMuxSemWait errors */
184#define ERROR_TOO_MANY_MUXWAITERS 152
185#define ERROR_INVALID_LIST_FORMAT 153
186#define ERROR_LABEL_TOO_LONG 154
187#define ERROR_TOO_MANY_TCBS 155
188#define ERROR_SIGNAL_REFUSED 156
189#define ERROR_DISCARDED 157
190#define ERROR_NOT_LOCKED 158
191#define ERROR_BAD_THREADID_ADDR 159
192#define ERROR_BAD_ARGUMENTS 160
193#define ERROR_BAD_PATHNAME 161
194#define ERROR_SIGNAL_PENDING 162
195#define ERROR_UNCERTAIN_MEDIA 163
196#define ERROR_MAX_THRDS_REACHED 164
197
198#define ERROR_INVALID_SEGMENT_NUMBER 180
199#define ERROR_INVALID_CALLGATE 181
200#define ERROR_INVALID_ORDINAL 182
201#define ERROR_ALREADY_EXISTS 183
202#define ERROR_NO_CHILD_PROCESS 184
203#define ERROR_CHILD_ALIVE_NOWAIT 185
204#define ERROR_INVALID_FLAG_NUMBER 186
205#define ERROR_SEM_NOT_FOUND 187
206
207/* following error codes have added to make the loader error
208 messages distinct
209*/
210
211#define ERROR_EXCEEDED_SYS_STACKLIMIT 188 /* wrw! */
212#define ERROR_INVALID_STARTING_CODESEG 189
213#define ERROR_INVALID_STACKSEG 190
214#define ERROR_INVALID_MODULETYPE 191
215#define ERROR_INVALID_EXE_SIGNATURE 192
216#define ERROR_EXE_MARKED_INVALID 193
217#define ERROR_BAD_EXE_FORMAT 194
218#define ERROR_ITERATED_DATA_EXCEEDS_64k 195
219#define ERROR_INVALID_MINALLOCSIZE 196
220#define ERROR_DYNLINK_FROM_INVALID_RING 197
221#define ERROR_IOPL_NOT_ENABLED 198
222#define ERROR_INVALID_SEGDPL 199
223#define ERROR_AUTODATASEG_EXCEEDS_64k 200
224#define ERROR_RING2SEGS_MUST_BE_MOVABLE 201 /* wrw! */
225#define ERR_RELOCSRC_CHAIN_OVER_SEGLIM 202 /* wrw! */
226
227#define ERROR_USER_DEFINED_BASE 0xF000
228
229#define ERROR_I24_WRITE_PROTECT 0
230#define ERROR_I24_BAD_UNIT 1
231#define ERROR_I24_NOT_READY 2
232#define ERROR_I24_BAD_COMMAND 3
233#define ERROR_I24_CRC 4
234#define ERROR_I24_BAD_LENGTH 5
235#define ERROR_I24_SEEK 6
236#define ERROR_I24_NOT_DOS_DISK 7
237#define ERROR_I24_SECTOR_NOT_FOUND 8
238#define ERROR_I24_OUT_OF_PAPER 9
239#define ERROR_I24_WRITE_FAULT 0x0A
240#define ERROR_I24_READ_FAULT 0x0B
241#define ERROR_I24_GEN_FAILURE 0x0C
242#define ERROR_I24_DISK_CHANGE 0x0D
243#define ERROR_I24_WRONG_DISK 0x0F
244#define ERROR_I24_UNCERTAIN_MEDIA 0x10
245#define ERROR_I24_CHAR_CALL_INTERRUPTED 0x11
246
247#define ALLOWED_FAIL 0x0001
248#define ALLOWED_ABORT 0x0002
249#define ALLOWED_RETRY 0x0004
250#define ALLOWED_IGNORE 0x0008
251
252#define I24_OPERATION 0x1
253#define I24_AREA 0x6
254 /* 01 if FAT */
255 /* 10 if root DIR */
256 /* 11 if DATA */
257#define I24_CLASS 0x80
258
259
260/* Values for error CLASS */
261
262#define ERRCLASS_OUTRES 1 /* Out of Resource */
263#define ERRCLASS_TEMPSIT 2 /* Temporary Situation */
264#define ERRCLASS_AUTH 3 /* Permission problem */
265#define ERRCLASS_INTRN 4 /* Internal System Error */
266#define ERRCLASS_HRDFAIL 5 /* Hardware Failure */
267#define ERRCLASS_SYSFAIL 6 /* System Failure */
268#define ERRCLASS_APPERR 7 /* Application Error */
269#define ERRCLASS_NOTFND 8 /* Not Found */
270#define ERRCLASS_BADFMT 9 /* Bad Format */
271#define ERRCLASS_LOCKED 10 /* Locked */
272#define ERRCLASS_MEDIA 11 /* Media Failure */
273#define ERRCLASS_ALREADY 12 /* Collision with Existing Item */
274#define ERRCLASS_UNK 13 /* Unknown/other */
275#define ERRCLASS_CANT 14
276#define ERRCLASS_TIME 15
277
278/* Values for error ACTION */
279
280#define ERRACT_RETRY 1 /* Retry */
281#define ERRACT_DLYRET 2 /* Delay Retry, retry after pause */
282#define ERRACT_USER 3 /* Ask user to regive info */
283#define ERRACT_ABORT 4 /* abort with clean up */
284#define ERRACT_PANIC 5 /* abort immediately */
285#define ERRACT_IGNORE 6 /* ignore */
286#define ERRACT_INTRET 7 /* Retry after User Intervention */
287
288/* Values for error LOCUS */
289
290#define ERRLOC_UNK 1 /* No appropriate value */
291#define ERRLOC_DISK 2 /* Random Access Mass Storage */
292#define ERRLOC_NET 3 /* Network */
293#define ERRLOC_SERDEV 4 /* Serial Device */
294#define ERRLOC_MEM 5 /* Memory */