1 /* This file generated by errnos.awk. */
3 /* The Hurd uses Mach error system 0x10, currently only subsystem 0. */
5 #define _HURD_ERRNO(n) ((0x10 << 26) | ((n) & 0x3fff))
14 EPERM
= _HURD_ERRNO (1),
15 #define EPERM _HURD_ERRNO (1) /* Operation not permitted */
16 ENOENT
= _HURD_ERRNO (2),
17 #define ENOENT _HURD_ERRNO (2) /* No such file or directory */
18 ESRCH
= _HURD_ERRNO (3),
19 #define ESRCH _HURD_ERRNO (3) /* No such process */
20 EINTR
= _HURD_ERRNO (4),
21 #define EINTR _HURD_ERRNO (4) /* Interrupted system call */
22 EIO
= _HURD_ERRNO (5),
23 #define EIO _HURD_ERRNO (5) /* Input/output error */
24 ENXIO
= _HURD_ERRNO (6),
25 #define ENXIO _HURD_ERRNO (6) /* Device not configured */
26 E2BIG
= _HURD_ERRNO (7),
27 #define E2BIG _HURD_ERRNO (7) /* Argument list too long */
28 ENOEXEC
= _HURD_ERRNO (8),
29 #define ENOEXEC _HURD_ERRNO (8) /* Exec format error */
30 EBADF
= _HURD_ERRNO (9),
31 #define EBADF _HURD_ERRNO (9) /* Bad file descriptor */
32 ECHILD
= _HURD_ERRNO (10),
33 #define ECHILD _HURD_ERRNO (10)/* No child processes */
34 EDEADLK
= _HURD_ERRNO (11),
35 #define EDEADLK _HURD_ERRNO (11)/* Resource deadlock avoided */
36 ENOMEM
= _HURD_ERRNO (12),
37 #define ENOMEM _HURD_ERRNO (12)/* Cannot allocate memory */
38 EACCES
= _HURD_ERRNO (13),
39 #define EACCES _HURD_ERRNO (13)/* Permission denied */
40 EFAULT
= _HURD_ERRNO (14),
41 #define EFAULT _HURD_ERRNO (14)/* Bad address */
42 ENOTBLK
= _HURD_ERRNO (15),
43 #define ENOTBLK _HURD_ERRNO (15)/* Block device required */
44 EBUSY
= _HURD_ERRNO (16),
45 #define EBUSY _HURD_ERRNO (16)/* Device or resource busy */
46 EEXIST
= _HURD_ERRNO (17),
47 #define EEXIST _HURD_ERRNO (17)/* File exists */
48 EXDEV
= _HURD_ERRNO (18),
49 #define EXDEV _HURD_ERRNO (18)/* Invalid cross-device link */
50 ENODEV
= _HURD_ERRNO (19),
51 #define ENODEV _HURD_ERRNO (19)/* Operation not supported by device */
52 ENOTDIR
= _HURD_ERRNO (20),
53 #define ENOTDIR _HURD_ERRNO (20)/* Not a directory */
54 EISDIR
= _HURD_ERRNO (21),
55 #define EISDIR _HURD_ERRNO (21)/* Is a directory */
56 EINVAL
= _HURD_ERRNO (22),
57 #define EINVAL _HURD_ERRNO (22)/* Invalid argument */
58 EMFILE
= _HURD_ERRNO (24),
59 #define EMFILE _HURD_ERRNO (24)/* Too many open files */
60 ENFILE
= _HURD_ERRNO (23),
61 #define ENFILE _HURD_ERRNO (23)/* Too many open files in system */
62 ENOTTY
= _HURD_ERRNO (25),
63 #define ENOTTY _HURD_ERRNO (25)/* Inappropriate ioctl for device */
64 ETXTBSY
= _HURD_ERRNO (26),
65 #define ETXTBSY _HURD_ERRNO (26)/* Text file busy */
66 EFBIG
= _HURD_ERRNO (27),
67 #define EFBIG _HURD_ERRNO (27)/* File too large */
68 ENOSPC
= _HURD_ERRNO (28),
69 #define ENOSPC _HURD_ERRNO (28)/* No space left on device */
70 ESPIPE
= _HURD_ERRNO (29),
71 #define ESPIPE _HURD_ERRNO (29)/* Illegal seek */
72 EROFS
= _HURD_ERRNO (30),
73 #define EROFS _HURD_ERRNO (30)/* Read-only file system */
74 EMLINK
= _HURD_ERRNO (31),
75 #define EMLINK _HURD_ERRNO (31)/* Too many links */
76 EPIPE
= _HURD_ERRNO (32),
77 #define EPIPE _HURD_ERRNO (32)/* Broken pipe */
78 EDOM
= _HURD_ERRNO (33),
79 #define EDOM _HURD_ERRNO (33)/* Numerical argument out of domain */
80 ERANGE
= _HURD_ERRNO (34),
81 #define ERANGE _HURD_ERRNO (34)/* Numerical result out of range */
82 EAGAIN
= _HURD_ERRNO (35),
83 #define EAGAIN _HURD_ERRNO (35)/* Resource temporarily unavailable */
84 #define EWOULDBLOCK EAGAIN /* Operation would block */
85 EINPROGRESS
= _HURD_ERRNO (36),
86 #define EINPROGRESS _HURD_ERRNO (36)/* Operation now in progress */
87 EALREADY
= _HURD_ERRNO (37),
88 #define EALREADY _HURD_ERRNO (37)/* Operation already in progress */
89 ENOTSOCK
= _HURD_ERRNO (38),
90 #define ENOTSOCK _HURD_ERRNO (38)/* Socket operation on non-socket */
91 EMSGSIZE
= _HURD_ERRNO (40),
92 #define EMSGSIZE _HURD_ERRNO (40)/* Message too long */
93 EPROTOTYPE
= _HURD_ERRNO (41),
94 #define EPROTOTYPE _HURD_ERRNO (41)/* Protocol wrong type for socket */
95 ENOPROTOOPT
= _HURD_ERRNO (42),
96 #define ENOPROTOOPT _HURD_ERRNO (42)/* Protocol not available */
97 EPROTONOSUPPORT
= _HURD_ERRNO (43),
98 #define EPROTONOSUPPORT _HURD_ERRNO (43)/* Protocol not supported */
99 ESOCKTNOSUPPORT
= _HURD_ERRNO (44),
100 #define ESOCKTNOSUPPORT _HURD_ERRNO (44)/* Socket type not supported */
101 EOPNOTSUPP
= _HURD_ERRNO (45),
102 #define EOPNOTSUPP _HURD_ERRNO (45)/* Operation not supported */
103 EPFNOSUPPORT
= _HURD_ERRNO (46),
104 #define EPFNOSUPPORT _HURD_ERRNO (46)/* Protocol family not supported */
105 EAFNOSUPPORT
= _HURD_ERRNO (47),
106 #define EAFNOSUPPORT _HURD_ERRNO (47)/* Address family not supported by protocol */
107 EADDRINUSE
= _HURD_ERRNO (48),
108 #define EADDRINUSE _HURD_ERRNO (48)/* Address already in use */
109 EADDRNOTAVAIL
= _HURD_ERRNO (49),
110 #define EADDRNOTAVAIL _HURD_ERRNO (49)/* Cannot assign requested address */
111 ENETDOWN
= _HURD_ERRNO (50),
112 #define ENETDOWN _HURD_ERRNO (50)/* Network is down */
113 ENETUNREACH
= _HURD_ERRNO (51),
114 #define ENETUNREACH _HURD_ERRNO (51)/* Network is unreachable */
115 ENETRESET
= _HURD_ERRNO (52),
116 #define ENETRESET _HURD_ERRNO (52)/* Network dropped connection on reset */
117 ECONNABORTED
= _HURD_ERRNO (53),
118 #define ECONNABORTED _HURD_ERRNO (53)/* Software caused connection abort */
119 ECONNRESET
= _HURD_ERRNO (54),
120 #define ECONNRESET _HURD_ERRNO (54)/* Connection reset by peer */
121 ENOBUFS
= _HURD_ERRNO (55),
122 #define ENOBUFS _HURD_ERRNO (55)/* No buffer space available */
123 EISCONN
= _HURD_ERRNO (56),
124 #define EISCONN _HURD_ERRNO (56)/* Transport endpoint is already connected */
125 ENOTCONN
= _HURD_ERRNO (57),
126 #define ENOTCONN _HURD_ERRNO (57)/* Transport endpoint is not connected */
127 EDESTADDRREQ
= _HURD_ERRNO (39),
128 #define EDESTADDRREQ _HURD_ERRNO (39)/* Destination address required */
129 ESHUTDOWN
= _HURD_ERRNO (58),
130 #define ESHUTDOWN _HURD_ERRNO (58)/* Cannot send after transport endpoint shutdown */
131 ETOOMANYREFS
= _HURD_ERRNO (59),
132 #define ETOOMANYREFS _HURD_ERRNO (59)/* Too many references: cannot splice */
133 ETIMEDOUT
= _HURD_ERRNO (60),
134 #define ETIMEDOUT _HURD_ERRNO (60)/* Connection timed out */
135 ECONNREFUSED
= _HURD_ERRNO (61),
136 #define ECONNREFUSED _HURD_ERRNO (61)/* Connection refused */
137 ELOOP
= _HURD_ERRNO (62),
138 #define ELOOP _HURD_ERRNO (62)/* Too many levels of symbolic links */
139 ENAMETOOLONG
= _HURD_ERRNO (63),
140 #define ENAMETOOLONG _HURD_ERRNO (63)/* File name too long */
141 EHOSTDOWN
= _HURD_ERRNO (64),
142 #define EHOSTDOWN _HURD_ERRNO (64)/* Host is down */
143 EHOSTUNREACH
= _HURD_ERRNO (65),
144 #define EHOSTUNREACH _HURD_ERRNO (65)/* No route to host */
145 ENOTEMPTY
= _HURD_ERRNO (66),
146 #define ENOTEMPTY _HURD_ERRNO (66)/* Directory not empty */
147 EPROCLIM
= _HURD_ERRNO (67),
148 #define EPROCLIM _HURD_ERRNO (67)/* Too many processes */
149 EUSERS
= _HURD_ERRNO (68),
150 #define EUSERS _HURD_ERRNO (68)/* Too many users */
151 EDQUOT
= _HURD_ERRNO (69),
152 #define EDQUOT _HURD_ERRNO (69)/* Disc quota exceeded */
153 ESTALE
= _HURD_ERRNO (70),
154 #define ESTALE _HURD_ERRNO (70)/* Stale NFS file handle */
155 EREMOTE
= _HURD_ERRNO (71),
156 #define EREMOTE _HURD_ERRNO (71)/* Object is remote */
157 EBADRPC
= _HURD_ERRNO (72),
158 #define EBADRPC _HURD_ERRNO (72)/* RPC struct is bad */
159 ERPCMISMATCH
= _HURD_ERRNO (73),
160 #define ERPCMISMATCH _HURD_ERRNO (73)/* RPC version wrong */
161 EPROGUNAVAIL
= _HURD_ERRNO (74),
162 #define EPROGUNAVAIL _HURD_ERRNO (74)/* RPC program not available */
163 EPROGMISMATCH
= _HURD_ERRNO (75),
164 #define EPROGMISMATCH _HURD_ERRNO (75)/* RPC program version wrong */
165 EPROCUNAVAIL
= _HURD_ERRNO (76),
166 #define EPROCUNAVAIL _HURD_ERRNO (76)/* RPC bad procedure for program */
167 ENOLCK
= _HURD_ERRNO (77),
168 #define ENOLCK _HURD_ERRNO (77)/* No locks available */
169 EFTYPE
= _HURD_ERRNO (79),
170 #define EFTYPE _HURD_ERRNO (79)/* Inappropriate file type or format */
171 EAUTH
= _HURD_ERRNO (80),
172 #define EAUTH _HURD_ERRNO (80)/* Authentication error */
173 ENEEDAUTH
= _HURD_ERRNO (81),
174 #define ENEEDAUTH _HURD_ERRNO (81)/* Need authenticator */
175 ENOSYS
= _HURD_ERRNO (78),
176 #define ENOSYS _HURD_ERRNO (78)/* Function not implemented */
177 EILSEQ
= _HURD_ERRNO (106),
178 #define EILSEQ _HURD_ERRNO (106)/* Invalid or incomplete multibyte or wide character */
179 EBACKGROUND
= _HURD_ERRNO (100),
180 #define EBACKGROUND _HURD_ERRNO (100)/* Inappropriate operation for background process */
181 EDIED
= _HURD_ERRNO (101),
182 #define EDIED _HURD_ERRNO (101)/* Translator died */
183 ED
= _HURD_ERRNO (102),
184 #define ED _HURD_ERRNO (102)/* ? */
185 EGREGIOUS
= _HURD_ERRNO (103),
186 #define EGREGIOUS _HURD_ERRNO (103)/* You really blew it this time */
187 EIEIO
= _HURD_ERRNO (104),
188 #define EIEIO _HURD_ERRNO (104)/* Computer bought the farm */
189 EGRATUITOUS
= _HURD_ERRNO (105),
190 #define EGRATUITOUS _HURD_ERRNO (105)/* Gratuitous error */
192 /* Errors from <mach/message.h>. */
193 EMACH_SEND_IN_PROGRESS
= 0x10000001,
194 EMACH_SEND_INVALID_DATA
= 0x10000002,
195 EMACH_SEND_INVALID_DEST
= 0x10000003,
196 EMACH_SEND_TIMED_OUT
= 0x10000004,
197 EMACH_SEND_WILL_NOTIFY
= 0x10000005,
198 EMACH_SEND_NOTIFY_IN_PROGRESS
= 0x10000006,
199 EMACH_SEND_INTERRUPTED
= 0x10000007,
200 EMACH_SEND_MSG_TOO_SMALL
= 0x10000008,
201 EMACH_SEND_INVALID_REPLY
= 0x10000009,
202 EMACH_SEND_INVALID_RIGHT
= 0x1000000a,
203 EMACH_SEND_INVALID_NOTIFY
= 0x1000000b,
204 EMACH_SEND_INVALID_MEMORY
= 0x1000000c,
205 EMACH_SEND_NO_BUFFER
= 0x1000000d,
206 EMACH_SEND_NO_NOTIFY
= 0x1000000e,
207 EMACH_SEND_INVALID_TYPE
= 0x1000000f,
208 EMACH_SEND_INVALID_HEADER
= 0x10000010,
209 EMACH_RCV_IN_PROGRESS
= 0x10004001,
210 EMACH_RCV_INVALID_NAME
= 0x10004002,
211 EMACH_RCV_TIMED_OUT
= 0x10004003,
212 EMACH_RCV_TOO_LARGE
= 0x10004004,
213 EMACH_RCV_INTERRUPTED
= 0x10004005,
214 EMACH_RCV_PORT_CHANGED
= 0x10004006,
215 EMACH_RCV_INVALID_NOTIFY
= 0x10004007,
216 EMACH_RCV_INVALID_DATA
= 0x10004008,
217 EMACH_RCV_PORT_DIED
= 0x10004009,
218 EMACH_RCV_IN_SET
= 0x1000400a,
219 EMACH_RCV_HEADER_ERROR
= 0x1000400b,
220 EMACH_RCV_BODY_ERROR
= 0x1000400c,
222 /* Errors from <mach/kern_return.h>. */
223 EKERN_INVALID_ADDRESS
= 1,
224 EKERN_PROTECTION_FAILURE
= 2,
226 EKERN_INVALID_ARGUMENT
= 4,
228 EKERN_RESOURCE_SHORTAGE
= 6,
229 EKERN_NOT_RECEIVER
= 7,
231 EKERN_MEMORY_FAILURE
= 9,
232 EKERN_MEMORY_ERROR
= 10,
233 EKERN_NOT_IN_SET
= 12,
234 EKERN_NAME_EXISTS
= 13,
236 EKERN_INVALID_NAME
= 15,
237 EKERN_INVALID_TASK
= 16,
238 EKERN_INVALID_RIGHT
= 17,
239 EKERN_INVALID_VALUE
= 18,
240 EKERN_UREFS_OVERFLOW
= 19,
241 EKERN_INVALID_CAPABILITY
= 20,
242 EKERN_RIGHT_EXISTS
= 21,
243 EKERN_INVALID_HOST
= 22,
244 EKERN_MEMORY_PRESENT
= 23,
245 EKERN_WRITE_PROTECTION_FAILURE
= 24,
246 EKERN_TERMINATED
= 26,
248 /* Errors from <mach/mig_errors.h>. */
249 EMIG_TYPE_ERROR
= -300, /* client type check failure */
250 EMIG_REPLY_MISMATCH
= -301, /* wrong reply message ID */
251 EMIG_REMOTE_ERROR
= -302, /* server detected error */
252 EMIG_BAD_ID
= -303, /* bad request message ID */
253 EMIG_BAD_ARGUMENTS
= -304, /* server type check failure */
254 EMIG_NO_REPLY
= -305, /* no reply should be sent */
255 EMIG_EXCEPTION
= -306, /* server raised exception */
256 EMIG_ARRAY_TOO_LARGE
= -307, /* array not large enough */
257 EMIG_SERVER_DIED
= -308, /* server died */
258 EMIG_DESTROY_REQUEST
= -309, /* destroy request with no reply */
260 /* Errors from <device/device_types.h>. */
261 ED_IO_ERROR
= 2500, /* hardware IO error */
262 ED_WOULD_BLOCK
= 2501, /* would block, but D_NOWAIT set */
263 ED_NO_SUCH_DEVICE
= 2502, /* no such device */
264 ED_ALREADY_OPEN
= 2503, /* exclusive-use device already open */
265 ED_DEVICE_DOWN
= 2504, /* device has been shut down */
266 ED_INVALID_OPERATION
= 2505, /* bad operation for device */
267 ED_INVALID_RECNUM
= 2506, /* invalid record (block) number */
268 ED_INVALID_SIZE
= 2507, /* invalid IO size */
269 ED_NO_MEMORY
= 2508, /* memory allocation failure */
270 ED_READ_ONLY
= 2509, /* device cannot be written to */
274 #define _HURD_ERRNOS 107
276 /* User-visible type of error codes. It is ok to use `int' or
277 `kern_return_t' for these, but with `error_t' the debugger prints
280 typedef enum __error_t_codes error_t
;
281 #define __error_t_defined 1
284 /* errno is a per-thread variable. */
285 #include <hurd/threadvar.h>
286 #define errno (*__hurd_errno_location ())
287 #define __set_errno(val) errno = (val)
289 #endif /* <errno.h> included. */
291 #if !defined (_ERRNO_H) && defined (__need_Emath)
292 #define EDOM _HURD_ERRNO (33)/* Numerical argument out of domain */
293 #define ERANGE _HURD_ERRNO (34)/* Numerical result out of range */
294 #endif /* <errno.h> not included and need math error codes. */