1// Copyright Beman Dawes 2005.
2// Use, modification, and distribution is subject to the Boost Software
3// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
4// http://www.boost.org/LICENSE_1_0.txt)
5
6// See library home page at http://www.boost.org/libs/system
7
8#ifndef BOOST_SYSTEM_DETAIL_CERRNO_HPP_INCLUDED
9#define BOOST_SYSTEM_DETAIL_CERRNO_HPP_INCLUDED
10
11#include <cerrno>
12
13// supply errno values likely to be missing, particularly on Windows
14
15#ifndef EAFNOSUPPORT
16#define EAFNOSUPPORT 9901
17#endif
18
19#ifndef EADDRINUSE
20#define EADDRINUSE 9902
21#endif
22
23#ifndef EADDRNOTAVAIL
24#define EADDRNOTAVAIL 9903
25#endif
26
27#ifndef EISCONN
28#define EISCONN 9904
29#endif
30
31#ifndef EBADMSG
32#define EBADMSG 9905
33#endif
34
35#ifndef ECONNABORTED
36#define ECONNABORTED 9906
37#endif
38
39#ifndef EALREADY
40#define EALREADY 9907
41#endif
42
43#ifndef ECONNREFUSED
44#define ECONNREFUSED 9908
45#endif
46
47#ifndef ECONNRESET
48#define ECONNRESET 9909
49#endif
50
51#ifndef EDESTADDRREQ
52#define EDESTADDRREQ 9910
53#endif
54
55#ifndef EHOSTUNREACH
56#define EHOSTUNREACH 9911
57#endif
58
59#ifndef EIDRM
60#define EIDRM 9912
61#endif
62
63#ifndef EMSGSIZE
64#define EMSGSIZE 9913
65#endif
66
67#ifndef ENETDOWN
68#define ENETDOWN 9914
69#endif
70
71#ifndef ENETRESET
72#define ENETRESET 9915
73#endif
74
75#ifndef ENETUNREACH
76#define ENETUNREACH 9916
77#endif
78
79#ifndef ENOBUFS
80#define ENOBUFS 9917
81#endif
82
83#ifndef ENOLINK
84#define ENOLINK 9918
85#endif
86
87#ifndef ENODATA
88#define ENODATA 9919
89#endif
90
91#ifndef ENOMSG
92#define ENOMSG 9920
93#endif
94
95#ifndef ENOPROTOOPT
96#define ENOPROTOOPT 9921
97#endif
98
99#ifndef ENOSR
100#define ENOSR 9922
101#endif
102
103#ifndef ENOTSOCK
104#define ENOTSOCK 9923
105#endif
106
107#ifndef ENOSTR
108#define ENOSTR 9924
109#endif
110
111#ifndef ENOTCONN
112#define ENOTCONN 9925
113#endif
114
115#ifndef ENOTSUP
116#define ENOTSUP 9926
117#endif
118
119#ifndef ECANCELED
120#define ECANCELED 9927
121#endif
122
123#ifndef EINPROGRESS
124#define EINPROGRESS 9928
125#endif
126
127#ifndef EOPNOTSUPP
128#define EOPNOTSUPP 9929
129#endif
130
131#ifndef EWOULDBLOCK
132#define EWOULDBLOCK 9930
133#endif
134
135#ifndef EOWNERDEAD
136#define EOWNERDEAD 9931
137#endif
138
139#ifndef EPROTO
140#define EPROTO 9932
141#endif
142
143#ifndef EPROTONOSUPPORT
144#define EPROTONOSUPPORT 9933
145#endif
146
147#ifndef ENOTRECOVERABLE
148#define ENOTRECOVERABLE 9934
149#endif
150
151#ifndef ETIME
152#define ETIME 9935
153#endif
154
155#ifndef ETXTBSY
156#define ETXTBSY 9936
157#endif
158
159#ifndef ETIMEDOUT
160#define ETIMEDOUT 9938
161#endif
162
163#ifndef ELOOP
164#define ELOOP 9939
165#endif
166
167#ifndef EOVERFLOW
168#define EOVERFLOW 9940
169#endif
170
171#ifndef EPROTOTYPE
172#define EPROTOTYPE 9941
173#endif
174
175#ifndef ENOSYS
176#define ENOSYS 9942
177#endif
178
179#ifndef EINVAL
180#define EINVAL 9943
181#endif
182
183#ifndef ERANGE
184#define ERANGE 9944
185#endif
186
187#ifndef EILSEQ
188#define EILSEQ 9945
189#endif
190
191// Windows Mobile doesn't appear to define these:
192
193#ifndef E2BIG
194#define E2BIG 9946
195#endif
196
197#ifndef EDOM
198#define EDOM 9947
199#endif
200
201#ifndef EFAULT
202#define EFAULT 9948
203#endif
204
205#ifndef EBADF
206#define EBADF 9949
207#endif
208
209#ifndef EPIPE
210#define EPIPE 9950
211#endif
212
213#ifndef EXDEV
214#define EXDEV 9951
215#endif
216
217#ifndef EBUSY
218#define EBUSY 9952
219#endif
220
221#ifndef ENOTEMPTY
222#define ENOTEMPTY 9953
223#endif
224
225#ifndef ENOEXEC
226#define ENOEXEC 9954
227#endif
228
229#ifndef EEXIST
230#define EEXIST 9955
231#endif
232
233#ifndef EFBIG
234#define EFBIG 9956
235#endif
236
237#ifndef ENAMETOOLONG
238#define ENAMETOOLONG 9957
239#endif
240
241#ifndef ENOTTY
242#define ENOTTY 9958
243#endif
244
245#ifndef EINTR
246#define EINTR 9959
247#endif
248
249#ifndef ESPIPE
250#define ESPIPE 9960
251#endif
252
253#ifndef EIO
254#define EIO 9961
255#endif
256
257#ifndef EISDIR
258#define EISDIR 9962
259#endif
260
261#ifndef ECHILD
262#define ECHILD 9963
263#endif
264
265#ifndef ENOLCK
266#define ENOLCK 9964
267#endif
268
269#ifndef ENOSPC
270#define ENOSPC 9965
271#endif
272
273#ifndef ENXIO
274#define ENXIO 9966
275#endif
276
277#ifndef ENODEV
278#define ENODEV 9967
279#endif
280
281#ifndef ENOENT
282#define ENOENT 9968
283#endif
284
285#ifndef ESRCH
286#define ESRCH 9969
287#endif
288
289#ifndef ENOTDIR
290#define ENOTDIR 9970
291#endif
292
293#ifndef ENOMEM
294#define ENOMEM 9971
295#endif
296
297#ifndef EPERM
298#define EPERM 9972
299#endif
300
301#ifndef EACCES
302#define EACCES 9973
303#endif
304
305#ifndef EROFS
306#define EROFS 9974
307#endif
308
309#ifndef EDEADLK
310#define EDEADLK 9975
311#endif
312
313#ifndef EAGAIN
314#define EAGAIN 9976
315#endif
316
317#ifndef ENFILE
318#define ENFILE 9977
319#endif
320
321#ifndef EMFILE
322#define EMFILE 9978
323#endif
324
325#ifndef EMLINK
326#define EMLINK 9979
327#endif
328
329#endif // #ifndef BOOST_SYSTEM_DETAIL_CERRNO_HPP_INCLUDED
330

source code of boost/libs/system/include/boost/system/detail/cerrno.hpp