46 static errno_struct errno_codes[] =
54 {
"EACCES", EACCES, },
56 #if defined (EADDRINUSE)
57 {
"EADDRINUSE", EADDRINUSE, },
59 #if defined (EADDRNOTAVAIL)
60 {
"EADDRNOTAVAIL", EADDRNOTAVAIL, },
62 #if defined (EAFNOSUPPORT)
63 {
"EAFNOSUPPORT", EAFNOSUPPORT, },
66 {
"EAGAIN", EAGAIN, },
68 #if defined (EALREADY)
69 {
"EALREADY", EALREADY, },
78 {
"ECHILD", ECHILD, },
80 #if defined (ECONNABORTED)
81 {
"ECONNABORTED", ECONNABORTED, },
83 #if defined (ECONNREFUSED)
84 {
"ECONNREFUSED", ECONNREFUSED, },
86 #if defined (ECONNRESET)
87 {
"ECONNRESET", ECONNRESET, },
90 {
"EDEADLK", EDEADLK, },
92 #if defined (EDESTADDRREQ)
93 {
"EDESTADDRREQ", EDESTADDRREQ, },
99 {
"EDQUOT", EDQUOT, },
102 {
"EEXIST", EEXIST, },
105 {
"EFAULT", EFAULT, },
110 #if defined (EHOSTDOWN)
111 {
"EHOSTDOWN", EHOSTDOWN, },
113 #if defined (EHOSTUNREACH)
114 {
"EHOSTUNREACH", EHOSTUNREACH, },
116 #if defined (EINPROGRESS)
117 {
"EINPROGRESS", EINPROGRESS, },
123 {
"EINVAL", EINVAL, },
128 #if defined (EISCONN)
129 {
"EISCONN", EISCONN, },
132 {
"EISDIR", EISDIR, },
138 {
"EMFILE", EMFILE, },
141 {
"EMLINK", EMLINK, },
143 #if defined (EMSGSIZE)
144 {
"EMSGSIZE", EMSGSIZE, },
146 #if defined (ENAMETOOLONG)
147 {
"ENAMETOOLONG", ENAMETOOLONG, },
149 #if defined (ENETDOWN)
150 {
"ENETDOWN", ENETDOWN, },
152 #if defined (ENETRESET)
153 {
"ENETRESET", ENETRESET, },
155 #if defined (ENETUNREACH)
156 {
"ENETUNREACH", ENETUNREACH, },
159 {
"ENFILE", ENFILE, },
161 #if defined (ENOBUFS)
162 {
"ENOBUFS", ENOBUFS, },
165 {
"ENODEV", ENODEV, },
168 {
"ENOENT", ENOENT, },
170 #if defined (ENOEXEC)
171 {
"ENOEXEC", ENOEXEC, },
174 {
"ENOLCK", ENOLCK, },
177 {
"ENOMEM", ENOMEM, },
179 #if defined (ENOPROTOOPT)
180 {
"ENOPROTOOPT", ENOPROTOOPT, },
183 {
"ENOSPC", ENOSPC, },
186 {
"ENOSYS", ENOSYS, },
188 #if defined (ENOTBLK)
189 {
"ENOTBLK", ENOTBLK, },
191 #if defined (ENOTCONN)
192 {
"ENOTCONN", ENOTCONN, },
194 #if defined (ENOTDIR)
195 {
"ENOTDIR", ENOTDIR, },
197 #if defined (ENOTEMPTY)
198 {
"ENOTEMPTY", ENOTEMPTY, },
200 #if defined (ENOTSOCK)
201 {
"ENOTSOCK", ENOTSOCK, },
204 {
"ENOTTY", ENOTTY, },
209 #if defined (EOPNOTSUPP)
210 {
"EOPNOTSUPP", EOPNOTSUPP, },
215 #if defined (EPFNOSUPPORT)
216 {
"EPFNOSUPPORT", EPFNOSUPPORT, },
221 #if defined (EPROTONOSUPPORT)
222 {
"EPROTONOSUPPORT", EPROTONOSUPPORT, },
224 #if defined (EPROTOTYPE)
225 {
"EPROTOTYPE", EPROTOTYPE, },
228 {
"ERANGE", ERANGE, },
230 #if defined (EREMOTE)
231 {
"EREMOTE", EREMOTE, },
233 #if defined (ERESTART)
234 {
"ERESTART", ERESTART, },
239 #if defined (ESHUTDOWN)
240 {
"ESHUTDOWN", ESHUTDOWN, },
242 #if defined (ESOCKTNOSUPPORT)
243 {
"ESOCKTNOSUPPORT", ESOCKTNOSUPPORT, },
246 {
"ESPIPE", ESPIPE, },
252 {
"ESTALE", ESTALE, },
254 #if defined (ETIMEDOUT)
255 {
"ETIMEDOUT", ETIMEDOUT, },
257 #if defined (ETOOMANYREFS)
258 {
"ETOOMANYREFS", ETOOMANYREFS, },
260 #if defined (ETXTBSY)
261 {
"ETXTBSY", ETXTBSY, },
264 {
"EUSERS", EUSERS, },
266 #if defined (EWOULDBLOCK)
267 {
"EWOULDBLOCK", EWOULDBLOCK, },
279 {
"ENOMSG", ENOMSG, },
281 #if defined (ENOTSUP)
282 {
"ENOTSUP", ENOTSUP, },
284 #if defined (ESTRPIPE)
285 {
"ESTRPIPE", ESTRPIPE, },
287 #if defined (EADDRINUSE)
288 {
"EADDRINUSE", EADDRINUSE, },
291 {
"EL3HLT", EL3HLT, },
296 #if defined (ENAVAIL)
297 {
"ENAVAIL", ENAVAIL, },
300 {
"ECHRNG", ECHRNG, },
302 #if defined (ENOTBLK)
303 {
"ENOTBLK", ENOTBLK, },
305 #if defined (ENOTNAM)
306 {
"ENOTNAM", ENOTNAM, },
309 {
"ELNRNG", ELNRNG, },
312 {
"ENOKEY", ENOKEY, },
320 #if defined (EBADSLT)
321 {
"EBADSLT", EBADSLT, },
323 #if defined (ECONNREFUSED)
324 {
"ECONNREFUSED", ECONNREFUSED, },
327 {
"ENOSTR", ENOSTR, },
329 #if defined (EISCONN)
330 {
"EISCONN", EISCONN, },
332 #if defined (EOVERFLOW)
333 {
"EOVERFLOW", EOVERFLOW, },
336 {
"ENONET", ENONET, },
338 #if defined (EKEYREVOKED)
339 {
"EKEYREVOKED", EKEYREVOKED, },
344 #if defined (ECONNRESET)
345 {
"ECONNRESET", ECONNRESET, },
347 #if defined (ELIBMAX)
348 {
"ELIBMAX", ELIBMAX, },
350 #if defined (EWOULDBLOCK)
351 {
"EWOULDBLOCK", EWOULDBLOCK, },
353 #if defined (EREMOTEIO)
354 {
"EREMOTEIO", EREMOTEIO, },
356 #if defined (ERFKILL)
357 {
"ERFKILL", ERFKILL, },
360 {
"ENOPKG", ENOPKG, },
362 #if defined (ELIBSCN)
363 {
"ELIBSCN", ELIBSCN, },
365 #if defined (EMEDIUMTYPE)
366 {
"EMEDIUMTYPE", EMEDIUMTYPE, },
368 #if defined (EDESTADDRREQ)
369 {
"EDESTADDRREQ", EDESTADDRREQ, },
371 #if defined (ENOTSOCK)
372 {
"ENOTSOCK", ENOTSOCK, },
377 #if defined (EINPROGRESS)
378 {
"EINPROGRESS", EINPROGRESS, },
381 {
"ERANGE", ERANGE, },
383 #if defined (EADDRNOTAVAIL)
384 {
"EADDRNOTAVAIL", EADDRNOTAVAIL, },
386 #if defined (EAFNOSUPPORT)
387 {
"EAFNOSUPPORT", EAFNOSUPPORT, },
393 {
"EILSEQ", EILSEQ, },
395 #if defined (EREMOTE)
396 {
"EREMOTE", EREMOTE, },
399 {
"ENOMEM", ENOMEM, },
401 #if defined (ENETUNREACH)
402 {
"ENETUNREACH", ENETUNREACH, },
407 #if defined (ENODATA)
408 {
"ENODATA", ENODATA, },
411 {
"EUSERS", EUSERS, },
413 #if defined (EOPNOTSUPP)
414 {
"EOPNOTSUPP", EOPNOTSUPP, },
417 {
"EPROTO", EPROTO, },
420 {
"EISNAM", EISNAM, },
423 {
"ESPIPE", ESPIPE, },
425 #if defined (EALREADY)
426 {
"EALREADY", EALREADY, },
428 #if defined (ENAMETOOLONG)
429 {
"ENAMETOOLONG", ENAMETOOLONG, },
431 #if defined (ENOEXEC)
432 {
"ENOEXEC", ENOEXEC, },
435 {
"EISDIR", EISDIR, },
437 #if defined (EBADRQC)
438 {
"EBADRQC", EBADRQC, },
441 {
"EEXIST", EEXIST, },
443 #if defined (EDOTDOT)
444 {
"EDOTDOT", EDOTDOT, },
446 #if defined (ELIBBAD)
447 {
"ELIBBAD", ELIBBAD, },
449 #if defined (EOWNERDEAD)
450 {
"EOWNERDEAD", EOWNERDEAD, },
456 {
"EFAULT", EFAULT, },
459 {
"EAGAIN", EAGAIN, },
461 #if defined (EDEADLOCK)
462 {
"EDEADLOCK", EDEADLOCK, },
465 {
"EXFULL", EXFULL, },
467 #if defined (ENOPROTOOPT)
468 {
"ENOPROTOOPT", ENOPROTOOPT, },
470 #if defined (ENETDOWN)
471 {
"ENETDOWN", ENETDOWN, },
473 #if defined (EPROTOTYPE)
474 {
"EPROTOTYPE", EPROTOTYPE, },
476 #if defined (EL2NSYNC)
477 {
"EL2NSYNC", EL2NSYNC, },
479 #if defined (ENETRESET)
480 {
"ENETRESET", ENETRESET, },
485 #if defined (EUCLEAN)
486 {
"EUCLEAN", EUCLEAN, },
491 #if defined (ESHUTDOWN)
492 {
"ESHUTDOWN", ESHUTDOWN, },
494 #if defined (EMULTIHOP)
495 {
"EMULTIHOP", EMULTIHOP, },
497 #if defined (EPROTONOSUPPORT)
498 {
"EPROTONOSUPPORT", EPROTONOSUPPORT, },
501 {
"ENFILE", ENFILE, },
504 {
"ENOLCK", ENOLCK, },
506 #if defined (ECONNABORTED)
507 {
"ECONNABORTED", ECONNABORTED, },
509 #if defined (ECANCELED)
510 {
"ECANCELED", ECANCELED, },
512 #if defined (EDEADLK)
513 {
"EDEADLK", EDEADLK, },
515 #if defined (ENOLINK)
516 {
"ENOLINK", ENOLINK, },
519 {
"ESRMNT", ESRMNT, },
521 #if defined (ENOTDIR)
522 {
"ENOTDIR", ENOTDIR, },
528 {
"EINVAL", EINVAL, },
531 {
"ENOTTY", ENOTTY, },
534 {
"ENOANO", ENOANO, },
540 {
"ENOENT", ENOENT, },
542 #if defined (EPFNOSUPPORT)
543 {
"EPFNOSUPPORT", EPFNOSUPPORT, },
545 #if defined (EBADMSG)
546 {
"EBADMSG", EBADMSG, },
548 #if defined (ENOMEDIUM)
549 {
"ENOMEDIUM", ENOMEDIUM, },
552 {
"EL2HLT", EL2HLT, },
558 {
"EBFONT", EBFONT, },
560 #if defined (EKEYEXPIRED)
561 {
"EKEYEXPIRED", EKEYEXPIRED, },
563 #if defined (EMSGSIZE)
564 {
"EMSGSIZE", EMSGSIZE, },
567 {
"ENOCSI", ENOCSI, },
570 {
"EL3RST", EL3RST, },
573 {
"ENOSPC", ENOSPC, },
578 #if defined (ENOBUFS)
579 {
"ENOBUFS", ENOBUFS, },
582 {
"ENOSYS", ENOSYS, },
584 #if defined (EHOSTDOWN)
585 {
"EHOSTDOWN", EHOSTDOWN, },
588 {
"EBADFD", EBADFD, },
593 #if defined (ENOTCONN)
594 {
"ENOTCONN", ENOTCONN, },
597 {
"ESTALE", ESTALE, },
600 {
"EDQUOT", EDQUOT, },
602 #if defined (EKEYREJECTED)
603 {
"EKEYREJECTED", EKEYREJECTED, },
605 #if defined (ENOTRECOVERABLE)
606 {
"ENOTRECOVERABLE", ENOTRECOVERABLE, },
609 {
"EMFILE", EMFILE, },
612 {
"EACCES", EACCES, },
623 #if defined (ELIBEXEC)
624 {
"ELIBEXEC", ELIBEXEC, },
626 #if defined (ETOOMANYREFS)
627 {
"ETOOMANYREFS", ETOOMANYREFS, },
629 #if defined (ELIBACC)
630 {
"ELIBACC", ELIBACC, },
632 #if defined (ENOTUNIQ)
633 {
"ENOTUNIQ", ENOTUNIQ, },
638 #if defined (ERESTART)
639 {
"ERESTART", ERESTART, },
641 #if defined (EUNATCH)
642 {
"EUNATCH", EUNATCH, },
644 #if defined (ESOCKTNOSUPPORT)
645 {
"ESOCKTNOSUPPORT", ESOCKTNOSUPPORT, },
647 #if defined (ETIMEDOUT)
648 {
"ETIMEDOUT", ETIMEDOUT, },
654 {
"ENODEV", ENODEV, },
656 #if defined (ETXTBSY)
657 {
"ETXTBSY", ETXTBSY, },
659 #if defined (EHWPOISON)
660 {
"EHWPOISON", EHWPOISON, },
663 {
"EMLINK", EMLINK, },
666 {
"ECHILD", ECHILD, },
668 #if defined (EHOSTUNREACH)
669 {
"EHOSTUNREACH", EHOSTUNREACH, },
671 #if defined (EREMCHG)
672 {
"EREMCHG", EREMCHG, },
674 #if defined (ENOTEMPTY)
675 {
"ENOTEMPTY", ENOTEMPTY, },
684 errno_struct *ptr = errno_codes;
708 ::error (
"unable to create errno object!");
739 for (std::map<std::string, int>::const_iterator p =
errno_tbl.begin ();
743 retval.
assign (p->first, p->second);