Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

errno(2) [ultrix man page]

errno(2)							System Calls Manual							  errno(2)

       errno - introduction error numbers

       #include <errno.h>

       The  external  variable	is  set  when  an  error occurs in a system call.  You can use the value stored in errno to obtain a more detailed
       description of the error than is given in the system call's return value.  The variable is not cleared on successful system calls,  so  you
       should check its value only when an error is reported.

Return Values
       Most  system calls have one or more return values.  An error condition is indicated by an otherwise impossible return value.  This value is
       almost always -1. All return codes and values from system call are of type int, unless otherwise noted.

       When an error occurs, most calls store one of the following values, as defined in <errno.h>, in the errno variable:

       0    Unused.

       1  EPERM  Not owner
	    This error indicates an attempt to modify a file in some way forbidden except to its owner or the superuser.  It is also returned  for
	    attempts by ordinary users to do things allowed only to the superuser.

       2  ENOENT  No such file or directory
	    This  error  occurs when a file name is specified and the file should exist but does not, or when one of the directories in a pathname
	    does not exist.

       3  ESRCH  No such process
	    The process whose number was given to and does not exist or is already dead.

       4  EINTR  Interrupted system call
	    An asynchronous signal (such as interrupt or quit) that the program catches occurred during a system call.	If execution resumes after
	    the asynchronous signal is processed, it will appear as if the interrupted system call returned this error condition.

       5  EIO  I/O error
	    Some physical I/O error occurred during a or This error may occur on a call following the one to which it actually applies.

       6  ENXIO  No such device or address
	    I/O  on a special file refers to a subdevice that does not exist or to an area beyond the limits of the device.  This error might also
	    occur when an illegal tape drive unit number is selected or a disk pack is not loaded on a drive.

       7  E2BIG  Arg list too long
	    An argument list longer than 10240 bytes is presented to

       8  ENOEXEC  Exec format error
	    A request is made to execute a file that does not start with a valid magic number, although it has the appropriate	permissions.   For
	    further information, see

       9  EBADF  Bad file number
	    Either  a file descriptor refers to no open file or a read request is made for a file that is open only for writing. Likewise, a write
	    request made to a file open only for reading causes this error.

       10  ECHILD  No children
	    The program issued a call and the process has no active or unwaited-for children.

       11  EAGAIN  No more processes
	    In a fork, the system's process table is full or the user is not allowed to create any more processes.

       12  ENOMEM  Not enough core
	    During an or a program asks for more core or swap space than the system is able to supply.	A lack of swap space is normally a  tempo-
	    rary  condition.   However,  a  lack of core is not a temporary condition; the maximum size of the text, data, and stack segments is a
	    system parameter.

       13  EACCES  Permission denied
	    The call attempts to access a file in some way forbidden by the protection system.

       14  EFAULT  Bad address
	    The system encountered a hardware fault in attempting to access the arguments of a system call.

       15  ENOTBLK  Block device required
	    The call specifies a plain file where a block device is required.

       16  EBUSY  Mount device busy
	    The call attempts to mount a device that was already mounted or to unmount a device on which there was an active  file  directory,	an
	    open file, current directory, mounted-on file, or active text segment.  Or, the call attempts to modify a partition table incorrectly.
	    See the restrictions in

       17  EEXIST  File exists
	    An existing file is mentioned in an inappropriate context.

       18  EXDEV  Cross-device link
	    The call attempts to form a hard link to a file on another device.

       19  ENODEV  No such device
	    The call attempts to perform an invalid operation on a device, such as write to a read-only device.

       20  ENOTDIR  Not a directory
	    A file that is not a directory is specified where a directory is required, for example, in a pathname or as an argument to

       21  EISDIR  Is a directory
	    The call attempts to write on a directory.

       22  EINVAL  Invalid argument
	    An invalid argument is specified.  For example, the call might specify dismounting a device that is not mounted or reading or  writing
	    a file for which has generated a negative pointer.	This error is also set by math functions, as described in the reference page.

       23  ENFILE  File table overflow
	    The system's table of open files is full, and temporarily no more calls can be processed.

       24  EMFILE  Too many open files
	    The process has opened too many files. The customary configuration limit is 64 files per process.

       25  ENOTTY  Not a typewriter
	    The file named in an call is not a terminal or one of the other devices to which the call applies.

       26  ETXTBSY  Text file busy
	    The  call  attempts  to execute a pure-procedure program that is currently open for writing or reading.  Or, the call attempts to open
	    for writing a pure-procedure program that is being executed.

       27  EFBIG  File too large
	    The size of a file exceeds the maximum (about 1.0E9 bytes).

       28  ENOSPC  No space left on device
	    A device runs out of space during a write to an ordinary file.

       29  ESPIPE  Illegal seek
	    An call specifies a pipe or other device that does not support.

       30  EROFS  Restricted operation on a file system
	    The call attempts to access a file or directory on a mounted file system when that permission has been revoked.  For example, the call
	    attempts to write a file on a file system mounted read only.

       31  EMLINK  Too many links
	    The call attempts to make more than {LINK_MAX} hard links to a file.

       32  EPIPE  Broken pipe
	    The  call  attempts  to write on a pipe or socket for which there is no process to read the data.  This condition normally generates a
	    signal; the error is returned if the signal is ignored.

       33  EDOM  Argument too large
	    The argument of a function in the math package (which is described in the ULTRIX Reference Pages, Section 3: Subroutines ) is  out	of
	    the domain of the function.

       34  ERANGE  Result too large
	    The  value	of  a function in the math package (which is described in the ULTRIX Reference Pages, Section 3: Subroutines ) is unrepre-
	    sentable within machine precision.

       35  EWOULDBLOCK	Operation would block
	    The call attempts an operation that would cause a process to block on an object in nonblocking mode.  For further information, see

       36  EINPROGRESS	Operation now in progress
	    The call is performing an operation that takes a long time to complete, such as a call, on a nonblocking object.  For further informa-
	    tion, see

       37  EALREADY  Operation already in progress
	    The call attempts an operation on a nonblocking object that already has an operation in progress.

       38  ENOTSOCK  Socket operation on non-socket
	    The call attempts to perform a socket-specific operation on an entity that is not a socket.

       39  EDESTADDRREQ  Destination address required
	    A required address is omitted from an operation on a socket.

       40  EMSGSIZE  Message too long
	    A message sent on a socket is larger than the internal message buffer.

       41  EPROTOTYPE  Protocol wrong type for socket
	    A  protocol is specified that does not support the semantics of the socket type requested. For example, you cannot use the ARPA Inter-
	    net UDP protocol with type SOCK_STREAM.

       42  ENOPROTOOPT	Protocol not available
	    A bad option was specified in a or call.

       43  EPROTONOSUPPORT  Protocol not supported
	    The protocol has not been configured into the system or an implementation for it does not exist.

       44  ESOCKTNOSUPPORT  Socket type not supported
	    The support for the socket type has not been configured into the system or an implementation for it does not exist.

       45  EOPNOTSUPP  Error-operation not supported
	    The call attempts an unsupported operation, such as trying to accept a connection on a datagram socket.

       46  EPFNOSUPPORT  Protocol family not supported
	    The protocol family has not been configured into the system or an implementation for it does not exist.

       47  EAFNOSUPPORT  Address family not supported by protocol family
	    An address incompatible with the requested protocol is specified.  For example, you cannot use PUP Internet addresses with ARPA Inter-
	    net protocols.

       48  EADDRINUSE  Address already in use
	    The call attempts to use an address that is already in use. Each address can be used only once.

       49  EADDRNOTAVAIL  Cannot assign requested address
	    The call attempts to create a socket with an address not on this machine.

       50  ENETDOWN  Network is down
	    A socket operation encountered a network that is not operating.

       51  ENETUNREACH	Network is unreachable
	    A socket operation attempts to reach an unreachable network.

       52  ENETRESET  Network dropped connection on reset
	    The host to which the program was connected to crashed and rebooted.

       53  ECONNABORTED  Software caused connection abort
	    A connection abort has occurred internal to your host machine.

       54  ECONNRESET  Connection reset by peer
	    A connection has been forcibly closed by a peer.  This error usually results from the peer executing a call.

       55  ENOBUFS  No buffer space available
	    The system lacks sufficient buffer space to perform an operation on a socket or pipe.

       56  EISCONN  Socket is already connected
	    A  request	names  an already connected socket, or a or request on a connected socket specifies a destination other than the connected

       57  ENOTCONN  Socket is not connected
	    A request to send or receive data could not complete because the socket is not connected.

       58  ESHUTDOWN  Cannot send after socket shutdown
	    A request to send data could not complete because the socket has already been shut down with a previous call.

       59  ETOOMANYREFS  Too many references: cannot splice

       60  ETIMEDOUT  Connection timed out
	    A request failed because the connected party did not properly respond after a period of time.  (The timeout period is dependent on the
	    communication  protocol.)	For example, this error occurs when an NFS file system is mounted with the ``soft,'' option and the server
	    is not responding to file operation requests.

       61  ECONNREFUSED  Connection refused
	    No connection could be made because the target machine actively refused it.  This error usually results from trying to  connect  to  a
	    service that is inactive on the remote host.

       62  ELOOP  Too many levels of symbolic links
	    A pathname lookup involves more than eight symbolic links.

       63  ENAMETOOLONG  File name too long
	    A component of a path name exceeds 255 characters, or an entire path name exceeds 1023 characters.

       64  EHOSTDOWN  Host is down
	    A socket operation has failed because the destination host is down.

       65  EHOSTUNREACH  No route to host
	    A socket operation attempts to reach an unreachable host.

       66  ENOTEMPTY  Directory not empty
	    A directory with entries other than dot (.) and dot-dot (..) is specified in a or call.

       67  EPROCLIM  Too many processes
	    Creating  the  process would cause the user to exceed the number of user processes that are available.  The maxuprc option in the con-
	    figuration file controls this limit.

       68  EUSERS  Too many users
	    A login process would exceed the maximum allowable login processes for which the system is licensed.

       69  EDQUOT  Disk quota exceeded
	    A to an ordinary file, the creation of a directory or symbolic link, or the creation of a  directory  entry  has  failed  because  the
	    user's  quota of disk blocks is exhausted. Or, the allocation of an inode for a newly created file has failed because the user's quota
	    of inodes is exhausted.

       70  ESTALE  Stale NFS file handle
	    Information used by the operating system to identify a file in an NFS file system that is no longer valid.	This  error  code  results
	    from  operating  on  a  remote file that no longer exists on the server or resides in a file system that has been moved to a different
	    device on the server.

       71  EREMOTE  Too many levels of remote in path
	    A remote NFS client has requested an operation on a file that is remote to the server as well.  An attempt has been made to  mount	an
	    NFS remote file system that is not local to the specified server.  This error code cannot occur except in response to a failed call.

       72  ENOMSG  No message of desired type
	    An attempt was made to receive a message of a type that does not exist on the specified message queue.  For further information, see

       73  EIDRM  Identifier removed
	    In semaphores, shared memory, or message queues, the caller tried to access the identifier after it had been removed from the system.

       74  EALIGN  Alignment error
	    Alignment error of some type has occurred, for example, cluster, page, or block.

       75  ENOLCK  No locks available
	    A file locking request could not be fulfilled because a system limit on the number of active locks would have been exceeded.

       76  ENOSYS  Function not implemented
	    The requested function is not available in ULTRIX.	Included for POSIX compatibility only.

See Also
Man Page