errno.h.0p (6080B)
- '\" et
- .TH errno.h "0P" 2017 "IEEE/The Open Group" "POSIX Programmer's Manual"
- .\"
- .SH PROLOG
- This manual page is part of the POSIX Programmer's Manual.
- The Linux implementation of this interface may differ (consult
- the corresponding Linux manual page for details of Linux behavior),
- or the interface may not be implemented on Linux.
- .\"
- .SH NAME
- errno.h
- \(em system error numbers
- .SH SYNOPSIS
- .LP
- .nf
- #include <errno.h>
- .fi
- .SH DESCRIPTION
- Some of the functionality described on this reference page extends
- the ISO\ C standard. Any conflict between the requirements described here
- and the ISO\ C standard is unintentional. This volume of POSIX.1\(hy2017 defers to the ISO\ C standard.
- .P
- The ISO\ C standard only requires the symbols
- .BR [EDOM] ,
- .BR [EILSEQ] ,
- and
- .BR [ERANGE]
- to be defined.
- .P
- The
- .IR <errno.h>
- header shall provide a declaration or definition for
- .IR errno .
- The symbol
- .IR errno
- shall expand to a modifiable lvalue of type
- .BR int .
- It is unspecified whether
- .IR errno
- is a macro or an identifier declared with external linkage. If a macro
- definition is suppressed in order to access an actual object, or a
- program defines an identifier with the name
- .IR errno ,
- the behavior is undefined.
- .P
- The
- .IR <errno.h>
- header shall define the following macros which shall expand to
- integer constant expressions with type
- .BR int ,
- distinct positive values (except as noted below), and which shall be
- suitable for use in
- .BR #if
- preprocessing directives:
- .TP
- .BR E2BIG
- Argument list too long.
- .TP
- .BR EACCES
- Permission denied.
- .TP
- .BR EADDRINUSE
- Address in use.
- .TP
- .BR EADDRNOTAVAIL
- Address not available.
- .TP
- .BR EAFNOSUPPORT
- Address family not supported.
- .TP
- .BR EAGAIN
- Resource unavailable, try again (may be the same value as
- .BR [EWOULDBLOCK] ).
- .TP
- .BR EALREADY
- Connection already in progress.
- .TP
- .BR EBADF
- Bad file descriptor.
- .TP
- .BR EBADMSG
- Bad message.
- .TP
- .BR EBUSY
- Device or resource busy.
- .TP
- .BR ECANCELED
- Operation canceled.
- .TP
- .BR ECHILD
- No child processes.
- .TP
- .BR ECONNABORTED
- Connection aborted.
- .TP
- .BR ECONNREFUSED
- Connection refused.
- .TP
- .BR ECONNRESET
- Connection reset.
- .TP
- .BR EDEADLK
- Resource deadlock would occur.
- .TP
- .BR EDESTADDRREQ
- Destination address required.
- .TP
- .BR EDOM
- Mathematics argument out of domain of function.
- .TP
- .BR EDQUOT
- Reserved.
- .TP
- .BR EEXIST
- File exists.
- .TP
- .BR EFAULT
- Bad address.
- .TP
- .BR EFBIG
- File too large.
- .TP
- .BR EHOSTUNREACH
- Host is unreachable.
- .TP
- .BR EIDRM
- Identifier removed.
- .TP
- .BR EILSEQ
- Illegal byte sequence.
- .TP
- .BR EINPROGRESS
- Operation in progress.
- .TP
- .BR EINTR
- Interrupted function.
- .TP
- .BR EINVAL
- Invalid argument.
- .TP
- .BR EIO
- I/O error.
- .TP
- .BR EISCONN
- Socket is connected.
- .TP
- .BR EISDIR
- Is a directory.
- .TP
- .BR ELOOP
- Too many levels of symbolic links.
- .TP
- .BR EMFILE
- File descriptor value too large.
- .TP
- .BR EMLINK
- Too many links.
- .TP
- .BR EMSGSIZE
- Message too large.
- .TP
- .BR EMULTIHOP
- Reserved.
- .TP
- .BR ENAMETOOLONG
- Filename too long.
- .TP
- .BR ENETDOWN
- Network is down.
- .TP
- .BR ENETRESET
- Connection aborted by network.
- .TP
- .BR ENETUNREACH
- Network unreachable.
- .TP
- .BR ENFILE
- Too many files open in system.
- .TP
- .BR ENOBUFS
- No buffer space available.
- .TP
- .BR ENODATA
- No message is available on the STREAM head read queue.
- .TP
- .BR ENODEV
- No such device.
- .TP
- .BR ENOENT
- No such file or directory.
- .TP
- .BR ENOEXEC
- Executable file format error.
- .TP
- .BR ENOLCK
- No locks available.
- .TP
- .BR ENOLINK
- Reserved.
- .TP
- .BR ENOMEM
- Not enough space.
- .TP
- .BR ENOMSG
- No message of the desired type.
- .TP
- .BR ENOPROTOOPT
- Protocol not available.
- .TP
- .BR ENOSPC
- No space left on device.
- .TP
- .BR ENOSR
- No STREAM resources.
- .TP
- .BR ENOSTR
- Not a STREAM.
- .TP
- .BR ENOSYS
- Functionality not supported.
- .TP
- .BR ENOTCONN
- The socket is not connected.
- .TP
- .BR ENOTDIR
- Not a directory or a symbolic link to a directory.
- .TP
- .BR ENOTEMPTY
- Directory not empty.
- .TP
- .BR ENOTRECOVERABLE
- .br
- State not recoverable.
- .TP
- .BR ENOTSOCK
- Not a socket.
- .TP
- .BR ENOTSUP
- Not supported (may be the same value as
- .BR [EOPNOTSUPP] ).
- .TP
- .BR ENOTTY
- Inappropriate I/O control operation.
- .TP
- .BR ENXIO
- No such device or address.
- .TP
- .BR EOPNOTSUPP
- Operation not supported on socket (may be the same value as
- .BR [ENOTSUP] ).
- .TP
- .BR EOVERFLOW
- Value too large to be stored in data type.
- .TP
- .BR EOWNERDEAD
- Previous owner died.
- .TP
- .BR EPERM
- Operation not permitted.
- .TP
- .BR EPIPE
- Broken pipe.
- .TP
- .BR EPROTO
- Protocol error.
- .TP
- .BR EPROTONOSUPPORT
- .br
- Protocol not supported.
- .TP
- .BR EPROTOTYPE
- Protocol wrong type for socket.
- .TP
- .BR ERANGE
- Result too large.
- .TP
- .BR EROFS
- Read-only file system.
- .TP
- .BR ESPIPE
- Invalid seek.
- .TP
- .BR ESRCH
- No such process.
- .TP
- .BR ESTALE
- Reserved.
- .TP
- .BR ETIME
- Stream
- \fIioctl\fR()
- timeout.
- .TP
- .BR ETIMEDOUT
- Connection timed out.
- .TP
- .BR ETXTBSY
- Text file busy.
- .TP
- .BR EWOULDBLOCK
- Operation would block (may be the same value as
- .BR [EAGAIN] ).
- .TP
- .BR EXDEV
- Cross-device link.
- .LP
- .IR "The following sections are informative."
- .SH "APPLICATION USAGE"
- Additional error numbers may be defined on conforming systems; see
- the System Interfaces volume of POSIX.1\(hy2017.
- .SH RATIONALE
- None.
- .SH "FUTURE DIRECTIONS"
- None.
- .SH "SEE ALSO"
- The System Interfaces volume of POSIX.1\(hy2017,
- .IR "Section 2.3" ", " "Error Numbers"
- .\"
- .SH COPYRIGHT
- Portions of this text are reprinted and reproduced in electronic form
- from IEEE Std 1003.1-2017, Standard for Information Technology
- -- Portable Operating System Interface (POSIX), The Open Group Base
- Specifications Issue 7, 2018 Edition,
- Copyright (C) 2018 by the Institute of
- Electrical and Electronics Engineers, Inc and The Open Group.
- In the event of any discrepancy between this version and the original IEEE and
- The Open Group Standard, the original IEEE and The Open Group Standard
- is the referee document. The original Standard can be obtained online at
- http://www.opengroup.org/unix/online.html .
- .PP
- Any typographical or formatting errors that appear
- in this page are most likely
- to have been introduced during the conversion of the source files to
- man page format. To report such errors, see
- https://www.kernel.org/doc/man-pages/reporting_bugs.html .