errno.h Header File errno.h
Error numbers used by errno()
#include <errno.h>
errno.h is a header that defines and describes the error numbers
returned in the external variable errno. The following lists the
the error numbers defined in errno.h:
EIO: I/O error
A physical I/O error occurred on a device driver. This
could be a tape error, a CRC error on a disk, or a framing
error on a synchronous HDLC link.
ENXIO: no such device or address
A specified minor device is invalid or the unit is powered
off. This error might also indicate that a block number
given to a minor device is out of range. suload returns
this error code if the driver was not loaded.
E2BIG: argument list too long
The number of bytes of arguments passed in an exec is too
large.
ENOEXEC: exec format error
The file given to exec or load is not a valid load module
(probably because it does not have the magic number at the
beginning), even though its mode indicates that it is ex-
ecutable.
EBADF: bad file descriptor
A file descriptor passed to a system call is not open or is
inappropriate to the call. For example, a file descriptor
opened only for reading may not be accessed for writing.
ECHILD: no children
A process issued a wait call when it had no outstanding
children.
EAGAIN: no more processes
The system cannot create any more processes, either because
it is out of table space or because the invoking process has
reached its process quota.
ENOMEM: not enough memory
The system cannot accomodate the memory size requested (by
exec or brk, for example).
EACCES: permission denied
The user is denied access to a file.
EFAULT: bad address
An address in a system call does not lie in the address
space. Normally, this generates a SIGSYS signal, which ter-
minates the process.
COHERENT Lexicon Page 1
errno.h Header File errno.h
ENOTBLK: block device required
The mount and umount calls require block devices as ar-
guments.
EBUSY: mount device busy
The special file passed to mount is already mounted, or the
file system given to umount has open files or active working
directories.
EEXIST: file exists
An attempt was made to link to a file that already exists.
EXDEV: cross-device link
A link to a file must be on the same logical device as the
file.
ENODEV: no such device
An unsuitable I/O call was made to a device; for example, an
attempts to read a line printer.
ENOTDIR: not a directory
A component in a path name exists but is not a directory, or
a chdir or chroot argument is not a directory.
EISDIR: is a directory
Directories cannot be opened for writing.
EINVAL: invalid argument
An argument to a system call is out of range, e.g., a bad
signal number to kill or umount of a device that is not
mounted.
ENFILE: file table overflow
A table inside the COHERENT system has run out of space,
preventing further open calls and related requests.
EMFILE: too many open files
A process is limited to 20 open files at any time.
ENOTTY: not a tty
An ioctl call was made to a file which is not a terminal
device.
ETXTBSY: text file busy
The text segment of a shared load module is unwritable.
Therefore, an attempt to execute it while it is being writ-
ten or an attempt to open it for writing while it is being
executed will fail.
EFBIG: file too large
The block mapping algorithm for files fails above
1,082,201,088 bytes.
COHERENT Lexicon Page 2
errno.h Header File errno.h
ENOSPC: no space left on device
Indicates an attempt to write on a file when no free blocks
remain on the associated device. This error may also in-
dicate that a device is out of i-nodes, so a file cannot be
created.
ESPIPE: illegal seek
It is illegal to lseek on a pipe.
EROFS: read-only file system
Indicates an attempt to write on a file system mounted read-
only (e.g., with creat or unlink).
EMLINK: too many links
A new link to a file cannot be created, because the link
count would exceed 32,767.
EPIPE: broken pipe
A write occurred on a pipe for which there are no readers.
This condition is accompanied by the signal SIGPIPE, so the
error will only be seen if the signal is ignored or caught.
EDOM: mathematics library domain error
An argument to a mathematical routine falls outside the
domain of the function.
ERANGE: mathematics library result too large
The result of a mathematical function is too large to be
represented.
EKSPACE: out of kernel space
No more space is available for tables inside the COHERENT
system. Table space is dynamically allocated from a fixed
area of memory; it may be possible to increase the size of
the area by reconfiguring the system.
ENOLOAD: driver not loaded
Not used.
EBADFMT: bad exec format
An attempt was made to exec a file on the wrong type of
processor.
EDATTN: device needs attention
The device being referenced needs operator attention. For
example, a line printer might need paper.
EDBUSY: device busy
The indicated device is busy. For load, this implies that
the given major device number is already in use.
***** See Also *****
errno, header files, perror(), signal()
COHERENT Lexicon Page 3