4 TRANS Only the owner of the file (or other resource)
5 TRANS or processes with special privileges can perform the operation. */
6 _S(EPERM
, N_("Operation not permitted"))
10 TRANS This is a ``file doesn't exist'' error
11 TRANS for ordinary files that are referenced in contexts where they are
12 TRANS expected to already exist. */
13 _S(ENOENT
, N_("No such file or directory"))
17 TRANS No process matches the specified process ID. */
18 _S(ESRCH
, N_("No such process"))
22 TRANS An asynchronous signal occurred and prevented
23 TRANS completion of the call. When this happens, you should try the call
26 TRANS You can choose to have functions resume after a signal that is handled,
27 TRANS rather than failing with @code{EINTR}; see @ref{Interrupted
29 _S(EINTR
, N_("Interrupted system call"))
33 TRANS Usually used for physical read or write errors. */
34 _S(EIO
, N_("Input/output error"))
38 TRANS The system tried to use the device
39 TRANS represented by a file you specified, and it couldn't find the device.
40 TRANS This can mean that the device file was installed incorrectly, or that
41 TRANS the physical device is missing or not correctly attached to the
43 _S(ENXIO
, N_("No such device or address"))
47 TRANS Used when the arguments passed to a new program
48 TRANS being executed with one of the @code{exec} functions (@pxref{Executing a
49 TRANS File}) occupy too much memory space. This condition never arises on
50 TRANS @gnuhurdsystems{}. */
51 _S(E2BIG
, N_("Argument list too long"))
55 TRANS Invalid executable file format. This condition is detected by the
56 TRANS @code{exec} functions; see @ref{Executing a File}. */
57 _S(ENOEXEC
, N_("Exec format error"))
61 TRANS For example, I/O on a descriptor that has been
62 TRANS closed or reading from a descriptor open only for writing (or vice
64 _S(EBADF
, N_("Bad file descriptor"))
68 TRANS This error happens on operations that are
69 TRANS supposed to manipulate child processes, when there aren't any processes
70 TRANS to manipulate. */
71 _S(ECHILD
, N_("No child processes"))
75 TRANS Allocating a system resource would have resulted in a
76 TRANS deadlock situation. The system does not guarantee that it will notice
77 TRANS all such situations. This error means you got lucky and the system
78 TRANS noticed; it might just hang. @xref{File Locks}, for an example. */
79 _S(EDEADLK
, N_("Resource deadlock avoided"))
83 TRANS The system cannot allocate more virtual memory
84 TRANS because its capacity is full. */
85 _S(ENOMEM
, N_("Cannot allocate memory"))
89 TRANS The file permissions do not allow the attempted operation. */
90 _S(EACCES
, N_("Permission denied"))
94 TRANS An invalid pointer was detected.
95 TRANS On @gnuhurdsystems{}, this error never happens; you get a signal instead. */
96 _S(EFAULT
, N_("Bad address"))
100 TRANS A file that isn't a block special file was given in a situation that
101 TRANS requires one. For example, trying to mount an ordinary file as a file
102 TRANS system in Unix gives this error. */
103 _S(ENOTBLK
, N_("Block device required"))
107 TRANS A system resource that can't be shared is already in use.
108 TRANS For example, if you try to delete a file that is the root of a currently
109 TRANS mounted filesystem, you get this error. */
110 _S(EBUSY
, N_("Device or resource busy"))
114 TRANS An existing file was specified in a context where it only
115 TRANS makes sense to specify a new file. */
116 _S(EEXIST
, N_("File exists"))
120 TRANS An attempt to make an improper link across file systems was detected.
121 TRANS This happens not only when you use @code{link} (@pxref{Hard Links}) but
122 TRANS also when you rename a file with @code{rename} (@pxref{Renaming Files}). */
123 _S(EXDEV
, N_("Invalid cross-device link"))
127 TRANS The wrong type of device was given to a function that expects a
128 TRANS particular sort of device. */
129 _S(ENODEV
, N_("No such device"))
133 TRANS A file that isn't a directory was specified when a directory is required. */
134 _S(ENOTDIR
, N_("Not a directory"))
138 TRANS You cannot open a directory for writing,
139 TRANS or create or remove hard links to it. */
140 _S(EISDIR
, N_("Is a directory"))
144 TRANS This is used to indicate various kinds of problems
145 TRANS with passing the wrong argument to a library function. */
146 _S(EINVAL
, N_("Invalid argument"))
150 TRANS The current process has too many files open and can't open any more.
151 TRANS Duplicate descriptors do count toward this limit.
153 TRANS In BSD and GNU, the number of open files is controlled by a resource
154 TRANS limit that can usually be increased. If you get this error, you might
155 TRANS want to increase the @code{RLIMIT_NOFILE} limit or make it unlimited;
156 TRANS @pxref{Limits on Resources}. */
157 _S(EMFILE
, N_("Too many open files"))
161 TRANS There are too many distinct file openings in the entire system. Note
162 TRANS that any number of linked channels count as just one file opening; see
163 TRANS @ref{Linked Channels}. This error never occurs on @gnuhurdsystems{}. */
164 _S(ENFILE
, N_("Too many open files in system"))
168 TRANS Inappropriate I/O control operation, such as trying to set terminal
169 TRANS modes on an ordinary file. */
170 _S(ENOTTY
, N_("Inappropriate ioctl for device"))
174 TRANS An attempt to execute a file that is currently open for writing, or
175 TRANS write to a file that is currently being executed. Often using a
176 TRANS debugger to run a program is considered having it open for writing and
177 TRANS will cause this error. (The name stands for ``text file busy''.) This
178 TRANS is not an error on @gnuhurdsystems{}; the text is copied as necessary. */
179 _S(ETXTBSY
, N_("Text file busy"))
183 TRANS The size of a file would be larger than allowed by the system. */
184 _S(EFBIG
, N_("File too large"))
188 TRANS Write operation on a file failed because the
189 TRANS disk is full. */
190 _S(ENOSPC
, N_("No space left on device"))
194 TRANS Invalid seek operation (such as on a pipe). */
195 _S(ESPIPE
, N_("Illegal seek"))
199 TRANS An attempt was made to modify something on a read-only file system. */
200 _S(EROFS
, N_("Read-only file system"))
204 TRANS The link count of a single file would become too large.
205 TRANS @code{rename} can cause this error if the file being renamed already has
206 TRANS as many links as it can take (@pxref{Renaming Files}). */
207 _S(EMLINK
, N_("Too many links"))
211 TRANS There is no process reading from the other end of a pipe.
212 TRANS Every library function that returns this error code also generates a
213 TRANS @code{SIGPIPE} signal; this signal terminates the program if not handled
214 TRANS or blocked. Thus, your program will never actually see @code{EPIPE}
215 TRANS unless it has handled or blocked @code{SIGPIPE}. */
216 _S(EPIPE
, N_("Broken pipe"))
220 TRANS Used by mathematical functions when an argument value does
221 TRANS not fall into the domain over which the function is defined. */
222 _S(EDOM
, N_("Numerical argument out of domain"))
226 TRANS Used by mathematical functions when the result value is
227 TRANS not representable because of overflow or underflow. */
228 _S(ERANGE
, N_("Numerical result out of range"))
232 TRANS The call might work if you try again
233 TRANS later. The macro @code{EWOULDBLOCK} is another name for @code{EAGAIN};
234 TRANS they are always the same in @theglibc{}.
236 TRANS This error can happen in a few different situations:
238 TRANS @itemize @bullet
240 TRANS An operation that would block was attempted on an object that has
241 TRANS non-blocking mode selected. Trying the same operation again will block
242 TRANS until some external condition makes it possible to read, write, or
243 TRANS connect (whatever the operation). You can use @code{select} to find out
244 TRANS when the operation will be possible; @pxref{Waiting for I/O}.
246 TRANS @strong{Portability Note:} In many older Unix systems, this condition
247 TRANS was indicated by @code{EWOULDBLOCK}, which was a distinct error code
248 TRANS different from @code{EAGAIN}. To make your program portable, you should
249 TRANS check for both codes and treat them the same.
252 TRANS A temporary resource shortage made an operation impossible. @code{fork}
253 TRANS can return this error. It indicates that the shortage is expected to
254 TRANS pass, so your program can try the call again later and it may succeed.
255 TRANS It is probably a good idea to delay for a few seconds before trying it
256 TRANS again, to allow time for other processes to release scarce resources.
257 TRANS Such shortages are usually fairly serious and affect the whole system,
258 TRANS so usually an interactive program should report the error to the user
259 TRANS and return to its command loop.
260 TRANS @end itemize */
261 _S(EAGAIN
, N_("Resource temporarily unavailable"))
265 TRANS An operation that cannot complete immediately was initiated on an object
266 TRANS that has non-blocking mode selected. Some functions that must always
267 TRANS block (such as @code{connect}; @pxref{Connecting}) never return
268 TRANS @code{EAGAIN}. Instead, they return @code{EINPROGRESS} to indicate that
269 TRANS the operation has begun and will take some time. Attempts to manipulate
270 TRANS the object before the call completes return @code{EALREADY}. You can
271 TRANS use the @code{select} function to find out when the pending operation
272 TRANS has completed; @pxref{Waiting for I/O}. */
273 _S(EINPROGRESS
, N_("Operation now in progress"))
277 TRANS An operation is already in progress on an object that has non-blocking
278 TRANS mode selected. */
279 _S(EALREADY
, N_("Operation already in progress"))
283 TRANS A file that isn't a socket was specified when a socket is required. */
284 _S(ENOTSOCK
, N_("Socket operation on non-socket"))
288 TRANS The size of a message sent on a socket was larger than the supported
289 TRANS maximum size. */
290 _S(EMSGSIZE
, N_("Message too long"))
294 TRANS The socket type does not support the requested communications protocol. */
295 _S(EPROTOTYPE
, N_("Protocol wrong type for socket"))
299 TRANS You specified a socket option that doesn't make sense for the
300 TRANS particular protocol being used by the socket. @xref{Socket Options}. */
301 _S(ENOPROTOOPT
, N_("Protocol not available"))
303 #ifdef EPROTONOSUPPORT
305 TRANS The socket domain does not support the requested communications protocol
306 TRANS (perhaps because the requested protocol is completely invalid).
307 TRANS @xref{Creating a Socket}. */
308 _S(EPROTONOSUPPORT
, N_("Protocol not supported"))
310 #ifdef ESOCKTNOSUPPORT
312 TRANS The socket type is not supported. */
313 _S(ESOCKTNOSUPPORT
, N_("Socket type not supported"))
317 TRANS The operation you requested is not supported. Some socket functions
318 TRANS don't make sense for all types of sockets, and others may not be
319 TRANS implemented for all communications protocols. On @gnuhurdsystems{}, this
320 TRANS error can happen for many calls when the object does not support the
321 TRANS particular operation; it is a generic indication that the server knows
322 TRANS nothing to do for that call. */
323 _S(EOPNOTSUPP
, N_("Operation not supported"))
327 TRANS The socket communications protocol family you requested is not supported. */
328 _S(EPFNOSUPPORT
, N_("Protocol family not supported"))
332 TRANS The address family specified for a socket is not supported; it is
333 TRANS inconsistent with the protocol being used on the socket. @xref{Sockets}. */
334 _S(EAFNOSUPPORT
, N_("Address family not supported by protocol"))
338 TRANS The requested socket address is already in use. @xref{Socket Addresses}. */
339 _S(EADDRINUSE
, N_("Address already in use"))
343 TRANS The requested socket address is not available; for example, you tried
344 TRANS to give a socket a name that doesn't match the local host name.
345 TRANS @xref{Socket Addresses}. */
346 _S(EADDRNOTAVAIL
, N_("Cannot assign requested address"))
350 TRANS A socket operation failed because the network was down. */
351 _S(ENETDOWN
, N_("Network is down"))
355 TRANS A socket operation failed because the subnet containing the remote host
356 TRANS was unreachable. */
357 _S(ENETUNREACH
, N_("Network is unreachable"))
361 TRANS A network connection was reset because the remote host crashed. */
362 _S(ENETRESET
, N_("Network dropped connection on reset"))
366 TRANS A network connection was aborted locally. */
367 _S(ECONNABORTED
, N_("Software caused connection abort"))
371 TRANS A network connection was closed for reasons outside the control of the
372 TRANS local host, such as by the remote machine rebooting or an unrecoverable
373 TRANS protocol violation. */
374 _S(ECONNRESET
, N_("Connection reset by peer"))
378 TRANS The kernel's buffers for I/O operations are all in use. In GNU, this
379 TRANS error is always synonymous with @code{ENOMEM}; you may get one or the
380 TRANS other from network operations. */
381 _S(ENOBUFS
, N_("No buffer space available"))
385 TRANS You tried to connect a socket that is already connected.
386 TRANS @xref{Connecting}. */
387 _S(EISCONN
, N_("Transport endpoint is already connected"))
391 TRANS The socket is not connected to anything. You get this error when you
392 TRANS try to transmit data over a socket, without first specifying a
393 TRANS destination for the data. For a connectionless socket (for datagram
394 TRANS protocols, such as UDP), you get @code{EDESTADDRREQ} instead. */
395 _S(ENOTCONN
, N_("Transport endpoint is not connected"))
399 TRANS No default destination address was set for the socket. You get this
400 TRANS error when you try to transmit data over a connectionless socket,
401 TRANS without first specifying a destination for the data with @code{connect}. */
402 _S(EDESTADDRREQ
, N_("Destination address required"))
406 TRANS The socket has already been shut down. */
407 _S(ESHUTDOWN
, N_("Cannot send after transport endpoint shutdown"))
410 _S(ETOOMANYREFS
, N_("Too many references: cannot splice"))
414 TRANS A socket operation with a specified timeout received no response during
415 TRANS the timeout period. */
416 _S(ETIMEDOUT
, N_("Connection timed out"))
420 TRANS A remote host refused to allow the network connection (typically because
421 TRANS it is not running the requested service). */
422 _S(ECONNREFUSED
, N_("Connection refused"))
426 TRANS Too many levels of symbolic links were encountered in looking up a file name.
427 TRANS This often indicates a cycle of symbolic links. */
428 _S(ELOOP
, N_("Too many levels of symbolic links"))
432 TRANS Filename too long (longer than @code{PATH_MAX}; @pxref{Limits for
433 TRANS Files}) or host name too long (in @code{gethostname} or
434 TRANS @code{sethostname}; @pxref{Host Identification}). */
435 _S(ENAMETOOLONG
, N_("File name too long"))
439 TRANS The remote host for a requested network connection is down. */
440 _S(EHOSTDOWN
, N_("Host is down"))
443 TRANS The remote host for a requested network connection is not reachable. */
445 _S(EHOSTUNREACH
, N_("No route to host"))
449 TRANS Directory not empty, where an empty directory was expected. Typically,
450 TRANS this error occurs when you are trying to delete a directory. */
451 _S(ENOTEMPTY
, N_("Directory not empty"))
455 TRANS The file quota system is confused because there are too many users.
456 TRANS @c This can probably happen in a GNU system when using NFS. */
457 _S(EUSERS
, N_("Too many users"))
461 TRANS The user's disk quota was exceeded. */
462 _S(EDQUOT
, N_("Disk quota exceeded"))
466 TRANS This indicates an internal confusion in the
467 TRANS file system which is due to file system rearrangements on the server host
468 TRANS for NFS file systems or corruption in other file systems.
469 TRANS Repairing this condition usually requires unmounting, possibly repairing
470 TRANS and remounting the file system. */
471 _S(ESTALE
, N_("Stale file handle"))
475 TRANS An attempt was made to NFS-mount a remote file system with a file name that
476 TRANS already specifies an NFS-mounted file.
477 TRANS (This is an error on some operating systems, but we expect it to work
478 TRANS properly on @gnuhurdsystems{}, making this error code impossible.) */
479 _S(EREMOTE
, N_("Object is remote"))
483 TRANS This is used by the file locking facilities; see
484 TRANS @ref{File Locks}. This error is never generated by @gnuhurdsystems{}, but
485 TRANS it can result from an operation to an NFS server running another
486 TRANS operating system. */
487 _S(ENOLCK
, N_("No locks available"))
491 TRANS This indicates that the function called is
492 TRANS not implemented at all, either in the C library itself or in the
493 TRANS operating system. When you get this error, you can be sure that this
494 TRANS particular function will always fail with @code{ENOSYS} unless you
495 TRANS install a new version of the C library or the operating system. */
496 _S(ENOSYS
, N_("Function not implemented"))
500 TRANS While decoding a multibyte character the function came along an invalid
501 TRANS or an incomplete sequence of bytes or the given wide character is invalid. */
502 _S(EILSEQ
, N_("Invalid or incomplete multibyte or wide character"))
505 _S(EBADMSG
, N_("Bad message"))
508 _S(EIDRM
, N_("Identifier removed"))
511 _S(EMULTIHOP
, N_("Multihop attempted"))
514 _S(ENODATA
, N_("No data available"))
517 _S(ENOLINK
, N_("Link has been severed"))
520 _S(ENOMSG
, N_("No message of desired type"))
523 _S(ENOSR
, N_("Out of streams resources"))
526 _S(ENOSTR
, N_("Device not a stream"))
529 _S(EOVERFLOW
, N_("Value too large for defined data type"))
532 _S(EPROTO
, N_("Protocol error"))
535 _S(ETIME
, N_("Timer expired"))
539 TRANS An asynchronous operation was canceled before it
540 TRANS completed. @xref{Asynchronous I/O}. When you call @code{aio_cancel},
541 TRANS the normal result is for the operations affected to complete with this
542 TRANS error; @pxref{Cancel AIO Operations}. */
543 _S(ECANCELED
, N_("Operation canceled"))
546 _S(EOWNERDEAD
, N_("Owner died"))
548 #ifdef ENOTRECOVERABLE
549 _S(ENOTRECOVERABLE
, N_("State not recoverable"))
552 _S(ERESTART
, N_("Interrupted system call should be restarted"))
555 _S(ECHRNG
, N_("Channel number out of range"))
558 _S(EL2NSYNC
, N_("Level 2 not synchronized"))
561 _S(EL3HLT
, N_("Level 3 halted"))
564 _S(EL3RST
, N_("Level 3 reset"))
567 _S(ELNRNG
, N_("Link number out of range"))
570 _S(EUNATCH
, N_("Protocol driver not attached"))
573 _S(ENOCSI
, N_("No CSI structure available"))
576 _S(EL2HLT
, N_("Level 2 halted"))
579 _S(EBADE
, N_("Invalid exchange"))
582 _S(EBADR
, N_("Invalid request descriptor"))
585 _S(EXFULL
, N_("Exchange full"))
588 _S(ENOANO
, N_("No anode"))
591 _S(EBADRQC
, N_("Invalid request code"))
594 _S(EBADSLT
, N_("Invalid slot"))
596 #if defined EDEADLOCK && EDEADLOCK != EDEADLK
597 _S (EDEADLOCK
, N_ ("File locking deadlock error"))
600 _S(EBFONT
, N_("Bad font file format"))
603 _S(ENONET
, N_("Machine is not on the network"))
606 _S(ENOPKG
, N_("Package not installed"))
609 _S(EADV
, N_("Advertise error"))
612 _S(ESRMNT
, N_("Srmount error"))
615 _S(ECOMM
, N_("Communication error on send"))
618 _S(EDOTDOT
, N_("RFS specific error"))
621 _S(ENOTUNIQ
, N_("Name not unique on network"))
624 _S(EBADFD
, N_("File descriptor in bad state"))
627 _S(EREMCHG
, N_("Remote address changed"))
630 _S(ELIBACC
, N_("Can not access a needed shared library"))
633 _S(ELIBBAD
, N_("Accessing a corrupted shared library"))
636 _S(ELIBSCN
, N_(".lib section in a.out corrupted"))
639 _S(ELIBMAX
, N_("Attempting to link in too many shared libraries"))
642 _S(ELIBEXEC
, N_("Cannot exec a shared library directly"))
645 _S(ESTRPIPE
, N_("Streams pipe error"))
648 _S(EUCLEAN
, N_("Structure needs cleaning"))
651 _S(ENOTNAM
, N_("Not a XENIX named type file"))
654 _S(ENAVAIL
, N_("No XENIX semaphores available"))
657 _S(EISNAM
, N_("Is a named type file"))
660 _S(EREMOTEIO
, N_("Remote I/O error"))
663 _S(ENOMEDIUM
, N_("No medium found"))
666 _S(EMEDIUMTYPE
, N_("Wrong medium type"))
669 _S(ENOKEY
, N_("Required key not available"))
672 _S(EKEYEXPIRED
, N_("Key has expired"))
675 _S(EKEYREVOKED
, N_("Key has been revoked"))
678 _S(EKEYREJECTED
, N_("Key was rejected by service"))
681 _S(ERFKILL
, N_("Operation not possible due to RF-kill"))
684 _S(EHWPOISON
, N_("Memory page has hardware error"))
687 _S(EBADRPC
, N_("RPC struct is bad"))
691 TRANS The file was the wrong type for the
692 TRANS operation, or a data file had the wrong format.
694 TRANS On some systems @code{chmod} returns this error if you try to set the
695 TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}. */
696 _S(EFTYPE
, N_("Inappropriate file type or format"))
699 _S(EPROCUNAVAIL
, N_("RPC bad procedure for program"))
702 _S(EAUTH
, N_("Authentication error"))
706 TRANS On @gnuhurdsystems{}, opening a file returns this error when the file is
707 TRANS translated by a program and the translator program dies while starting
708 TRANS up, before it has connected to the file. */
709 _S(EDIED
, N_("Translator died"))
712 _S(ERPCMISMATCH
, N_("RPC version wrong"))
716 TRANS You did @strong{what}? */
717 _S(EGREGIOUS
, N_("You really blew it this time"))
721 TRANS This means that the per-user limit on new process would be exceeded by
722 TRANS an attempted @code{fork}. @xref{Limits on Resources}, for details on
723 TRANS the @code{RLIMIT_NPROC} limit. */
724 _S(EPROCLIM
, N_("Too many processes"))
728 TRANS This error code has no purpose. */
729 _S(EGRATUITOUS
, N_("Gratuitous error"))
731 #if defined (ENOTSUP) && ENOTSUP != EOPNOTSUPP
733 TRANS A function returns this error when certain parameter
734 TRANS values are valid, but the functionality they request is not available.
735 TRANS This can mean that the function does not implement a particular command
736 TRANS or option value or flag bit at all. For functions that operate on some
737 TRANS object given in a parameter, such as a file descriptor or a port, it
738 TRANS might instead mean that only @emph{that specific object} (file
739 TRANS descriptor, port, etc.) is unable to support the other parameters given;
740 TRANS different file descriptors might support different ranges of parameter
743 TRANS If the entire function is not available at all in the implementation,
744 TRANS it returns @code{ENOSYS} instead. */
745 _S(ENOTSUP
, N_("Not supported"))
748 _S(EPROGMISMATCH
, N_("RPC program version wrong"))
752 TRANS On @gnuhurdsystems{}, servers supporting the @code{term} protocol return
753 TRANS this error for certain operations when the caller is not in the
754 TRANS foreground process group of the terminal. Users do not usually see this
755 TRANS error because functions such as @code{read} and @code{write} translate
756 TRANS it into a @code{SIGTTIN} or @code{SIGTTOU} signal. @xref{Job Control},
757 TRANS for information on process groups and these signals. */
758 _S(EBACKGROUND
, N_("Inappropriate operation for background process"))
762 TRANS Go home and have a glass of warm, dairy-fresh milk.
763 TRANS @c Okay. Since you are dying to know, I'll tell you.
764 TRANS @c This is a joke, obviously. There is a children's song which begins,
765 TRANS @c "Old McDonald had a farm, e-i-e-i-o." Every time I see the (real)
766 TRANS @c errno macro EIO, I think about that song. Probably most of my
767 TRANS @c compatriots who program on Unix do, too. One of them must have stayed
768 TRANS @c up a little too late one night and decided to add it to Hurd or Glibc.
769 TRANS @c Whoever did it should be castigated, but it made me laugh.
770 TRANS @c --jtobey@channel1.com
772 TRANS @c "bought the farm" means "died". -jtobey
774 TRANS @c Translators, please do not translate this litteraly, translate it into
775 TRANS @c an idiomatic funny way of saying that the computer died. */
776 _S(EIEIO
, N_("Computer bought the farm"))
778 #if defined (EWOULDBLOCK) && EWOULDBLOCK != EAGAIN
780 TRANS In @theglibc{}, this is another name for @code{EAGAIN} (above).
781 TRANS The values are always the same, on every operating system.
783 TRANS C libraries in many older Unix systems have @code{EWOULDBLOCK} as a
784 TRANS separate error code. */
785 _S(EWOULDBLOCK
, N_("Operation would block"))
788 _S(ENEEDAUTH
, N_("Need authenticator"))
792 TRANS The experienced user will know what is wrong.
793 TRANS @c This error code is a joke. Its perror text is part of the joke.
794 TRANS @c Don't change it. */
798 _S(EPROGUNAVAIL
, N_("RPC program not available"))