1 /* This file is generated from errno.texi by errlist.awk. */
7 # define ERR_REMAP(n) n
10 #if !defined EMIT_ERR_MAX && !defined ERRLIST_NO_COMPAT
11 # include <errlist-compat.h>
14 # define ERRLIST_SIZE ERR_MAX + 1
18 const char *const _sys_errlist_internal
[ERRLIST_SIZE
] =
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"),
28 # define ERR_MAX EPERM
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"),
39 # define ERR_MAX ENOENT
44 TRANS No process matches the specified process ID. */
45 [ERR_REMAP (ESRCH
)] = N_("No such process"),
48 # define ERR_MAX ESRCH
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
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
60 [ERR_REMAP (EINTR
)] = N_("Interrupted system call"),
63 # define ERR_MAX EINTR
68 TRANS Input/output error; usually used for physical read or write errors. */
69 [ERR_REMAP (EIO
)] = N_("Input/output error"),
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
82 [ERR_REMAP (ENXIO
)] = N_("No such device or address"),
85 # define ERR_MAX ENXIO
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 on
93 TRANS @gnuhurdsystems{}. */
94 [ERR_REMAP (E2BIG
)] = N_("Argument list too long"),
97 # define ERR_MAX E2BIG
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
107 # define ERR_MAX ENOEXEC
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
115 [ERR_REMAP (EBADF
)] = N_("Bad file descriptor"),
118 # define ERR_MAX EBADF
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
129 # define ERR_MAX ECHILD
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
141 # define ERR_MAX EDEADLK
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
151 # define ERR_MAX ENOMEM
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
160 # define ERR_MAX EACCES
165 TRANS Bad address; an invalid pointer was detected.
166 TRANS On @gnuhurdsystems{}, this error never happens; you get a signal instead. */
167 [ERR_REMAP (EFAULT
)] = N_("Bad address"),
168 # if EFAULT > ERR_MAX
170 # define ERR_MAX EFAULT
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
181 # define ERR_MAX ENOTBLK
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"),
192 # define ERR_MAX EBUSY
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
202 # define ERR_MAX EEXIST
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"),
213 # define ERR_MAX EXDEV
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
223 # define ERR_MAX ENODEV
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
232 # define ERR_MAX ENOTDIR
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
242 # define ERR_MAX EISDIR
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
252 # define ERR_MAX EINVAL
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.
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
267 # define ERR_MAX EMFILE
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 on @gnuhurdsystems{}. */
275 [ERR_REMAP (ENFILE
)] = N_("Too many open files in system"),
276 # if ENFILE > ERR_MAX
278 # define ERR_MAX ENFILE
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
288 # define ERR_MAX ENOTTY
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 on @gnuhurdsystems{}; the text is copied as necessary. */
298 [ERR_REMAP (ETXTBSY
)] = N_("Text file busy"),
299 # if ETXTBSY > ERR_MAX
301 # define ERR_MAX ETXTBSY
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"),
310 # define ERR_MAX EFBIG
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
320 # define ERR_MAX ENOSPC
325 TRANS Invalid seek operation (such as on a pipe). */
326 [ERR_REMAP (ESPIPE
)] = N_("Illegal seek"),
327 # if ESPIPE > ERR_MAX
329 # define ERR_MAX ESPIPE
334 TRANS An attempt was made to modify something on a read-only file system. */
335 [ERR_REMAP (EROFS
)] = N_("Read-only file system"),
338 # define ERR_MAX EROFS
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
349 # define ERR_MAX EMLINK
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"),
362 # define ERR_MAX EPIPE
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"),
372 # define ERR_MAX EDOM
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
382 # define ERR_MAX ERANGE
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 @theglibc{}.
391 TRANS This error can happen in a few different situations:
393 TRANS @itemize @bullet
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}.
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.
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
419 # define ERR_MAX EAGAIN
422 #if defined (EWOULDBLOCK) && EWOULDBLOCK != EAGAIN
424 TRANS In @theglibc{}, this is another name for @code{EAGAIN} (above).
425 TRANS The values are always the same, on every operating system.
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
432 # define ERR_MAX EWOULDBLOCK
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
448 # define ERR_MAX EINPROGRESS
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
458 # define ERR_MAX EALREADY
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
467 # define ERR_MAX ENOTSOCK
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
477 # define ERR_MAX EMSGSIZE
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
486 # define ERR_MAX EPROTOTYPE
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
496 # define ERR_MAX ENOPROTOOPT
499 #ifdef EPROTONOSUPPORT
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
507 # define ERR_MAX EPROTONOSUPPORT
510 #ifdef ESOCKTNOSUPPORT
512 TRANS The socket type is not supported. */
513 [ERR_REMAP (ESOCKTNOSUPPORT
)] = N_("Socket type not supported"),
514 # if ESOCKTNOSUPPORT > ERR_MAX
516 # define ERR_MAX ESOCKTNOSUPPORT
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. On @gnuhurdsystems{}, 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
530 # define ERR_MAX EOPNOTSUPP
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
539 # define ERR_MAX EPFNOSUPPORT
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
549 # define ERR_MAX EAFNOSUPPORT
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
558 # define ERR_MAX EADDRINUSE
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
569 # define ERR_MAX EADDRNOTAVAIL
574 TRANS A socket operation failed because the network was down. */
575 [ERR_REMAP (ENETDOWN
)] = N_("Network is down"),
576 # if ENETDOWN > ERR_MAX
578 # define ERR_MAX ENETDOWN
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
588 # define ERR_MAX ENETUNREACH
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
597 # define ERR_MAX ENETRESET
602 TRANS A network connection was aborted locally. */
603 [ERR_REMAP (ECONNABORTED
)] = N_("Software caused connection abort"),
604 # if ECONNABORTED > ERR_MAX
606 # define ERR_MAX ECONNABORTED
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
617 # define ERR_MAX ECONNRESET
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
628 # define ERR_MAX ENOBUFS
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
638 # define ERR_MAX EISCONN
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
650 # define ERR_MAX ENOTCONN
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
661 # define ERR_MAX EDESTADDRREQ
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
670 # define ERR_MAX ESHUTDOWN
676 [ERR_REMAP (ETOOMANYREFS
)] = N_("Too many references: cannot splice"),
677 # if ETOOMANYREFS > ERR_MAX
679 # define ERR_MAX ETOOMANYREFS
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
689 # define ERR_MAX ETIMEDOUT
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
699 # define ERR_MAX ECONNREFUSED
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"),
709 # define ERR_MAX ELOOP
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
720 # define ERR_MAX ENAMETOOLONG
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
729 # define ERR_MAX EHOSTDOWN
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
738 # define ERR_MAX EHOSTUNREACH
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
748 # define ERR_MAX ENOTEMPTY
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
759 # define ERR_MAX EPROCLIM
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
769 # define ERR_MAX EUSERS
774 TRANS The user's disk quota was exceeded. */
775 [ERR_REMAP (EDQUOT
)] = N_("Disk quota exceeded"),
776 # if EDQUOT > ERR_MAX
778 # define ERR_MAX EDQUOT
783 TRANS Stale file handle. This indicates an internal confusion in the
784 TRANS file system which is due to file system rearrangements on the server host
785 TRANS for NFS file systems or corruption in other file systems.
786 TRANS Repairing this condition usually requires unmounting, possibly repairing
787 TRANS and remounting the file system. */
788 [ERR_REMAP (ESTALE
)] = N_("Stale file handle"),
789 # if ESTALE > ERR_MAX
791 # define ERR_MAX ESTALE
796 TRANS An attempt was made to NFS-mount a remote file system with a file name that
797 TRANS already specifies an NFS-mounted file.
798 TRANS (This is an error on some operating systems, but we expect it to work
799 TRANS properly on @gnuhurdsystems{}, making this error code impossible.) */
800 [ERR_REMAP (EREMOTE
)] = N_("Object is remote"),
801 # if EREMOTE > ERR_MAX
803 # define ERR_MAX EREMOTE
809 [ERR_REMAP (EBADRPC
)] = N_("RPC struct is bad"),
810 # if EBADRPC > ERR_MAX
812 # define ERR_MAX EBADRPC
818 [ERR_REMAP (ERPCMISMATCH
)] = N_("RPC version wrong"),
819 # if ERPCMISMATCH > ERR_MAX
821 # define ERR_MAX ERPCMISMATCH
827 [ERR_REMAP (EPROGUNAVAIL
)] = N_("RPC program not available"),
828 # if EPROGUNAVAIL > ERR_MAX
830 # define ERR_MAX EPROGUNAVAIL
836 [ERR_REMAP (EPROGMISMATCH
)] = N_("RPC program version wrong"),
837 # if EPROGMISMATCH > ERR_MAX
839 # define ERR_MAX EPROGMISMATCH
845 [ERR_REMAP (EPROCUNAVAIL
)] = N_("RPC bad procedure for program"),
846 # if EPROCUNAVAIL > ERR_MAX
848 # define ERR_MAX EPROCUNAVAIL
853 TRANS No locks available. This is used by the file locking facilities; see
854 TRANS @ref{File Locks}. This error is never generated by @gnuhurdsystems{}, but
855 TRANS it can result from an operation to an NFS server running another
856 TRANS operating system. */
857 [ERR_REMAP (ENOLCK
)] = N_("No locks available"),
858 # if ENOLCK > ERR_MAX
860 # define ERR_MAX ENOLCK
865 TRANS Inappropriate file type or format. The file was the wrong type for the
866 TRANS operation, or a data file had the wrong format.
868 TRANS On some systems @code{chmod} returns this error if you try to set the
869 TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}. */
870 [ERR_REMAP (EFTYPE
)] = N_("Inappropriate file type or format"),
871 # if EFTYPE > ERR_MAX
873 # define ERR_MAX EFTYPE
879 [ERR_REMAP (EAUTH
)] = N_("Authentication error"),
882 # define ERR_MAX EAUTH
888 [ERR_REMAP (ENEEDAUTH
)] = N_("Need authenticator"),
889 # if ENEEDAUTH > ERR_MAX
891 # define ERR_MAX ENEEDAUTH
896 TRANS Function not implemented. This indicates that the function called is
897 TRANS not implemented at all, either in the C library itself or in the
898 TRANS operating system. When you get this error, you can be sure that this
899 TRANS particular function will always fail with @code{ENOSYS} unless you
900 TRANS install a new version of the C library or the operating system. */
901 [ERR_REMAP (ENOSYS
)] = N_("Function not implemented"),
902 # if ENOSYS > ERR_MAX
904 # define ERR_MAX ENOSYS
907 #if defined (ENOTSUP) && ENOTSUP != EOPNOTSUPP
909 TRANS Not supported. A function returns this error when certain parameter
910 TRANS values are valid, but the functionality they request is not available.
911 TRANS This can mean that the function does not implement a particular command
912 TRANS or option value or flag bit at all. For functions that operate on some
913 TRANS object given in a parameter, such as a file descriptor or a port, it
914 TRANS might instead mean that only @emph{that specific object} (file
915 TRANS descriptor, port, etc.) is unable to support the other parameters given;
916 TRANS different file descriptors might support different ranges of parameter
919 TRANS If the entire function is not available at all in the implementation,
920 TRANS it returns @code{ENOSYS} instead. */
921 [ERR_REMAP (ENOTSUP
)] = N_("Not supported"),
922 # if ENOTSUP > ERR_MAX
924 # define ERR_MAX ENOTSUP
929 TRANS While decoding a multibyte character the function came along an invalid
930 TRANS or an incomplete sequence of bytes or the given wide character is invalid. */
931 [ERR_REMAP (EILSEQ
)] = N_("Invalid or incomplete multibyte or wide character"),
932 # if EILSEQ > ERR_MAX
934 # define ERR_MAX EILSEQ
939 TRANS On @gnuhurdsystems{}, servers supporting the @code{term} protocol return
940 TRANS this error for certain operations when the caller is not in the
941 TRANS foreground process group of the terminal. Users do not usually see this
942 TRANS error because functions such as @code{read} and @code{write} translate
943 TRANS it into a @code{SIGTTIN} or @code{SIGTTOU} signal. @xref{Job Control},
944 TRANS for information on process groups and these signals. */
945 [ERR_REMAP (EBACKGROUND
)] = N_("Inappropriate operation for background process"),
946 # if EBACKGROUND > ERR_MAX
948 # define ERR_MAX EBACKGROUND
953 TRANS On @gnuhurdsystems{}, opening a file returns this error when the file is
954 TRANS translated by a program and the translator program dies while starting
955 TRANS up, before it has connected to the file. */
956 [ERR_REMAP (EDIED
)] = N_("Translator died"),
959 # define ERR_MAX EDIED
964 TRANS The experienced user will know what is wrong.
965 TRANS @c This error code is a joke. Its perror text is part of the joke.
966 TRANS @c Don't change it. */
967 [ERR_REMAP (ED
)] = N_("?"),
975 TRANS You did @strong{what}? */
976 [ERR_REMAP (EGREGIOUS
)] = N_("You really blew it this time"),
977 # if EGREGIOUS > ERR_MAX
979 # define ERR_MAX EGREGIOUS
984 TRANS Go home and have a glass of warm, dairy-fresh milk. */
985 [ERR_REMAP (EIEIO
)] = N_("Computer bought the farm"),
988 # define ERR_MAX EIEIO
993 TRANS This error code has no purpose. */
994 [ERR_REMAP (EGRATUITOUS
)] = N_("Gratuitous error"),
995 # if EGRATUITOUS > ERR_MAX
997 # define ERR_MAX EGRATUITOUS
1002 [ERR_REMAP (EBADMSG
)] = N_("Bad message"),
1003 # if EBADMSG > ERR_MAX
1005 # define ERR_MAX EBADMSG
1010 [ERR_REMAP (EIDRM
)] = N_("Identifier removed"),
1011 # if EIDRM > ERR_MAX
1013 # define ERR_MAX EIDRM
1018 [ERR_REMAP (EMULTIHOP
)] = N_("Multihop attempted"),
1019 # if EMULTIHOP > ERR_MAX
1021 # define ERR_MAX EMULTIHOP
1026 [ERR_REMAP (ENODATA
)] = N_("No data available"),
1027 # if ENODATA > ERR_MAX
1029 # define ERR_MAX ENODATA
1034 [ERR_REMAP (ENOLINK
)] = N_("Link has been severed"),
1035 # if ENOLINK > ERR_MAX
1037 # define ERR_MAX ENOLINK
1042 [ERR_REMAP (ENOMSG
)] = N_("No message of desired type"),
1043 # if ENOMSG > ERR_MAX
1045 # define ERR_MAX ENOMSG
1050 [ERR_REMAP (ENOSR
)] = N_("Out of streams resources"),
1051 # if ENOSR > ERR_MAX
1053 # define ERR_MAX ENOSR
1058 [ERR_REMAP (ENOSTR
)] = N_("Device not a stream"),
1059 # if ENOSTR > ERR_MAX
1061 # define ERR_MAX ENOSTR
1066 [ERR_REMAP (EOVERFLOW
)] = N_("Value too large for defined data type"),
1067 # if EOVERFLOW > ERR_MAX
1069 # define ERR_MAX EOVERFLOW
1074 [ERR_REMAP (EPROTO
)] = N_("Protocol error"),
1075 # if EPROTO > ERR_MAX
1077 # define ERR_MAX EPROTO
1082 [ERR_REMAP (ETIME
)] = N_("Timer expired"),
1083 # if ETIME > ERR_MAX
1085 # define ERR_MAX ETIME
1090 TRANS Operation canceled; an asynchronous operation was canceled before it
1091 TRANS completed. @xref{Asynchronous I/O}. When you call @code{aio_cancel},
1092 TRANS the normal result is for the operations affected to complete with this
1093 TRANS error; @pxref{Cancel AIO Operations}. */
1094 [ERR_REMAP (ECANCELED
)] = N_("Operation canceled"),
1095 # if ECANCELED > ERR_MAX
1097 # define ERR_MAX ECANCELED
1102 [ERR_REMAP (ERESTART
)] = N_("Interrupted system call should be restarted"),
1103 # if ERESTART > ERR_MAX
1105 # define ERR_MAX ERESTART
1110 [ERR_REMAP (ECHRNG
)] = N_("Channel number out of range"),
1111 # if ECHRNG > ERR_MAX
1113 # define ERR_MAX ECHRNG
1118 [ERR_REMAP (EL2NSYNC
)] = N_("Level 2 not synchronized"),
1119 # if EL2NSYNC > ERR_MAX
1121 # define ERR_MAX EL2NSYNC
1126 [ERR_REMAP (EL3HLT
)] = N_("Level 3 halted"),
1127 # if EL3HLT > ERR_MAX
1129 # define ERR_MAX EL3HLT
1134 [ERR_REMAP (EL3RST
)] = N_("Level 3 reset"),
1135 # if EL3RST > ERR_MAX
1137 # define ERR_MAX EL3RST
1142 [ERR_REMAP (ELNRNG
)] = N_("Link number out of range"),
1143 # if ELNRNG > ERR_MAX
1145 # define ERR_MAX ELNRNG
1150 [ERR_REMAP (EUNATCH
)] = N_("Protocol driver not attached"),
1151 # if EUNATCH > ERR_MAX
1153 # define ERR_MAX EUNATCH
1158 [ERR_REMAP (ENOCSI
)] = N_("No CSI structure available"),
1159 # if ENOCSI > ERR_MAX
1161 # define ERR_MAX ENOCSI
1166 [ERR_REMAP (EL2HLT
)] = N_("Level 2 halted"),
1167 # if EL2HLT > ERR_MAX
1169 # define ERR_MAX EL2HLT
1174 [ERR_REMAP (EBADE
)] = N_("Invalid exchange"),
1175 # if EBADE > ERR_MAX
1177 # define ERR_MAX EBADE
1182 [ERR_REMAP (EBADR
)] = N_("Invalid request descriptor"),
1183 # if EBADR > ERR_MAX
1185 # define ERR_MAX EBADR
1190 [ERR_REMAP (EXFULL
)] = N_("Exchange full"),
1191 # if EXFULL > ERR_MAX
1193 # define ERR_MAX EXFULL
1198 [ERR_REMAP (ENOANO
)] = N_("No anode"),
1199 # if ENOANO > ERR_MAX
1201 # define ERR_MAX ENOANO
1206 [ERR_REMAP (EBADRQC
)] = N_("Invalid request code"),
1207 # if EBADRQC > ERR_MAX
1209 # define ERR_MAX EBADRQC
1214 [ERR_REMAP (EBADSLT
)] = N_("Invalid slot"),
1215 # if EBADSLT > ERR_MAX
1217 # define ERR_MAX EBADSLT
1220 #if defined (EDEADLOCK) && EDEADLOCK != EDEADLK
1222 [ERR_REMAP (EDEADLOCK
)] = N_("File locking deadlock error"),
1223 # if EDEADLOCK > ERR_MAX
1225 # define ERR_MAX EDEADLOCK
1230 [ERR_REMAP (EBFONT
)] = N_("Bad font file format"),
1231 # if EBFONT > ERR_MAX
1233 # define ERR_MAX EBFONT
1238 [ERR_REMAP (ENONET
)] = N_("Machine is not on the network"),
1239 # if ENONET > ERR_MAX
1241 # define ERR_MAX ENONET
1246 [ERR_REMAP (ENOPKG
)] = N_("Package not installed"),
1247 # if ENOPKG > ERR_MAX
1249 # define ERR_MAX ENOPKG
1254 [ERR_REMAP (EADV
)] = N_("Advertise error"),
1257 # define ERR_MAX EADV
1262 [ERR_REMAP (ESRMNT
)] = N_("Srmount error"),
1263 # if ESRMNT > ERR_MAX
1265 # define ERR_MAX ESRMNT
1270 [ERR_REMAP (ECOMM
)] = N_("Communication error on send"),
1271 # if ECOMM > ERR_MAX
1273 # define ERR_MAX ECOMM
1278 [ERR_REMAP (EDOTDOT
)] = N_("RFS specific error"),
1279 # if EDOTDOT > ERR_MAX
1281 # define ERR_MAX EDOTDOT
1286 [ERR_REMAP (ENOTUNIQ
)] = N_("Name not unique on network"),
1287 # if ENOTUNIQ > ERR_MAX
1289 # define ERR_MAX ENOTUNIQ
1294 [ERR_REMAP (EBADFD
)] = N_("File descriptor in bad state"),
1295 # if EBADFD > ERR_MAX
1297 # define ERR_MAX EBADFD
1302 [ERR_REMAP (EREMCHG
)] = N_("Remote address changed"),
1303 # if EREMCHG > ERR_MAX
1305 # define ERR_MAX EREMCHG
1310 [ERR_REMAP (ELIBACC
)] = N_("Can not access a needed shared library"),
1311 # if ELIBACC > ERR_MAX
1313 # define ERR_MAX ELIBACC
1318 [ERR_REMAP (ELIBBAD
)] = N_("Accessing a corrupted shared library"),
1319 # if ELIBBAD > ERR_MAX
1321 # define ERR_MAX ELIBBAD
1326 [ERR_REMAP (ELIBSCN
)] = N_(".lib section in a.out corrupted"),
1327 # if ELIBSCN > ERR_MAX
1329 # define ERR_MAX ELIBSCN
1334 [ERR_REMAP (ELIBMAX
)] = N_("Attempting to link in too many shared libraries"),
1335 # if ELIBMAX > ERR_MAX
1337 # define ERR_MAX ELIBMAX
1342 [ERR_REMAP (ELIBEXEC
)] = N_("Cannot exec a shared library directly"),
1343 # if ELIBEXEC > ERR_MAX
1345 # define ERR_MAX ELIBEXEC
1350 [ERR_REMAP (ESTRPIPE
)] = N_("Streams pipe error"),
1351 # if ESTRPIPE > ERR_MAX
1353 # define ERR_MAX ESTRPIPE
1358 [ERR_REMAP (EUCLEAN
)] = N_("Structure needs cleaning"),
1359 # if EUCLEAN > ERR_MAX
1361 # define ERR_MAX EUCLEAN
1366 [ERR_REMAP (ENOTNAM
)] = N_("Not a XENIX named type file"),
1367 # if ENOTNAM > ERR_MAX
1369 # define ERR_MAX ENOTNAM
1374 [ERR_REMAP (ENAVAIL
)] = N_("No XENIX semaphores available"),
1375 # if ENAVAIL > ERR_MAX
1377 # define ERR_MAX ENAVAIL
1382 [ERR_REMAP (EISNAM
)] = N_("Is a named type file"),
1383 # if EISNAM > ERR_MAX
1385 # define ERR_MAX EISNAM
1390 [ERR_REMAP (EREMOTEIO
)] = N_("Remote I/O error"),
1391 # if EREMOTEIO > ERR_MAX
1393 # define ERR_MAX EREMOTEIO
1398 [ERR_REMAP (ENOMEDIUM
)] = N_("No medium found"),
1399 # if ENOMEDIUM > ERR_MAX
1401 # define ERR_MAX ENOMEDIUM
1406 [ERR_REMAP (EMEDIUMTYPE
)] = N_("Wrong medium type"),
1407 # if EMEDIUMTYPE > ERR_MAX
1409 # define ERR_MAX EMEDIUMTYPE
1414 [ERR_REMAP (ENOKEY
)] = N_("Required key not available"),
1415 # if ENOKEY > ERR_MAX
1417 # define ERR_MAX ENOKEY
1422 [ERR_REMAP (EKEYEXPIRED
)] = N_("Key has expired"),
1423 # if EKEYEXPIRED > ERR_MAX
1425 # define ERR_MAX EKEYEXPIRED
1430 [ERR_REMAP (EKEYREVOKED
)] = N_("Key has been revoked"),
1431 # if EKEYREVOKED > ERR_MAX
1433 # define ERR_MAX EKEYREVOKED
1438 [ERR_REMAP (EKEYREJECTED
)] = N_("Key was rejected by service"),
1439 # if EKEYREJECTED > ERR_MAX
1441 # define ERR_MAX EKEYREJECTED
1446 [ERR_REMAP (EOWNERDEAD
)] = N_("Owner died"),
1447 # if EOWNERDEAD > ERR_MAX
1449 # define ERR_MAX EOWNERDEAD
1452 #ifdef ENOTRECOVERABLE
1454 [ERR_REMAP (ENOTRECOVERABLE
)] = N_("State not recoverable"),
1455 # if ENOTRECOVERABLE > ERR_MAX
1457 # define ERR_MAX ENOTRECOVERABLE
1462 [ERR_REMAP (ERFKILL
)] = N_("Operation not possible due to RF-kill"),
1463 # if ERFKILL > ERR_MAX
1465 # define ERR_MAX ERFKILL
1470 [ERR_REMAP (EHWPOISON
)] = N_("Memory page has hardware error"),
1471 # if EHWPOISON > ERR_MAX
1473 # define ERR_MAX EHWPOISON
1479 (sizeof _sys_errlist_internal / sizeof _sys_errlist_internal [0])
1480 const int _sys_nerr_internal
= NERR
;
1482 #if !defined NOT_IN_libc && !ERRLIST_NO_COMPAT
1483 # include <errlist-compat.c>
1488 { asm volatile (" @@@ %0 @@@ " : : "i" (ERR_REMAP (ERR_MAX
))); }