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