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