1errno.h(0P) POSIX Programmer's Manual errno.h(0P)
2
3
4
6 This manual page is part of the POSIX Programmer's Manual. The Linux
7 implementation of this interface may differ (consult the corresponding
8 Linux manual page for details of Linux behavior), or the interface may
9 not be implemented on Linux.
10
11
13 errno.h — system error numbers
14
16 #include <errno.h>
17
19 Some of the functionality described on this reference page extends the
20 ISO C standard. Any conflict between the requirements described here
21 and the ISO C standard is unintentional. This volume of POSIX.1‐2008
22 defers to the ISO C standard.
23
24 The ISO C standard only requires the symbols [EDOM], [EILSEQ], and
25 [ERANGE] to be defined.
26
27 The <errno.h> header shall provide a declaration or definition for
28 errno. The symbol errno shall expand to a modifiable lvalue of type
29 int. It is unspecified whether errno is a macro or an identifier
30 declared with external linkage. If a macro definition is suppressed in
31 order to access an actual object, or a program defines an identifier
32 with the name errno, the behavior is undefined.
33
34 The <errno.h> header shall define the following macros which shall
35 expand to integer constant expressions with type int, distinct positive
36 values (except as noted below), and which shall be suitable for use in
37 #if preprocessing directives:
38
39 E2BIG Argument list too long.
40
41 EACCES Permission denied.
42
43 EADDRINUSE
44 Address in use.
45
46 EADDRNOTAVAIL
47 Address not available.
48
49 EAFNOSUPPORT
50 Address family not supported.
51
52 EAGAIN Resource unavailable, try again (may be the same value as
53 [EWOULDBLOCK]).
54
55 EALREADY
56 Connection already in progress.
57
58 EBADF Bad file descriptor.
59
60 EBADMSG
61 Bad message.
62
63 EBUSY Device or resource busy.
64
65 ECANCELED
66 Operation canceled.
67
68 ECHILD No child processes.
69
70 ECONNABORTED
71 Connection aborted.
72
73 ECONNREFUSED
74 Connection refused.
75
76 ECONNRESET
77 Connection reset.
78
79 EDEADLK
80 Resource deadlock would occur.
81
82 EDESTADDRREQ
83 Destination address required.
84
85 EDOM Mathematics argument out of domain of function.
86
87 EDQUOT Reserved.
88
89 EEXIST File exists.
90
91 EFAULT Bad address.
92
93 EFBIG File too large.
94
95 EHOSTUNREACH
96 Host is unreachable.
97
98 EIDRM Identifier removed.
99
100 EILSEQ Illegal byte sequence.
101
102 EINPROGRESS
103 Operation in progress.
104
105 EINTR Interrupted function.
106
107 EINVAL Invalid argument.
108
109 EIO I/O error.
110
111 EISCONN
112 Socket is connected.
113
114 EISDIR Is a directory.
115
116 ELOOP Too many levels of symbolic links.
117
118 EMFILE File descriptor value too large.
119
120 EMLINK Too many links.
121
122 EMSGSIZE
123 Message too large.
124
125 EMULTIHOP
126 Reserved.
127
128 ENAMETOOLONG
129 Filename too long.
130
131 ENETDOWN
132 Network is down.
133
134 ENETRESET
135 Connection aborted by network.
136
137 ENETUNREACH
138 Network unreachable.
139
140 ENFILE Too many files open in system.
141
142 ENOBUFS
143 No buffer space available.
144
145 ENODATA
146 No message is available on the STREAM head read queue.
147
148 ENODEV No such device.
149
150 ENOENT No such file or directory.
151
152 ENOEXEC
153 Executable file format error.
154
155 ENOLCK No locks available.
156
157 ENOLINK
158 Reserved.
159
160 ENOMEM Not enough space.
161
162 ENOMSG No message of the desired type.
163
164 ENOPROTOOPT
165 Protocol not available.
166
167 ENOSPC No space left on device.
168
169 ENOSR No STREAM resources.
170
171 ENOSTR Not a STREAM.
172
173 ENOSYS Function not supported.
174
175 ENOTCONN
176 The socket is not connected.
177
178 ENOTDIR
179 Not a directory or a symbolic link to a directory.
180
181 ENOTEMPTY
182 Directory not empty.
183
184 ENOTRECOVERABLE
185 State not recoverable.
186
187 ENOTSOCK
188 Not a socket.
189
190 ENOTSUP
191 Not supported (may be the same value as [EOPNOTSUPP]).
192
193 ENOTTY Inappropriate I/O control operation.
194
195 ENXIO No such device or address.
196
197 EOPNOTSUPP
198 Operation not supported on socket (may be the same value as
199 [ENOTSUP]).
200
201 EOVERFLOW
202 Value too large to be stored in data type.
203
204 EOWNERDEAD
205 Previous owner died.
206
207 EPERM Operation not permitted.
208
209 EPIPE Broken pipe.
210
211 EPROTO Protocol error.
212
213 EPROTONOSUPPORT
214 Protocol not supported.
215
216 EPROTOTYPE
217 Protocol wrong type for socket.
218
219 ERANGE Result too large.
220
221 EROFS Read-only file system.
222
223 ESPIPE Invalid seek.
224
225 ESRCH No such process.
226
227 ESTALE Reserved.
228
229 ETIME Stream ioctl() timeout.
230
231 ETIMEDOUT
232 Connection timed out.
233
234 ETXTBSY
235 Text file busy.
236
237 EWOULDBLOCK
238 Operation would block (may be the same value as [EAGAIN]).
239
240 EXDEV Cross-device link.
241
242 The following sections are informative.
243
245 Additional error numbers may be defined on conforming systems; see the
246 System Interfaces volume of POSIX.1‐2008.
247
249 None.
250
252 None.
253
255 The System Interfaces volume of POSIX.1‐2008, Section 2.3, Error Num‐
256 bers
257
259 Portions of this text are reprinted and reproduced in electronic form
260 from IEEE Std 1003.1, 2013 Edition, Standard for Information Technology
261 -- Portable Operating System Interface (POSIX), The Open Group Base
262 Specifications Issue 7, Copyright (C) 2013 by the Institute of Electri‐
263 cal and Electronics Engineers, Inc and The Open Group. (This is
264 POSIX.1-2008 with the 2013 Technical Corrigendum 1 applied.) In the
265 event of any discrepancy between this version and the original IEEE and
266 The Open Group Standard, the original IEEE and The Open Group Standard
267 is the referee document. The original Standard can be obtained online
268 at http://www.unix.org/online.html .
269
270 Any typographical or formatting errors that appear in this page are
271 most likely to have been introduced during the conversion of the source
272 files to man page format. To report such errors, see https://www.ker‐
273 nel.org/doc/man-pages/reporting_bugs.html .
274
275
276
277IEEE/The Open Group 2013 errno.h(0P)