2006-02-24 Roland McGrath <roland@redhat.com>
[kopensolaris-gnu/glibc.git] / sysdeps / gnu / errlist.c
1 /* This file is generated from errno.texi by errlist.awk.  */
2
3 #include <errno.h>
4 #include <libintl.h>
5
6 #ifndef ERR_REMAP
7 # define ERR_REMAP(n) n
8 #endif
9
10 #if !defined EMIT_ERR_MAX && !defined ERRLIST_NO_COMPAT
11 # include <errlist-compat.h>
12 #endif
13 #ifdef ERR_MAX
14 # define ERRLIST_SIZE ERR_MAX + 1
15 #else
16 # define ERRLIST_SIZE
17 #endif
18 const char *const _sys_errlist_internal[ERRLIST_SIZE] =
19   {
20     [0] = N_("Success"),
21 #ifdef EPERM
22 /*
23 TRANS Operation not permitted; only the owner of the file (or other resource)
24 TRANS or processes with special privileges can perform the operation. */
25     [ERR_REMAP (EPERM)] = N_("Operation not permitted"),
26 # if EPERM > ERR_MAX
27 # undef ERR_MAX
28 # define ERR_MAX EPERM
29 # endif
30 #endif
31 #ifdef ENOENT
32 /*
33 TRANS No such file or directory.  This is a ``file doesn't exist'' error
34 TRANS for ordinary files that are referenced in contexts where they are
35 TRANS expected to already exist. */
36     [ERR_REMAP (ENOENT)] = N_("No such file or directory"),
37 # if ENOENT > ERR_MAX
38 # undef ERR_MAX
39 # define ERR_MAX ENOENT
40 # endif
41 #endif
42 #ifdef ESRCH
43 /*
44 TRANS No process matches the specified process ID. */
45     [ERR_REMAP (ESRCH)] = N_("No such process"),
46 # if ESRCH > ERR_MAX
47 # undef ERR_MAX
48 # define ERR_MAX ESRCH
49 # endif
50 #endif
51 #ifdef EINTR
52 /*
53 TRANS Interrupted function call; an asynchronous signal occurred and prevented
54 TRANS completion of the call.  When this happens, you should try the call
55 TRANS again.
56 TRANS 
57 TRANS You can choose to have functions resume after a signal that is handled,
58 TRANS rather than failing with @code{EINTR}; see @ref{Interrupted
59 TRANS Primitives}. */
60     [ERR_REMAP (EINTR)] = N_("Interrupted system call"),
61 # if EINTR > ERR_MAX
62 # undef ERR_MAX
63 # define ERR_MAX EINTR
64 # endif
65 #endif
66 #ifdef EIO
67 /*
68 TRANS Input/output error; usually used for physical read or write errors. */
69     [ERR_REMAP (EIO)] = N_("Input/output error"),
70 # if EIO > ERR_MAX
71 # undef ERR_MAX
72 # define ERR_MAX EIO
73 # endif
74 #endif
75 #ifdef ENXIO
76 /*
77 TRANS No such device or address.  The system tried to use the device
78 TRANS represented by a file you specified, and it couldn't find the device.
79 TRANS This can mean that the device file was installed incorrectly, or that
80 TRANS the physical device is missing or not correctly attached to the
81 TRANS computer. */
82     [ERR_REMAP (ENXIO)] = N_("No such device or address"),
83 # if ENXIO > ERR_MAX
84 # undef ERR_MAX
85 # define ERR_MAX ENXIO
86 # endif
87 #endif
88 #ifdef E2BIG
89 /*
90 TRANS Argument list too long; used when the arguments passed to a new program
91 TRANS being executed with one of the @code{exec} functions (@pxref{Executing a
92 TRANS File}) occupy too much memory space.  This condition never arises in the
93 TRANS GNU system. */
94     [ERR_REMAP (E2BIG)] = N_("Argument list too long"),
95 # if E2BIG > ERR_MAX
96 # undef ERR_MAX
97 # define ERR_MAX E2BIG
98 # endif
99 #endif
100 #ifdef ENOEXEC
101 /*
102 TRANS Invalid executable file format.  This condition is detected by the
103 TRANS @code{exec} functions; see @ref{Executing a File}. */
104     [ERR_REMAP (ENOEXEC)] = N_("Exec format error"),
105 # if ENOEXEC > ERR_MAX
106 # undef ERR_MAX
107 # define ERR_MAX ENOEXEC
108 # endif
109 #endif
110 #ifdef EBADF
111 /*
112 TRANS Bad file descriptor; for example, I/O on a descriptor that has been
113 TRANS closed or reading from a descriptor open only for writing (or vice
114 TRANS versa). */
115     [ERR_REMAP (EBADF)] = N_("Bad file descriptor"),
116 # if EBADF > ERR_MAX
117 # undef ERR_MAX
118 # define ERR_MAX EBADF
119 # endif
120 #endif
121 #ifdef ECHILD
122 /*
123 TRANS There are no child processes.  This error happens on operations that are
124 TRANS supposed to manipulate child processes, when there aren't any processes
125 TRANS to manipulate. */
126     [ERR_REMAP (ECHILD)] = N_("No child processes"),
127 # if ECHILD > ERR_MAX
128 # undef ERR_MAX
129 # define ERR_MAX ECHILD
130 # endif
131 #endif
132 #ifdef EDEADLK
133 /*
134 TRANS Deadlock avoided; allocating a system resource would have resulted in a
135 TRANS deadlock situation.  The system does not guarantee that it will notice
136 TRANS all such situations.  This error means you got lucky and the system
137 TRANS noticed; it might just hang.  @xref{File Locks}, for an example. */
138     [ERR_REMAP (EDEADLK)] = N_("Resource deadlock avoided"),
139 # if EDEADLK > ERR_MAX
140 # undef ERR_MAX
141 # define ERR_MAX EDEADLK
142 # endif
143 #endif
144 #ifdef ENOMEM
145 /*
146 TRANS No memory available.  The system cannot allocate more virtual memory
147 TRANS because its capacity is full. */
148     [ERR_REMAP (ENOMEM)] = N_("Cannot allocate memory"),
149 # if ENOMEM > ERR_MAX
150 # undef ERR_MAX
151 # define ERR_MAX ENOMEM
152 # endif
153 #endif
154 #ifdef EACCES
155 /*
156 TRANS Permission denied; the file permissions do not allow the attempted operation. */
157     [ERR_REMAP (EACCES)] = N_("Permission denied"),
158 # if EACCES > ERR_MAX
159 # undef ERR_MAX
160 # define ERR_MAX EACCES
161 # endif
162 #endif
163 #ifdef EFAULT
164 /*
165 TRANS Bad address; an invalid pointer was detected.
166 TRANS In the GNU system, this error never happens; you get a signal instead. */
167     [ERR_REMAP (EFAULT)] = N_("Bad address"),
168 # if EFAULT > ERR_MAX
169 # undef ERR_MAX
170 # define ERR_MAX EFAULT
171 # endif
172 #endif
173 #ifdef ENOTBLK
174 /*
175 TRANS A file that isn't a block special file was given in a situation that
176 TRANS requires one.  For example, trying to mount an ordinary file as a file
177 TRANS system in Unix gives this error. */
178     [ERR_REMAP (ENOTBLK)] = N_("Block device required"),
179 # if ENOTBLK > ERR_MAX
180 # undef ERR_MAX
181 # define ERR_MAX ENOTBLK
182 # endif
183 #endif
184 #ifdef EBUSY
185 /*
186 TRANS Resource busy; a system resource that can't be shared is already in use.
187 TRANS For example, if you try to delete a file that is the root of a currently
188 TRANS mounted filesystem, you get this error. */
189     [ERR_REMAP (EBUSY)] = N_("Device or resource busy"),
190 # if EBUSY > ERR_MAX
191 # undef ERR_MAX
192 # define ERR_MAX EBUSY
193 # endif
194 #endif
195 #ifdef EEXIST
196 /*
197 TRANS File exists; an existing file was specified in a context where it only
198 TRANS makes sense to specify a new file. */
199     [ERR_REMAP (EEXIST)] = N_("File exists"),
200 # if EEXIST > ERR_MAX
201 # undef ERR_MAX
202 # define ERR_MAX EEXIST
203 # endif
204 #endif
205 #ifdef EXDEV
206 /*
207 TRANS An attempt to make an improper link across file systems was detected.
208 TRANS This happens not only when you use @code{link} (@pxref{Hard Links}) but
209 TRANS also when you rename a file with @code{rename} (@pxref{Renaming Files}). */
210     [ERR_REMAP (EXDEV)] = N_("Invalid cross-device link"),
211 # if EXDEV > ERR_MAX
212 # undef ERR_MAX
213 # define ERR_MAX EXDEV
214 # endif
215 #endif
216 #ifdef ENODEV
217 /*
218 TRANS The wrong type of device was given to a function that expects a
219 TRANS particular sort of device. */
220     [ERR_REMAP (ENODEV)] = N_("No such device"),
221 # if ENODEV > ERR_MAX
222 # undef ERR_MAX
223 # define ERR_MAX ENODEV
224 # endif
225 #endif
226 #ifdef ENOTDIR
227 /*
228 TRANS A file that isn't a directory was specified when a directory is required. */
229     [ERR_REMAP (ENOTDIR)] = N_("Not a directory"),
230 # if ENOTDIR > ERR_MAX
231 # undef ERR_MAX
232 # define ERR_MAX ENOTDIR
233 # endif
234 #endif
235 #ifdef EISDIR
236 /*
237 TRANS File is a directory; you cannot open a directory for writing,
238 TRANS or create or remove hard links to it. */
239     [ERR_REMAP (EISDIR)] = N_("Is a directory"),
240 # if EISDIR > ERR_MAX
241 # undef ERR_MAX
242 # define ERR_MAX EISDIR
243 # endif
244 #endif
245 #ifdef EINVAL
246 /*
247 TRANS Invalid argument.  This is used to indicate various kinds of problems
248 TRANS with passing the wrong argument to a library function. */
249     [ERR_REMAP (EINVAL)] = N_("Invalid argument"),
250 # if EINVAL > ERR_MAX
251 # undef ERR_MAX
252 # define ERR_MAX EINVAL
253 # endif
254 #endif
255 #ifdef EMFILE
256 /*
257 TRANS The current process has too many files open and can't open any more.
258 TRANS Duplicate descriptors do count toward this limit.
259 TRANS 
260 TRANS In BSD and GNU, the number of open files is controlled by a resource
261 TRANS limit that can usually be increased.  If you get this error, you might
262 TRANS want to increase the @code{RLIMIT_NOFILE} limit or make it unlimited;
263 TRANS @pxref{Limits on Resources}. */
264     [ERR_REMAP (EMFILE)] = N_("Too many open files"),
265 # if EMFILE > ERR_MAX
266 # undef ERR_MAX
267 # define ERR_MAX EMFILE
268 # endif
269 #endif
270 #ifdef ENFILE
271 /*
272 TRANS There are too many distinct file openings in the entire system.  Note
273 TRANS that any number of linked channels count as just one file opening; see
274 TRANS @ref{Linked Channels}.  This error never occurs in the GNU system. */
275     [ERR_REMAP (ENFILE)] = N_("Too many open files in system"),
276 # if ENFILE > ERR_MAX
277 # undef ERR_MAX
278 # define ERR_MAX ENFILE
279 # endif
280 #endif
281 #ifdef ENOTTY
282 /*
283 TRANS Inappropriate I/O control operation, such as trying to set terminal
284 TRANS modes on an ordinary file. */
285     [ERR_REMAP (ENOTTY)] = N_("Inappropriate ioctl for device"),
286 # if ENOTTY > ERR_MAX
287 # undef ERR_MAX
288 # define ERR_MAX ENOTTY
289 # endif
290 #endif
291 #ifdef ETXTBSY
292 /*
293 TRANS An attempt to execute a file that is currently open for writing, or
294 TRANS write to a file that is currently being executed.  Often using a
295 TRANS debugger to run a program is considered having it open for writing and
296 TRANS will cause this error.  (The name stands for ``text file busy''.)  This
297 TRANS is not an error in the GNU system; the text is copied as necessary. */
298     [ERR_REMAP (ETXTBSY)] = N_("Text file busy"),
299 # if ETXTBSY > ERR_MAX
300 # undef ERR_MAX
301 # define ERR_MAX ETXTBSY
302 # endif
303 #endif
304 #ifdef EFBIG
305 /*
306 TRANS File too big; the size of a file would be larger than allowed by the system. */
307     [ERR_REMAP (EFBIG)] = N_("File too large"),
308 # if EFBIG > ERR_MAX
309 # undef ERR_MAX
310 # define ERR_MAX EFBIG
311 # endif
312 #endif
313 #ifdef ENOSPC
314 /*
315 TRANS No space left on device; write operation on a file failed because the
316 TRANS disk is full. */
317     [ERR_REMAP (ENOSPC)] = N_("No space left on device"),
318 # if ENOSPC > ERR_MAX
319 # undef ERR_MAX
320 # define ERR_MAX ENOSPC
321 # endif
322 #endif
323 #ifdef ESPIPE
324 /*
325 TRANS Invalid seek operation (such as on a pipe). */
326     [ERR_REMAP (ESPIPE)] = N_("Illegal seek"),
327 # if ESPIPE > ERR_MAX
328 # undef ERR_MAX
329 # define ERR_MAX ESPIPE
330 # endif
331 #endif
332 #ifdef EROFS
333 /*
334 TRANS An attempt was made to modify something on a read-only file system. */
335     [ERR_REMAP (EROFS)] = N_("Read-only file system"),
336 # if EROFS > ERR_MAX
337 # undef ERR_MAX
338 # define ERR_MAX EROFS
339 # endif
340 #endif
341 #ifdef EMLINK
342 /*
343 TRANS Too many links; the link count of a single file would become too large.
344 TRANS @code{rename} can cause this error if the file being renamed already has
345 TRANS as many links as it can take (@pxref{Renaming Files}). */
346     [ERR_REMAP (EMLINK)] = N_("Too many links"),
347 # if EMLINK > ERR_MAX
348 # undef ERR_MAX
349 # define ERR_MAX EMLINK
350 # endif
351 #endif
352 #ifdef EPIPE
353 /*
354 TRANS Broken pipe; there is no process reading from the other end of a pipe.
355 TRANS Every library function that returns this error code also generates a
356 TRANS @code{SIGPIPE} signal; this signal terminates the program if not handled
357 TRANS or blocked.  Thus, your program will never actually see @code{EPIPE}
358 TRANS unless it has handled or blocked @code{SIGPIPE}. */
359     [ERR_REMAP (EPIPE)] = N_("Broken pipe"),
360 # if EPIPE > ERR_MAX
361 # undef ERR_MAX
362 # define ERR_MAX EPIPE
363 # endif
364 #endif
365 #ifdef EDOM
366 /*
367 TRANS Domain error; used by mathematical functions when an argument value does
368 TRANS not fall into the domain over which the function is defined. */
369     [ERR_REMAP (EDOM)] = N_("Numerical argument out of domain"),
370 # if EDOM > ERR_MAX
371 # undef ERR_MAX
372 # define ERR_MAX EDOM
373 # endif
374 #endif
375 #ifdef ERANGE
376 /*
377 TRANS Range error; used by mathematical functions when the result value is
378 TRANS not representable because of overflow or underflow. */
379     [ERR_REMAP (ERANGE)] = N_("Numerical result out of range"),
380 # if ERANGE > ERR_MAX
381 # undef ERR_MAX
382 # define ERR_MAX ERANGE
383 # endif
384 #endif
385 #ifdef EAGAIN
386 /*
387 TRANS Resource temporarily unavailable; the call might work if you try again
388 TRANS later.  The macro @code{EWOULDBLOCK} is another name for @code{EAGAIN};
389 TRANS they are always the same in the GNU C library.
390 TRANS 
391 TRANS This error can happen in a few different situations:
392 TRANS 
393 TRANS @itemize @bullet
394 TRANS @item
395 TRANS An operation that would block was attempted on an object that has
396 TRANS non-blocking mode selected.  Trying the same operation again will block
397 TRANS until some external condition makes it possible to read, write, or
398 TRANS connect (whatever the operation).  You can use @code{select} to find out
399 TRANS when the operation will be possible; @pxref{Waiting for I/O}.
400 TRANS 
401 TRANS @strong{Portability Note:} In many older Unix systems, this condition
402 TRANS was indicated by @code{EWOULDBLOCK}, which was a distinct error code
403 TRANS different from @code{EAGAIN}.  To make your program portable, you should
404 TRANS check for both codes and treat them the same.
405 TRANS 
406 TRANS @item
407 TRANS A temporary resource shortage made an operation impossible.  @code{fork}
408 TRANS can return this error.  It indicates that the shortage is expected to
409 TRANS pass, so your program can try the call again later and it may succeed.
410 TRANS It is probably a good idea to delay for a few seconds before trying it
411 TRANS again, to allow time for other processes to release scarce resources.
412 TRANS Such shortages are usually fairly serious and affect the whole system,
413 TRANS so usually an interactive program should report the error to the user
414 TRANS and return to its command loop.
415 TRANS @end itemize */
416     [ERR_REMAP (EAGAIN)] = N_("Resource temporarily unavailable"),
417 # if EAGAIN > ERR_MAX
418 # undef ERR_MAX
419 # define ERR_MAX EAGAIN
420 # endif
421 #endif
422 #if defined (EWOULDBLOCK) && EWOULDBLOCK != EAGAIN
423 /*
424 TRANS In the GNU C library, this is another name for @code{EAGAIN} (above).
425 TRANS The values are always the same, on every operating system.
426 TRANS 
427 TRANS C libraries in many older Unix systems have @code{EWOULDBLOCK} as a
428 TRANS separate error code. */
429     [ERR_REMAP (EWOULDBLOCK)] = N_("Operation would block"),
430 # if EWOULDBLOCK > ERR_MAX
431 # undef ERR_MAX
432 # define ERR_MAX EWOULDBLOCK
433 # endif
434 #endif
435 #ifdef EINPROGRESS
436 /*
437 TRANS An operation that cannot complete immediately was initiated on an object
438 TRANS that has non-blocking mode selected.  Some functions that must always
439 TRANS block (such as @code{connect}; @pxref{Connecting}) never return
440 TRANS @code{EAGAIN}.  Instead, they return @code{EINPROGRESS} to indicate that
441 TRANS the operation has begun and will take some time.  Attempts to manipulate
442 TRANS the object before the call completes return @code{EALREADY}.  You can
443 TRANS use the @code{select} function to find out when the pending operation
444 TRANS has completed; @pxref{Waiting for I/O}. */
445     [ERR_REMAP (EINPROGRESS)] = N_("Operation now in progress"),
446 # if EINPROGRESS > ERR_MAX
447 # undef ERR_MAX
448 # define ERR_MAX EINPROGRESS
449 # endif
450 #endif
451 #ifdef EALREADY
452 /*
453 TRANS An operation is already in progress on an object that has non-blocking
454 TRANS mode selected. */
455     [ERR_REMAP (EALREADY)] = N_("Operation already in progress"),
456 # if EALREADY > ERR_MAX
457 # undef ERR_MAX
458 # define ERR_MAX EALREADY
459 # endif
460 #endif
461 #ifdef ENOTSOCK
462 /*
463 TRANS A file that isn't a socket was specified when a socket is required. */
464     [ERR_REMAP (ENOTSOCK)] = N_("Socket operation on non-socket"),
465 # if ENOTSOCK > ERR_MAX
466 # undef ERR_MAX
467 # define ERR_MAX ENOTSOCK
468 # endif
469 #endif
470 #ifdef EMSGSIZE
471 /*
472 TRANS The size of a message sent on a socket was larger than the supported
473 TRANS maximum size. */
474     [ERR_REMAP (EMSGSIZE)] = N_("Message too long"),
475 # if EMSGSIZE > ERR_MAX
476 # undef ERR_MAX
477 # define ERR_MAX EMSGSIZE
478 # endif
479 #endif
480 #ifdef EPROTOTYPE
481 /*
482 TRANS The socket type does not support the requested communications protocol. */
483     [ERR_REMAP (EPROTOTYPE)] = N_("Protocol wrong type for socket"),
484 # if EPROTOTYPE > ERR_MAX
485 # undef ERR_MAX
486 # define ERR_MAX EPROTOTYPE
487 # endif
488 #endif
489 #ifdef ENOPROTOOPT
490 /*
491 TRANS You specified a socket option that doesn't make sense for the
492 TRANS particular protocol being used by the socket.  @xref{Socket Options}. */
493     [ERR_REMAP (ENOPROTOOPT)] = N_("Protocol not available"),
494 # if ENOPROTOOPT > ERR_MAX
495 # undef ERR_MAX
496 # define ERR_MAX ENOPROTOOPT
497 # endif
498 #endif
499 #ifdef EPROTONOSUPPORT
500 /*
501 TRANS The socket domain does not support the requested communications protocol
502 TRANS (perhaps because the requested protocol is completely invalid).
503 TRANS @xref{Creating a Socket}. */
504     [ERR_REMAP (EPROTONOSUPPORT)] = N_("Protocol not supported"),
505 # if EPROTONOSUPPORT > ERR_MAX
506 # undef ERR_MAX
507 # define ERR_MAX EPROTONOSUPPORT
508 # endif
509 #endif
510 #ifdef ESOCKTNOSUPPORT
511 /*
512 TRANS The socket type is not supported. */
513     [ERR_REMAP (ESOCKTNOSUPPORT)] = N_("Socket type not supported"),
514 # if ESOCKTNOSUPPORT > ERR_MAX
515 # undef ERR_MAX
516 # define ERR_MAX ESOCKTNOSUPPORT
517 # endif
518 #endif
519 #ifdef EOPNOTSUPP
520 /*
521 TRANS The operation you requested is not supported.  Some socket functions
522 TRANS don't make sense for all types of sockets, and others may not be
523 TRANS implemented for all communications protocols.  In the GNU system, this
524 TRANS error can happen for many calls when the object does not support the
525 TRANS particular operation; it is a generic indication that the server knows
526 TRANS nothing to do for that call. */
527     [ERR_REMAP (EOPNOTSUPP)] = N_("Operation not supported"),
528 # if EOPNOTSUPP > ERR_MAX
529 # undef ERR_MAX
530 # define ERR_MAX EOPNOTSUPP
531 # endif
532 #endif
533 #ifdef EPFNOSUPPORT
534 /*
535 TRANS The socket communications protocol family you requested is not supported. */
536     [ERR_REMAP (EPFNOSUPPORT)] = N_("Protocol family not supported"),
537 # if EPFNOSUPPORT > ERR_MAX
538 # undef ERR_MAX
539 # define ERR_MAX EPFNOSUPPORT
540 # endif
541 #endif
542 #ifdef EAFNOSUPPORT
543 /*
544 TRANS The address family specified for a socket is not supported; it is
545 TRANS inconsistent with the protocol being used on the socket.  @xref{Sockets}. */
546     [ERR_REMAP (EAFNOSUPPORT)] = N_("Address family not supported by protocol"),
547 # if EAFNOSUPPORT > ERR_MAX
548 # undef ERR_MAX
549 # define ERR_MAX EAFNOSUPPORT
550 # endif
551 #endif
552 #ifdef EADDRINUSE
553 /*
554 TRANS The requested socket address is already in use.  @xref{Socket Addresses}. */
555     [ERR_REMAP (EADDRINUSE)] = N_("Address already in use"),
556 # if EADDRINUSE > ERR_MAX
557 # undef ERR_MAX
558 # define ERR_MAX EADDRINUSE
559 # endif
560 #endif
561 #ifdef EADDRNOTAVAIL
562 /*
563 TRANS The requested socket address is not available; for example, you tried
564 TRANS to give a socket a name that doesn't match the local host name.
565 TRANS @xref{Socket Addresses}. */
566     [ERR_REMAP (EADDRNOTAVAIL)] = N_("Cannot assign requested address"),
567 # if EADDRNOTAVAIL > ERR_MAX
568 # undef ERR_MAX
569 # define ERR_MAX EADDRNOTAVAIL
570 # endif
571 #endif
572 #ifdef ENETDOWN
573 /*
574 TRANS A socket operation failed because the network was down. */
575     [ERR_REMAP (ENETDOWN)] = N_("Network is down"),
576 # if ENETDOWN > ERR_MAX
577 # undef ERR_MAX
578 # define ERR_MAX ENETDOWN
579 # endif
580 #endif
581 #ifdef ENETUNREACH
582 /*
583 TRANS A socket operation failed because the subnet containing the remote host
584 TRANS was unreachable. */
585     [ERR_REMAP (ENETUNREACH)] = N_("Network is unreachable"),
586 # if ENETUNREACH > ERR_MAX
587 # undef ERR_MAX
588 # define ERR_MAX ENETUNREACH
589 # endif
590 #endif
591 #ifdef ENETRESET
592 /*
593 TRANS A network connection was reset because the remote host crashed. */
594     [ERR_REMAP (ENETRESET)] = N_("Network dropped connection on reset"),
595 # if ENETRESET > ERR_MAX
596 # undef ERR_MAX
597 # define ERR_MAX ENETRESET
598 # endif
599 #endif
600 #ifdef ECONNABORTED
601 /*
602 TRANS A network connection was aborted locally. */
603     [ERR_REMAP (ECONNABORTED)] = N_("Software caused connection abort"),
604 # if ECONNABORTED > ERR_MAX
605 # undef ERR_MAX
606 # define ERR_MAX ECONNABORTED
607 # endif
608 #endif
609 #ifdef ECONNRESET
610 /*
611 TRANS A network connection was closed for reasons outside the control of the
612 TRANS local host, such as by the remote machine rebooting or an unrecoverable
613 TRANS protocol violation. */
614     [ERR_REMAP (ECONNRESET)] = N_("Connection reset by peer"),
615 # if ECONNRESET > ERR_MAX
616 # undef ERR_MAX
617 # define ERR_MAX ECONNRESET
618 # endif
619 #endif
620 #ifdef ENOBUFS
621 /*
622 TRANS The kernel's buffers for I/O operations are all in use.  In GNU, this
623 TRANS error is always synonymous with @code{ENOMEM}; you may get one or the
624 TRANS other from network operations. */
625     [ERR_REMAP (ENOBUFS)] = N_("No buffer space available"),
626 # if ENOBUFS > ERR_MAX
627 # undef ERR_MAX
628 # define ERR_MAX ENOBUFS
629 # endif
630 #endif
631 #ifdef EISCONN
632 /*
633 TRANS You tried to connect a socket that is already connected.
634 TRANS @xref{Connecting}. */
635     [ERR_REMAP (EISCONN)] = N_("Transport endpoint is already connected"),
636 # if EISCONN > ERR_MAX
637 # undef ERR_MAX
638 # define ERR_MAX EISCONN
639 # endif
640 #endif
641 #ifdef ENOTCONN
642 /*
643 TRANS The socket is not connected to anything.  You get this error when you
644 TRANS try to transmit data over a socket, without first specifying a
645 TRANS destination for the data.  For a connectionless socket (for datagram
646 TRANS protocols, such as UDP), you get @code{EDESTADDRREQ} instead. */
647     [ERR_REMAP (ENOTCONN)] = N_("Transport endpoint is not connected"),
648 # if ENOTCONN > ERR_MAX
649 # undef ERR_MAX
650 # define ERR_MAX ENOTCONN
651 # endif
652 #endif
653 #ifdef EDESTADDRREQ
654 /*
655 TRANS No default destination address was set for the socket.  You get this
656 TRANS error when you try to transmit data over a connectionless socket,
657 TRANS without first specifying a destination for the data with @code{connect}. */
658     [ERR_REMAP (EDESTADDRREQ)] = N_("Destination address required"),
659 # if EDESTADDRREQ > ERR_MAX
660 # undef ERR_MAX
661 # define ERR_MAX EDESTADDRREQ
662 # endif
663 #endif
664 #ifdef ESHUTDOWN
665 /*
666 TRANS The socket has already been shut down. */
667     [ERR_REMAP (ESHUTDOWN)] = N_("Cannot send after transport endpoint shutdown"),
668 # if ESHUTDOWN > ERR_MAX
669 # undef ERR_MAX
670 # define ERR_MAX ESHUTDOWN
671 # endif
672 #endif
673 #ifdef ETOOMANYREFS
674 /*
675 TRANS ??? */
676     [ERR_REMAP (ETOOMANYREFS)] = N_("Too many references: cannot splice"),
677 # if ETOOMANYREFS > ERR_MAX
678 # undef ERR_MAX
679 # define ERR_MAX ETOOMANYREFS
680 # endif
681 #endif
682 #ifdef ETIMEDOUT
683 /*
684 TRANS A socket operation with a specified timeout received no response during
685 TRANS the timeout period. */
686     [ERR_REMAP (ETIMEDOUT)] = N_("Connection timed out"),
687 # if ETIMEDOUT > ERR_MAX
688 # undef ERR_MAX
689 # define ERR_MAX ETIMEDOUT
690 # endif
691 #endif
692 #ifdef ECONNREFUSED
693 /*
694 TRANS A remote host refused to allow the network connection (typically because
695 TRANS it is not running the requested service). */
696     [ERR_REMAP (ECONNREFUSED)] = N_("Connection refused"),
697 # if ECONNREFUSED > ERR_MAX
698 # undef ERR_MAX
699 # define ERR_MAX ECONNREFUSED
700 # endif
701 #endif
702 #ifdef ELOOP
703 /*
704 TRANS Too many levels of symbolic links were encountered in looking up a file name.
705 TRANS This often indicates a cycle of symbolic links. */
706     [ERR_REMAP (ELOOP)] = N_("Too many levels of symbolic links"),
707 # if ELOOP > ERR_MAX
708 # undef ERR_MAX
709 # define ERR_MAX ELOOP
710 # endif
711 #endif
712 #ifdef ENAMETOOLONG
713 /*
714 TRANS Filename too long (longer than @code{PATH_MAX}; @pxref{Limits for
715 TRANS Files}) or host name too long (in @code{gethostname} or
716 TRANS @code{sethostname}; @pxref{Host Identification}). */
717     [ERR_REMAP (ENAMETOOLONG)] = N_("File name too long"),
718 # if ENAMETOOLONG > ERR_MAX
719 # undef ERR_MAX
720 # define ERR_MAX ENAMETOOLONG
721 # endif
722 #endif
723 #ifdef EHOSTDOWN
724 /*
725 TRANS The remote host for a requested network connection is down. */
726     [ERR_REMAP (EHOSTDOWN)] = N_("Host is down"),
727 # if EHOSTDOWN > ERR_MAX
728 # undef ERR_MAX
729 # define ERR_MAX EHOSTDOWN
730 # endif
731 #endif
732 #ifdef EHOSTUNREACH
733 /*
734 TRANS The remote host for a requested network connection is not reachable. */
735     [ERR_REMAP (EHOSTUNREACH)] = N_("No route to host"),
736 # if EHOSTUNREACH > ERR_MAX
737 # undef ERR_MAX
738 # define ERR_MAX EHOSTUNREACH
739 # endif
740 #endif
741 #ifdef ENOTEMPTY
742 /*
743 TRANS Directory not empty, where an empty directory was expected.  Typically,
744 TRANS this error occurs when you are trying to delete a directory. */
745     [ERR_REMAP (ENOTEMPTY)] = N_("Directory not empty"),
746 # if ENOTEMPTY > ERR_MAX
747 # undef ERR_MAX
748 # define ERR_MAX ENOTEMPTY
749 # endif
750 #endif
751 #ifdef EPROCLIM
752 /*
753 TRANS This means that the per-user limit on new process would be exceeded by
754 TRANS an attempted @code{fork}.  @xref{Limits on Resources}, for details on
755 TRANS the @code{RLIMIT_NPROC} limit. */
756     [ERR_REMAP (EPROCLIM)] = N_("Too many processes"),
757 # if EPROCLIM > ERR_MAX
758 # undef ERR_MAX
759 # define ERR_MAX EPROCLIM
760 # endif
761 #endif
762 #ifdef EUSERS
763 /*
764 TRANS The file quota system is confused because there are too many users.
765 TRANS @c This can probably happen in a GNU system when using NFS. */
766     [ERR_REMAP (EUSERS)] = N_("Too many users"),
767 # if EUSERS > ERR_MAX
768 # undef ERR_MAX
769 # define ERR_MAX EUSERS
770 # endif
771 #endif
772 #ifdef EDQUOT
773 /*
774 TRANS The user's disk quota was exceeded. */
775     [ERR_REMAP (EDQUOT)] = N_("Disk quota exceeded"),
776 # if EDQUOT > ERR_MAX
777 # undef ERR_MAX
778 # define ERR_MAX EDQUOT
779 # endif
780 #endif
781 #ifdef ESTALE
782 /*
783 TRANS Stale NFS file handle.  This indicates an internal confusion in the NFS
784 TRANS system which is due to file system rearrangements on the server host.
785 TRANS Repairing this condition usually requires unmounting and remounting
786 TRANS the NFS file system on the local host. */
787     [ERR_REMAP (ESTALE)] = N_("Stale NFS file handle"),
788 # if ESTALE > ERR_MAX
789 # undef ERR_MAX
790 # define ERR_MAX ESTALE
791 # endif
792 #endif
793 #ifdef EREMOTE
794 /*
795 TRANS An attempt was made to NFS-mount a remote file system with a file name that
796 TRANS already specifies an NFS-mounted file.
797 TRANS (This is an error on some operating systems, but we expect it to work
798 TRANS properly on the GNU system, making this error code impossible.) */
799     [ERR_REMAP (EREMOTE)] = N_("Object is remote"),
800 # if EREMOTE > ERR_MAX
801 # undef ERR_MAX
802 # define ERR_MAX EREMOTE
803 # endif
804 #endif
805 #ifdef EBADRPC
806 /*
807 TRANS ??? */
808     [ERR_REMAP (EBADRPC)] = N_("RPC struct is bad"),
809 # if EBADRPC > ERR_MAX
810 # undef ERR_MAX
811 # define ERR_MAX EBADRPC
812 # endif
813 #endif
814 #ifdef ERPCMISMATCH
815 /*
816 TRANS ??? */
817     [ERR_REMAP (ERPCMISMATCH)] = N_("RPC version wrong"),
818 # if ERPCMISMATCH > ERR_MAX
819 # undef ERR_MAX
820 # define ERR_MAX ERPCMISMATCH
821 # endif
822 #endif
823 #ifdef EPROGUNAVAIL
824 /*
825 TRANS ??? */
826     [ERR_REMAP (EPROGUNAVAIL)] = N_("RPC program not available"),
827 # if EPROGUNAVAIL > ERR_MAX
828 # undef ERR_MAX
829 # define ERR_MAX EPROGUNAVAIL
830 # endif
831 #endif
832 #ifdef EPROGMISMATCH
833 /*
834 TRANS ??? */
835     [ERR_REMAP (EPROGMISMATCH)] = N_("RPC program version wrong"),
836 # if EPROGMISMATCH > ERR_MAX
837 # undef ERR_MAX
838 # define ERR_MAX EPROGMISMATCH
839 # endif
840 #endif
841 #ifdef EPROCUNAVAIL
842 /*
843 TRANS ??? */
844     [ERR_REMAP (EPROCUNAVAIL)] = N_("RPC bad procedure for program"),
845 # if EPROCUNAVAIL > ERR_MAX
846 # undef ERR_MAX
847 # define ERR_MAX EPROCUNAVAIL
848 # endif
849 #endif
850 #ifdef ENOLCK
851 /*
852 TRANS No locks available.  This is used by the file locking facilities; see
853 TRANS @ref{File Locks}.  This error is never generated by the GNU system, but
854 TRANS it can result from an operation to an NFS server running another
855 TRANS operating system. */
856     [ERR_REMAP (ENOLCK)] = N_("No locks available"),
857 # if ENOLCK > ERR_MAX
858 # undef ERR_MAX
859 # define ERR_MAX ENOLCK
860 # endif
861 #endif
862 #ifdef EFTYPE
863 /*
864 TRANS Inappropriate file type or format.  The file was the wrong type for the
865 TRANS operation, or a data file had the wrong format.
866 TRANS 
867 TRANS On some systems @code{chmod} returns this error if you try to set the
868 TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}. */
869     [ERR_REMAP (EFTYPE)] = N_("Inappropriate file type or format"),
870 # if EFTYPE > ERR_MAX
871 # undef ERR_MAX
872 # define ERR_MAX EFTYPE
873 # endif
874 #endif
875 #ifdef EAUTH
876 /*
877 TRANS ??? */
878     [ERR_REMAP (EAUTH)] = N_("Authentication error"),
879 # if EAUTH > ERR_MAX
880 # undef ERR_MAX
881 # define ERR_MAX EAUTH
882 # endif
883 #endif
884 #ifdef ENEEDAUTH
885 /*
886 TRANS ??? */
887     [ERR_REMAP (ENEEDAUTH)] = N_("Need authenticator"),
888 # if ENEEDAUTH > ERR_MAX
889 # undef ERR_MAX
890 # define ERR_MAX ENEEDAUTH
891 # endif
892 #endif
893 #ifdef ENOSYS
894 /*
895 TRANS Function not implemented.  This indicates that the function called is
896 TRANS not implemented at all, either in the C library itself or in the
897 TRANS operating system.  When you get this error, you can be sure that this
898 TRANS particular function will always fail with @code{ENOSYS} unless you
899 TRANS install a new version of the C library or the operating system. */
900     [ERR_REMAP (ENOSYS)] = N_("Function not implemented"),
901 # if ENOSYS > ERR_MAX
902 # undef ERR_MAX
903 # define ERR_MAX ENOSYS
904 # endif
905 #endif
906 #if defined (ENOTSUP) && ENOTSUP != EOPNOTSUPP
907 /*
908 TRANS Not supported.  A function returns this error when certain parameter
909 TRANS values are valid, but the functionality they request is not available.
910 TRANS This can mean that the function does not implement a particular command
911 TRANS or option value or flag bit at all.  For functions that operate on some
912 TRANS object given in a parameter, such as a file descriptor or a port, it
913 TRANS might instead mean that only @emph{that specific object} (file
914 TRANS descriptor, port, etc.) is unable to support the other parameters given;
915 TRANS different file descriptors might support different ranges of parameter
916 TRANS values.
917 TRANS 
918 TRANS If the entire function is not available at all in the implementation,
919 TRANS it returns @code{ENOSYS} instead. */
920     [ERR_REMAP (ENOTSUP)] = N_("Not supported"),
921 # if ENOTSUP > ERR_MAX
922 # undef ERR_MAX
923 # define ERR_MAX ENOTSUP
924 # endif
925 #endif
926 #ifdef EILSEQ
927 /*
928 TRANS While decoding a multibyte character the function came along an invalid
929 TRANS or an incomplete sequence of bytes or the given wide character is invalid. */
930     [ERR_REMAP (EILSEQ)] = N_("Invalid or incomplete multibyte or wide character"),
931 # if EILSEQ > ERR_MAX
932 # undef ERR_MAX
933 # define ERR_MAX EILSEQ
934 # endif
935 #endif
936 #ifdef EBACKGROUND
937 /*
938 TRANS In the GNU system, servers supporting the @code{term} protocol return
939 TRANS this error for certain operations when the caller is not in the
940 TRANS foreground process group of the terminal.  Users do not usually see this
941 TRANS error because functions such as @code{read} and @code{write} translate
942 TRANS it into a @code{SIGTTIN} or @code{SIGTTOU} signal.  @xref{Job Control},
943 TRANS for information on process groups and these signals. */
944     [ERR_REMAP (EBACKGROUND)] = N_("Inappropriate operation for background process"),
945 # if EBACKGROUND > ERR_MAX
946 # undef ERR_MAX
947 # define ERR_MAX EBACKGROUND
948 # endif
949 #endif
950 #ifdef EDIED
951 /*
952 TRANS In the GNU system, opening a file returns this error when the file is
953 TRANS translated by a program and the translator program dies while starting
954 TRANS up, before it has connected to the file. */
955     [ERR_REMAP (EDIED)] = N_("Translator died"),
956 # if EDIED > ERR_MAX
957 # undef ERR_MAX
958 # define ERR_MAX EDIED
959 # endif
960 #endif
961 #ifdef ED
962 /*
963 TRANS The experienced user will know what is wrong.
964 TRANS @c This error code is a joke.  Its perror text is part of the joke.
965 TRANS @c Don't change it. */
966     [ERR_REMAP (ED)] = N_("?"),
967 # if ED > ERR_MAX
968 # undef ERR_MAX
969 # define ERR_MAX ED
970 # endif
971 #endif
972 #ifdef EGREGIOUS
973 /*
974 TRANS You did @strong{what}? */
975     [ERR_REMAP (EGREGIOUS)] = N_("You really blew it this time"),
976 # if EGREGIOUS > ERR_MAX
977 # undef ERR_MAX
978 # define ERR_MAX EGREGIOUS
979 # endif
980 #endif
981 #ifdef EIEIO
982 /*
983 TRANS Go home and have a glass of warm, dairy-fresh milk. */
984     [ERR_REMAP (EIEIO)] = N_("Computer bought the farm"),
985 # if EIEIO > ERR_MAX
986 # undef ERR_MAX
987 # define ERR_MAX EIEIO
988 # endif
989 #endif
990 #ifdef EGRATUITOUS
991 /*
992 TRANS This error code has no purpose. */
993     [ERR_REMAP (EGRATUITOUS)] = N_("Gratuitous error"),
994 # if EGRATUITOUS > ERR_MAX
995 # undef ERR_MAX
996 # define ERR_MAX EGRATUITOUS
997 # endif
998 #endif
999 #ifdef EBADMSG
1000 /* */
1001     [ERR_REMAP (EBADMSG)] = N_("Bad message"),
1002 # if EBADMSG > ERR_MAX
1003 # undef ERR_MAX
1004 # define ERR_MAX EBADMSG
1005 # endif
1006 #endif
1007 #ifdef EIDRM
1008 /* */
1009     [ERR_REMAP (EIDRM)] = N_("Identifier removed"),
1010 # if EIDRM > ERR_MAX
1011 # undef ERR_MAX
1012 # define ERR_MAX EIDRM
1013 # endif
1014 #endif
1015 #ifdef EMULTIHOP
1016 /* */
1017     [ERR_REMAP (EMULTIHOP)] = N_("Multihop attempted"),
1018 # if EMULTIHOP > ERR_MAX
1019 # undef ERR_MAX
1020 # define ERR_MAX EMULTIHOP
1021 # endif
1022 #endif
1023 #ifdef ENODATA
1024 /* */
1025     [ERR_REMAP (ENODATA)] = N_("No data available"),
1026 # if ENODATA > ERR_MAX
1027 # undef ERR_MAX
1028 # define ERR_MAX ENODATA
1029 # endif
1030 #endif
1031 #ifdef ENOLINK
1032 /* */
1033     [ERR_REMAP (ENOLINK)] = N_("Link has been severed"),
1034 # if ENOLINK > ERR_MAX
1035 # undef ERR_MAX
1036 # define ERR_MAX ENOLINK
1037 # endif
1038 #endif
1039 #ifdef ENOMSG
1040 /* */
1041     [ERR_REMAP (ENOMSG)] = N_("No message of desired type"),
1042 # if ENOMSG > ERR_MAX
1043 # undef ERR_MAX
1044 # define ERR_MAX ENOMSG
1045 # endif
1046 #endif
1047 #ifdef ENOSR
1048 /* */
1049     [ERR_REMAP (ENOSR)] = N_("Out of streams resources"),
1050 # if ENOSR > ERR_MAX
1051 # undef ERR_MAX
1052 # define ERR_MAX ENOSR
1053 # endif
1054 #endif
1055 #ifdef ENOSTR
1056 /* */
1057     [ERR_REMAP (ENOSTR)] = N_("Device not a stream"),
1058 # if ENOSTR > ERR_MAX
1059 # undef ERR_MAX
1060 # define ERR_MAX ENOSTR
1061 # endif
1062 #endif
1063 #ifdef EOVERFLOW
1064 /* */
1065     [ERR_REMAP (EOVERFLOW)] = N_("Value too large for defined data type"),
1066 # if EOVERFLOW > ERR_MAX
1067 # undef ERR_MAX
1068 # define ERR_MAX EOVERFLOW
1069 # endif
1070 #endif
1071 #ifdef EPROTO
1072 /* */
1073     [ERR_REMAP (EPROTO)] = N_("Protocol error"),
1074 # if EPROTO > ERR_MAX
1075 # undef ERR_MAX
1076 # define ERR_MAX EPROTO
1077 # endif
1078 #endif
1079 #ifdef ETIME
1080 /* */
1081     [ERR_REMAP (ETIME)] = N_("Timer expired"),
1082 # if ETIME > ERR_MAX
1083 # undef ERR_MAX
1084 # define ERR_MAX ETIME
1085 # endif
1086 #endif
1087 #ifdef ECANCELED
1088 /*
1089 TRANS Operation canceled; an asynchronous operation was canceled before it
1090 TRANS completed.  @xref{Asynchronous I/O}.  When you call @code{aio_cancel},
1091 TRANS the normal result is for the operations affected to complete with this
1092 TRANS error; @pxref{Cancel AIO Operations}. */
1093     [ERR_REMAP (ECANCELED)] = N_("Operation canceled"),
1094 # if ECANCELED > ERR_MAX
1095 # undef ERR_MAX
1096 # define ERR_MAX ECANCELED
1097 # endif
1098 #endif
1099 #ifdef ERESTART
1100 /* */
1101     [ERR_REMAP (ERESTART)] = N_("Interrupted system call should be restarted"),
1102 # if ERESTART > ERR_MAX
1103 # undef ERR_MAX
1104 # define ERR_MAX ERESTART
1105 # endif
1106 #endif
1107 #ifdef ECHRNG
1108 /* */
1109     [ERR_REMAP (ECHRNG)] = N_("Channel number out of range"),
1110 # if ECHRNG > ERR_MAX
1111 # undef ERR_MAX
1112 # define ERR_MAX ECHRNG
1113 # endif
1114 #endif
1115 #ifdef EL2NSYNC
1116 /* */
1117     [ERR_REMAP (EL2NSYNC)] = N_("Level 2 not synchronized"),
1118 # if EL2NSYNC > ERR_MAX
1119 # undef ERR_MAX
1120 # define ERR_MAX EL2NSYNC
1121 # endif
1122 #endif
1123 #ifdef EL3HLT
1124 /* */
1125     [ERR_REMAP (EL3HLT)] = N_("Level 3 halted"),
1126 # if EL3HLT > ERR_MAX
1127 # undef ERR_MAX
1128 # define ERR_MAX EL3HLT
1129 # endif
1130 #endif
1131 #ifdef EL3RST
1132 /* */
1133     [ERR_REMAP (EL3RST)] = N_("Level 3 reset"),
1134 # if EL3RST > ERR_MAX
1135 # undef ERR_MAX
1136 # define ERR_MAX EL3RST
1137 # endif
1138 #endif
1139 #ifdef ELNRNG
1140 /* */
1141     [ERR_REMAP (ELNRNG)] = N_("Link number out of range"),
1142 # if ELNRNG > ERR_MAX
1143 # undef ERR_MAX
1144 # define ERR_MAX ELNRNG
1145 # endif
1146 #endif
1147 #ifdef EUNATCH
1148 /* */
1149     [ERR_REMAP (EUNATCH)] = N_("Protocol driver not attached"),
1150 # if EUNATCH > ERR_MAX
1151 # undef ERR_MAX
1152 # define ERR_MAX EUNATCH
1153 # endif
1154 #endif
1155 #ifdef ENOCSI
1156 /* */
1157     [ERR_REMAP (ENOCSI)] = N_("No CSI structure available"),
1158 # if ENOCSI > ERR_MAX
1159 # undef ERR_MAX
1160 # define ERR_MAX ENOCSI
1161 # endif
1162 #endif
1163 #ifdef EL2HLT
1164 /* */
1165     [ERR_REMAP (EL2HLT)] = N_("Level 2 halted"),
1166 # if EL2HLT > ERR_MAX
1167 # undef ERR_MAX
1168 # define ERR_MAX EL2HLT
1169 # endif
1170 #endif
1171 #ifdef EBADE
1172 /* */
1173     [ERR_REMAP (EBADE)] = N_("Invalid exchange"),
1174 # if EBADE > ERR_MAX
1175 # undef ERR_MAX
1176 # define ERR_MAX EBADE
1177 # endif
1178 #endif
1179 #ifdef EBADR
1180 /* */
1181     [ERR_REMAP (EBADR)] = N_("Invalid request descriptor"),
1182 # if EBADR > ERR_MAX
1183 # undef ERR_MAX
1184 # define ERR_MAX EBADR
1185 # endif
1186 #endif
1187 #ifdef EXFULL
1188 /* */
1189     [ERR_REMAP (EXFULL)] = N_("Exchange full"),
1190 # if EXFULL > ERR_MAX
1191 # undef ERR_MAX
1192 # define ERR_MAX EXFULL
1193 # endif
1194 #endif
1195 #ifdef ENOANO
1196 /* */
1197     [ERR_REMAP (ENOANO)] = N_("No anode"),
1198 # if ENOANO > ERR_MAX
1199 # undef ERR_MAX
1200 # define ERR_MAX ENOANO
1201 # endif
1202 #endif
1203 #ifdef EBADRQC
1204 /* */
1205     [ERR_REMAP (EBADRQC)] = N_("Invalid request code"),
1206 # if EBADRQC > ERR_MAX
1207 # undef ERR_MAX
1208 # define ERR_MAX EBADRQC
1209 # endif
1210 #endif
1211 #ifdef EBADSLT
1212 /* */
1213     [ERR_REMAP (EBADSLT)] = N_("Invalid slot"),
1214 # if EBADSLT > ERR_MAX
1215 # undef ERR_MAX
1216 # define ERR_MAX EBADSLT
1217 # endif
1218 #endif
1219 #if defined (EDEADLOCK) && EDEADLOCK != EDEADLK
1220 /* */
1221     [ERR_REMAP (EDEADLOCK)] = N_("File locking deadlock error"),
1222 # if EDEADLOCK > ERR_MAX
1223 # undef ERR_MAX
1224 # define ERR_MAX EDEADLOCK
1225 # endif
1226 #endif
1227 #ifdef EBFONT
1228 /* */
1229     [ERR_REMAP (EBFONT)] = N_("Bad font file format"),
1230 # if EBFONT > ERR_MAX
1231 # undef ERR_MAX
1232 # define ERR_MAX EBFONT
1233 # endif
1234 #endif
1235 #ifdef ENONET
1236 /* */
1237     [ERR_REMAP (ENONET)] = N_("Machine is not on the network"),
1238 # if ENONET > ERR_MAX
1239 # undef ERR_MAX
1240 # define ERR_MAX ENONET
1241 # endif
1242 #endif
1243 #ifdef ENOPKG
1244 /* */
1245     [ERR_REMAP (ENOPKG)] = N_("Package not installed"),
1246 # if ENOPKG > ERR_MAX
1247 # undef ERR_MAX
1248 # define ERR_MAX ENOPKG
1249 # endif
1250 #endif
1251 #ifdef EADV
1252 /* */
1253     [ERR_REMAP (EADV)] = N_("Advertise error"),
1254 # if EADV > ERR_MAX
1255 # undef ERR_MAX
1256 # define ERR_MAX EADV
1257 # endif
1258 #endif
1259 #ifdef ESRMNT
1260 /* */
1261     [ERR_REMAP (ESRMNT)] = N_("Srmount error"),
1262 # if ESRMNT > ERR_MAX
1263 # undef ERR_MAX
1264 # define ERR_MAX ESRMNT
1265 # endif
1266 #endif
1267 #ifdef ECOMM
1268 /* */
1269     [ERR_REMAP (ECOMM)] = N_("Communication error on send"),
1270 # if ECOMM > ERR_MAX
1271 # undef ERR_MAX
1272 # define ERR_MAX ECOMM
1273 # endif
1274 #endif
1275 #ifdef EDOTDOT
1276 /* */
1277     [ERR_REMAP (EDOTDOT)] = N_("RFS specific error"),
1278 # if EDOTDOT > ERR_MAX
1279 # undef ERR_MAX
1280 # define ERR_MAX EDOTDOT
1281 # endif
1282 #endif
1283 #ifdef ENOTUNIQ
1284 /* */
1285     [ERR_REMAP (ENOTUNIQ)] = N_("Name not unique on network"),
1286 # if ENOTUNIQ > ERR_MAX
1287 # undef ERR_MAX
1288 # define ERR_MAX ENOTUNIQ
1289 # endif
1290 #endif
1291 #ifdef EBADFD
1292 /* */
1293     [ERR_REMAP (EBADFD)] = N_("File descriptor in bad state"),
1294 # if EBADFD > ERR_MAX
1295 # undef ERR_MAX
1296 # define ERR_MAX EBADFD
1297 # endif
1298 #endif
1299 #ifdef EREMCHG
1300 /* */
1301     [ERR_REMAP (EREMCHG)] = N_("Remote address changed"),
1302 # if EREMCHG > ERR_MAX
1303 # undef ERR_MAX
1304 # define ERR_MAX EREMCHG
1305 # endif
1306 #endif
1307 #ifdef ELIBACC
1308 /* */
1309     [ERR_REMAP (ELIBACC)] = N_("Can not access a needed shared library"),
1310 # if ELIBACC > ERR_MAX
1311 # undef ERR_MAX
1312 # define ERR_MAX ELIBACC
1313 # endif
1314 #endif
1315 #ifdef ELIBBAD
1316 /* */
1317     [ERR_REMAP (ELIBBAD)] = N_("Accessing a corrupted shared library"),
1318 # if ELIBBAD > ERR_MAX
1319 # undef ERR_MAX
1320 # define ERR_MAX ELIBBAD
1321 # endif
1322 #endif
1323 #ifdef ELIBSCN
1324 /* */
1325     [ERR_REMAP (ELIBSCN)] = N_(".lib section in a.out corrupted"),
1326 # if ELIBSCN > ERR_MAX
1327 # undef ERR_MAX
1328 # define ERR_MAX ELIBSCN
1329 # endif
1330 #endif
1331 #ifdef ELIBMAX
1332 /* */
1333     [ERR_REMAP (ELIBMAX)] = N_("Attempting to link in too many shared libraries"),
1334 # if ELIBMAX > ERR_MAX
1335 # undef ERR_MAX
1336 # define ERR_MAX ELIBMAX
1337 # endif
1338 #endif
1339 #ifdef ELIBEXEC
1340 /* */
1341     [ERR_REMAP (ELIBEXEC)] = N_("Cannot exec a shared library directly"),
1342 # if ELIBEXEC > ERR_MAX
1343 # undef ERR_MAX
1344 # define ERR_MAX ELIBEXEC
1345 # endif
1346 #endif
1347 #ifdef ESTRPIPE
1348 /* */
1349     [ERR_REMAP (ESTRPIPE)] = N_("Streams pipe error"),
1350 # if ESTRPIPE > ERR_MAX
1351 # undef ERR_MAX
1352 # define ERR_MAX ESTRPIPE
1353 # endif
1354 #endif
1355 #ifdef EUCLEAN
1356 /* */
1357     [ERR_REMAP (EUCLEAN)] = N_("Structure needs cleaning"),
1358 # if EUCLEAN > ERR_MAX
1359 # undef ERR_MAX
1360 # define ERR_MAX EUCLEAN
1361 # endif
1362 #endif
1363 #ifdef ENOTNAM
1364 /* */
1365     [ERR_REMAP (ENOTNAM)] = N_("Not a XENIX named type file"),
1366 # if ENOTNAM > ERR_MAX
1367 # undef ERR_MAX
1368 # define ERR_MAX ENOTNAM
1369 # endif
1370 #endif
1371 #ifdef ENAVAIL
1372 /* */
1373     [ERR_REMAP (ENAVAIL)] = N_("No XENIX semaphores available"),
1374 # if ENAVAIL > ERR_MAX
1375 # undef ERR_MAX
1376 # define ERR_MAX ENAVAIL
1377 # endif
1378 #endif
1379 #ifdef EISNAM
1380 /* */
1381     [ERR_REMAP (EISNAM)] = N_("Is a named type file"),
1382 # if EISNAM > ERR_MAX
1383 # undef ERR_MAX
1384 # define ERR_MAX EISNAM
1385 # endif
1386 #endif
1387 #ifdef EREMOTEIO
1388 /* */
1389     [ERR_REMAP (EREMOTEIO)] = N_("Remote I/O error"),
1390 # if EREMOTEIO > ERR_MAX
1391 # undef ERR_MAX
1392 # define ERR_MAX EREMOTEIO
1393 # endif
1394 #endif
1395 #ifdef ENOMEDIUM
1396 /* */
1397     [ERR_REMAP (ENOMEDIUM)] = N_("No medium found"),
1398 # if ENOMEDIUM > ERR_MAX
1399 # undef ERR_MAX
1400 # define ERR_MAX ENOMEDIUM
1401 # endif
1402 #endif
1403 #ifdef EMEDIUMTYPE
1404 /* */
1405     [ERR_REMAP (EMEDIUMTYPE)] = N_("Wrong medium type"),
1406 # if EMEDIUMTYPE > ERR_MAX
1407 # undef ERR_MAX
1408 # define ERR_MAX EMEDIUMTYPE
1409 # endif
1410 #endif
1411 #ifdef ENOKEY
1412 /* */
1413     [ERR_REMAP (ENOKEY)] = N_("Required key not available"),
1414 # if ENOKEY > ERR_MAX
1415 # undef ERR_MAX
1416 # define ERR_MAX ENOKEY
1417 # endif
1418 #endif
1419 #ifdef EKEYEXPIRED
1420 /* */
1421     [ERR_REMAP (EKEYEXPIRED)] = N_("Key has expired"),
1422 # if EKEYEXPIRED > ERR_MAX
1423 # undef ERR_MAX
1424 # define ERR_MAX EKEYEXPIRED
1425 # endif
1426 #endif
1427 #ifdef EKEYREVOKED
1428 /* */
1429     [ERR_REMAP (EKEYREVOKED)] = N_("Key has been revoked"),
1430 # if EKEYREVOKED > ERR_MAX
1431 # undef ERR_MAX
1432 # define ERR_MAX EKEYREVOKED
1433 # endif
1434 #endif
1435 #ifdef EKEYREJECTED
1436 /* */
1437     [ERR_REMAP (EKEYREJECTED)] = N_("Key was rejected by service"),
1438 # if EKEYREJECTED > ERR_MAX
1439 # undef ERR_MAX
1440 # define ERR_MAX EKEYREJECTED
1441 # endif
1442 #endif
1443 #ifdef EOWNERDEAD
1444 /* */
1445     [ERR_REMAP (EOWNERDEAD)] = N_("Owner died"),
1446 # if EOWNERDEAD > ERR_MAX
1447 # undef ERR_MAX
1448 # define ERR_MAX EOWNERDEAD
1449 # endif
1450 #endif
1451 #ifdef ENOTRECOVERABLE
1452 /* */
1453     [ERR_REMAP (ENOTRECOVERABLE)] = N_("State not recoverable"),
1454 # if ENOTRECOVERABLE > ERR_MAX
1455 # undef ERR_MAX
1456 # define ERR_MAX ENOTRECOVERABLE
1457 # endif
1458 #endif
1459   };
1460
1461 #define NERR \
1462   (sizeof _sys_errlist_internal / sizeof _sys_errlist_internal [0])
1463 const int _sys_nerr_internal = NERR;
1464
1465 #if !defined NOT_IN_libc && !ERRLIST_NO_COMPAT
1466 # include <errlist-compat.c>
1467 #endif
1468
1469 #ifdef EMIT_ERR_MAX
1470 void dummy (void)
1471 { asm volatile (" @@@ %0 @@@ " : : "i" (ERR_REMAP (ERR_MAX))); }
1472 #endif