execute, spawn-pipe: Make multithread-safe on native Windows.
[gnulib.git] / lib / strerrorname_np.c
blobb2fb888a3137b0a0acd5206d1b669a72e4524e5d
1 /* Name of system error code.
2 Copyright (C) 2020 Free Software Foundation, Inc.
4 This program is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 3 of the License, or
7 (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with this program. If not, see <https://www.gnu.org/licenses/>. */
17 /* Written by Bruno Haible <bruno@clisp.org>, 2020. */
19 #include <config.h>
21 /* Specification. */
22 #include <string.h>
24 #include <errno.h>
26 const char *
27 strerrorname_np (int errnum)
29 switch (errnum)
31 /* Error codes specified by ISO C. */
32 case EDOM: return "EDOM";
33 case EILSEQ: return "EILSEQ";
34 case ERANGE: return "ERANGE";
36 /* Error codes specified by POSIX.
37 <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html> */
38 #if defined E2BIG
39 case E2BIG: return "E2BIG";
40 #endif
41 #if defined EACCES
42 case EACCES: return "EACCES";
43 #endif
44 #if defined EADDRINUSE
45 case EADDRINUSE: return "EADDRINUSE";
46 #endif
47 #if defined EADDRNOTAVAIL
48 case EADDRNOTAVAIL: return "EADDRNOTAVAIL";
49 #endif
50 #if defined EAFNOSUPPORT
51 case EAFNOSUPPORT: return "EAFNOSUPPORT";
52 #endif
53 #if defined EAGAIN
54 case EAGAIN: return "EAGAIN";
55 #endif
56 #if defined EALREADY
57 case EALREADY: return "EALREADY";
58 #endif
59 #if defined EBADF
60 case EBADF: return "EBADF";
61 #endif
62 #if defined EBADMSG
63 case EBADMSG: return "EBADMSG";
64 #endif
65 #if defined EBUSY
66 case EBUSY: return "EBUSY";
67 #endif
68 #if defined ECANCELED
69 case ECANCELED: return "ECANCELED";
70 #endif
71 #if defined ECHILD
72 case ECHILD: return "ECHILD";
73 #endif
74 #if defined ECONNABORTED
75 case ECONNABORTED: return "ECONNABORTED";
76 #endif
77 #if defined ECONNREFUSED
78 case ECONNREFUSED: return "ECONNREFUSED";
79 #endif
80 #if defined ECONNRESET
81 case ECONNRESET: return "ECONNRESET";
82 #endif
83 #if defined EDEADLK
84 case EDEADLK: return "EDEADLK";
85 #endif
86 #if defined EDESTADDRREQ
87 case EDESTADDRREQ: return "EDESTADDRREQ";
88 #endif
89 #if defined EDQUOT
90 case EDQUOT: return "EDQUOT";
91 #endif
92 #if defined EEXIST
93 case EEXIST: return "EEXIST";
94 #endif
95 #if defined EFAULT
96 case EFAULT: return "EFAULT";
97 #endif
98 #if defined EFBIG
99 case EFBIG: return "EFBIG";
100 #endif
101 #if defined EHOSTUNREACH
102 case EHOSTUNREACH: return "EHOSTUNREACH";
103 #endif
104 #if defined EIDRM
105 case EIDRM: return "EIDRM";
106 #endif
107 #if defined EINPROGRESS
108 case EINPROGRESS: return "EINPROGRESS";
109 #endif
110 #if defined EINTR
111 case EINTR: return "EINTR";
112 #endif
113 #if defined EINVAL
114 case EINVAL: return "EINVAL";
115 #endif
116 #if defined EIO
117 case EIO: return "EIO";
118 #endif
119 #if defined EISCONN
120 case EISCONN: return "EISCONN";
121 #endif
122 #if defined EISDIR
123 case EISDIR: return "EISDIR";
124 #endif
125 #if defined ELOOP
126 case ELOOP: return "ELOOP";
127 #endif
128 #if defined EMFILE
129 case EMFILE: return "EMFILE";
130 #endif
131 #if defined EMLINK
132 case EMLINK: return "EMLINK";
133 #endif
134 #if defined EMSGSIZE
135 case EMSGSIZE: return "EMSGSIZE";
136 #endif
137 #if defined EMULTIHOP
138 case EMULTIHOP: return "EMULTIHOP";
139 #endif
140 #if defined ENAMETOOLONG
141 case ENAMETOOLONG: return "ENAMETOOLONG";
142 #endif
143 #if defined ENETDOWN
144 case ENETDOWN: return "ENETDOWN";
145 #endif
146 #if defined ENETRESET
147 case ENETRESET: return "ENETRESET";
148 #endif
149 #if defined ENETUNREACH
150 case ENETUNREACH: return "ENETUNREACH";
151 #endif
152 #if defined ENFILE
153 case ENFILE: return "ENFILE";
154 #endif
155 #if defined ENOBUFS
156 case ENOBUFS: return "ENOBUFS";
157 #endif
158 #if defined ENODATA
159 case ENODATA: return "ENODATA";
160 #endif
161 #if defined ENODEV
162 case ENODEV: return "ENODEV";
163 #endif
164 #if defined ENOENT
165 case ENOENT: return "ENOENT";
166 #endif
167 #if defined ENOEXEC
168 case ENOEXEC: return "ENOEXEC";
169 #endif
170 #if defined ENOLCK
171 case ENOLCK: return "ENOLCK";
172 #endif
173 #if defined ENOLINK
174 case ENOLINK: return "ENOLINK";
175 #endif
176 #if defined ENOMEM
177 case ENOMEM: return "ENOMEM";
178 #endif
179 #if defined ENOMSG
180 case ENOMSG: return "ENOMSG";
181 #endif
182 #if defined ENOPROTOOPT
183 case ENOPROTOOPT: return "ENOPROTOOPT";
184 #endif
185 #if defined ENOSPC
186 case ENOSPC: return "ENOSPC";
187 #endif
188 #if defined ENOSR
189 case ENOSR: return "ENOSR";
190 #endif
191 #if defined ENOSTR
192 case ENOSTR: return "ENOSTR";
193 #endif
194 #if defined ENOSYS
195 case ENOSYS: return "ENOSYS";
196 #endif
197 #if defined ENOTCONN
198 case ENOTCONN: return "ENOTCONN";
199 #endif
200 #if defined ENOTDIR
201 case ENOTDIR: return "ENOTDIR";
202 #endif
203 #if defined ENOTEMPTY && ENOTEMPTY != EEXIST
204 case ENOTEMPTY: return "ENOTEMPTY";
205 #endif
206 #if defined ENOTRECOVERABLE
207 case ENOTRECOVERABLE: return "ENOTRECOVERABLE";
208 #endif
209 #if defined ENOTSOCK
210 case ENOTSOCK: return "ENOTSOCK";
211 #endif
212 #if defined ENOTSUP && ENOTSUP != EOPNOTSUPP
213 case ENOTSUP: return "ENOTSUP";
214 #endif
215 #if defined ENOTTY
216 case ENOTTY: return "ENOTTY";
217 #endif
218 #if defined ENXIO
219 case ENXIO: return "ENXIO";
220 #endif
221 #if defined EOPNOTSUPP
222 case EOPNOTSUPP: return "EOPNOTSUPP";
223 #endif
224 #if defined EOVERFLOW
225 case EOVERFLOW: return "EOVERFLOW";
226 #endif
227 #if defined EOWNERDEAD
228 case EOWNERDEAD: return "EOWNERDEAD";
229 #endif
230 #if defined EPERM
231 case EPERM: return "EPERM";
232 #endif
233 #if defined EPIPE
234 case EPIPE: return "EPIPE";
235 #endif
236 #if defined EPROTO
237 case EPROTO: return "EPROTO";
238 #endif
239 #if defined EPROTONOSUPPORT
240 case EPROTONOSUPPORT: return "EPROTONOSUPPORT";
241 #endif
242 #if defined EPROTOTYPE
243 case EPROTOTYPE: return "EPROTOTYPE";
244 #endif
245 #if defined EROFS
246 case EROFS: return "EROFS";
247 #endif
248 #if defined ESPIPE
249 case ESPIPE: return "ESPIPE";
250 #endif
251 #if defined ESRCH
252 case ESRCH: return "ESRCH";
253 #endif
254 #if defined ESTALE
255 case ESTALE: return "ESTALE";
256 #endif
257 #if defined ETIME
258 case ETIME: return "ETIME";
259 #endif
260 #if defined ETIMEDOUT
261 case ETIMEDOUT: return "ETIMEDOUT";
262 #endif
263 #if defined ETXTBSY
264 case ETXTBSY: return "ETXTBSY";
265 #endif
266 #if defined EWOULDBLOCK && EWOULDBLOCK != EAGAIN
267 case EWOULDBLOCK: return "EWOULDBLOCK";
268 #endif
269 #if defined EXDEV
270 case EXDEV: return "EXDEV";
271 #endif
273 /* Other error codes on other systems. */
274 /* Solaris */
275 #if defined EADI
276 case EADI: return "EADI";
277 #endif
278 /* Linux, HP-UX, IRIX, Solaris, Cygwin */
279 #if defined EADV
280 case EADV: return "EADV";
281 #endif
282 /* OSF/1 */
283 #if defined EAIO
284 case EAIO: return "EAIO";
285 #endif
286 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, Minix */
287 #if defined EAUTH
288 case EAUTH: return "EAUTH";
289 #endif
290 /* GNU/Hurd */
291 #if defined EBACKGROUND
292 case EBACKGROUND: return "EBACKGROUND";
293 #endif
294 /* Mac OS X */
295 #if defined EBADARCH
296 case EBADARCH: return "EBADARCH";
297 #endif
298 /* Minix */
299 #if defined EBADCALL
300 case EBADCALL: return "EBADCALL";
301 #endif
302 /* Minix */
303 #if defined EBADCPU
304 case EBADCPU: return "EBADCPU";
305 #endif
306 /* Linux, IRIX, Solaris, Cygwin */
307 #if defined EBADE
308 case EBADE: return "EBADE";
309 #endif
310 /* Minix */
311 #if defined EBADEPT
312 case EBADEPT: return "EBADEPT";
313 #endif
314 /* Mac OS X */
315 #if defined EBADEXEC
316 case EBADEXEC: return "EBADEXEC";
317 #endif
318 /* Linux, IRIX, Solaris, Cygwin */
319 #if defined EBADFD
320 case EBADFD: return "EBADFD";
321 #endif
322 /* IRIX */
323 #if defined EBADFILT
324 case EBADFILT: return "EBADFILT";
325 #endif
326 /* Minix */
327 #if defined EBADIOCTL
328 case EBADIOCTL: return "EBADIOCTL";
329 #endif
330 /* Mac OS X */
331 #if defined EBADMACHO
332 case EBADMACHO: return "EBADMACHO";
333 #endif
334 /* Minix */
335 #if defined EBADMODE
336 case EBADMODE: return "EBADMODE";
337 #endif
338 /* Linux, IRIX, Solaris, Cygwin */
339 #if defined EBADR
340 case EBADR: return "EBADR";
341 #endif
342 /* Minix */
343 #if defined EBADREQUEST
344 case EBADREQUEST: return "EBADREQUEST";
345 #endif
346 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, OSF/1, Minix */
347 #if defined EBADRPC
348 case EBADRPC: return "EBADRPC";
349 #endif
350 /* Linux, IRIX, Solaris, Cygwin */
351 #if defined EBADRQC
352 case EBADRQC: return "EBADRQC";
353 #endif
354 /* IRIX */
355 #if defined EBADRSPEC
356 case EBADRSPEC: return "EBADRSPEC";
357 #endif
358 /* Linux, IRIX, Solaris, Cygwin */
359 #if defined EBADSLT
360 case EBADSLT: return "EBADSLT";
361 #endif
362 /* IRIX */
363 #if defined EBADTSPEC
364 case EBADTSPEC: return "EBADTSPEC";
365 #endif
366 /* HP-UX */
367 #if defined EBADVER
368 case EBADVER: return "EBADVER";
369 #endif
370 /* IRIX */
371 #if defined EBDHDL
372 case EBDHDL: return "EBDHDL";
373 #endif
374 /* Linux, IRIX, Solaris, Cygwin */
375 #if defined EBFONT
376 case EBFONT: return "EBFONT";
377 #endif
378 /* IRIX */
379 #if defined EBUFSIZE
380 case EBUFSIZE: return "EBUFSIZE";
381 #endif
382 /* Minix */
383 #if defined ECALLDENIED
384 case ECALLDENIED: return "ECALLDENIED";
385 #endif
386 /* IRIX */
387 #if defined ECANTEXTENT
388 case ECANTEXTENT: return "ECANTEXTENT";
389 #endif
390 /* FreeBSD */
391 #if defined ECAPMODE
392 case ECAPMODE: return "ECAPMODE";
393 #endif
394 /* Cygwin */
395 #if defined ECASECLASH
396 case ECASECLASH: return "ECASECLASH";
397 #endif
398 /* IRIX */
399 #if defined ECELLDOWN
400 case ECELLDOWN: return "ECELLDOWN";
401 #endif
402 /* Linux, AIX, HP-UX, IRIX, Solaris, Cygwin */
403 #if defined ECHRNG
404 case ECHRNG: return "ECHRNG";
405 #endif
406 /* IRIX */
407 #if defined ECKPT
408 case ECKPT: return "ECKPT";
409 #endif
410 /* IRIX */
411 #if defined ECLOCKCPU
412 case ECLOCKCPU: return "ECLOCKCPU";
413 #endif
414 /* OSF/1 */
415 #if defined ECLONEME && ECLONEME != ERESTART
416 case ECLONEME: return "ECLONEME";
417 #endif
418 /* Linux, HP-UX, IRIX, Solaris, Cygwin */
419 #if defined ECOMM
420 case ECOMM: return "ECOMM";
421 #endif
422 /* HP-UX */
423 #if defined ECONFIG
424 case ECONFIG: return "ECONFIG";
425 #endif
426 /* IRIX */
427 #if defined ECONTROLLER
428 case ECONTROLLER: return "ECONTROLLER";
429 #endif
430 /* AIX */
431 #if defined ECORRUPT
432 case ECORRUPT: return "ECORRUPT";
433 #endif
434 /* GNU/Hurd */
435 #if defined ED
436 case ED: return "ED";
437 #endif
438 /* Minix */
439 #if defined EDEADEPT
440 case EDEADEPT: return "EDEADEPT";
441 #endif
442 /* IRIX, Solaris, Cygwin */
443 #if defined EDEADLOCK && EDEADLOCK != EDEADLK
444 case EDEADLOCK: return "EDEADLOCK";
445 #endif
446 /* Minix */
447 #if defined EDEADSRCDST
448 case EDEADSRCDST: return "EDEADSRCDST";
449 #endif
450 /* IRIX */
451 #if defined EDELAY
452 case EDELAY: return "EDELAY";
453 #endif
454 /* IRIX */
455 #if defined EDESTROYED
456 case EDESTROYED: return "EDESTROYED";
457 #endif
458 /* Mac OS X */
459 #if defined EDEVERR
460 case EDEVERR: return "EDEVERR";
461 #endif
462 /* GNU/Hurd */
463 #if defined EDIED
464 case EDIED: return "EDIED";
465 #endif
466 /* IRIX */
467 #if defined EDIRCORRUPTED
468 case EDIRCORRUPTED: return "EDIRCORRUPTED";
469 #endif
470 /* FreeBSD */
471 #if defined EDIRIOCTL
472 case EDIRIOCTL: return "EDIRIOCTL";
473 #endif
474 /* OSF/1 */
475 #if defined EDIRTY
476 case EDIRTY: return "EDIRTY";
477 #endif
478 /* IRIX */
479 #if defined EDISJOINT
480 case EDISJOINT: return "EDISJOINT";
481 #endif
482 /* AIX */
483 #if defined EDIST
484 case EDIST: return "EDIST";
485 #endif
486 /* Minix */
487 #if defined EDONTREPLY
488 case EDONTREPLY: return "EDONTREPLY";
489 #endif
490 /* FreeBSD */
491 #if defined EDOOFUS
492 case EDOOFUS: return "EDOOFUS";
493 #endif
494 /* Linux, HP-UX, Cygwin */
495 #if defined EDOTDOT
496 case EDOTDOT: return "EDOTDOT";
497 #endif
498 /* OSF/1 */
499 #if defined EDUPPKG
500 case EDUPPKG: return "EDUPPKG";
501 #endif
502 /* GNU/Hurd */
503 #if defined ED_ALREADY_OPEN
504 case ED_ALREADY_OPEN: return "ED_ALREADY_OPEN";
505 #endif
506 /* GNU/Hurd */
507 #if defined ED_DEVICE_DOWN
508 case ED_DEVICE_DOWN: return "ED_DEVICE_DOWN";
509 #endif
510 /* GNU/Hurd */
511 #if defined ED_INVALID_OPERATION
512 case ED_INVALID_OPERATION:return "ED_INVALID_OPERATION";
513 #endif
514 /* GNU/Hurd */
515 #if defined ED_INVALID_RECNUM
516 case ED_INVALID_RECNUM:return "ED_INVALID_RECNUM";
517 #endif
518 /* GNU/Hurd */
519 #if defined ED_INVALID_SIZE
520 case ED_INVALID_SIZE: return "ED_INVALID_SIZE";
521 #endif
522 /* GNU/Hurd */
523 #if defined ED_IO_ERROR
524 case ED_IO_ERROR: return "ED_IO_ERROR";
525 #endif
526 /* GNU/Hurd */
527 #if defined ED_NO_MEMORY
528 case ED_NO_MEMORY: return "ED_NO_MEMORY";
529 #endif
530 /* GNU/Hurd */
531 #if defined ED_NO_SUCH_DEVICE
532 case ED_NO_SUCH_DEVICE:return "ED_NO_SUCH_DEVICE";
533 #endif
534 /* GNU/Hurd */
535 #if defined ED_READ_ONLY
536 case ED_READ_ONLY: return "ED_READ_ONLY";
537 #endif
538 /* GNU/Hurd */
539 #if defined ED_WOULD_BLOCK
540 case ED_WOULD_BLOCK: return "ED_WOULD_BLOCK";
541 #endif
542 /* IRIX */
543 #if defined EEMPTY
544 case EEMPTY: return "EEMPTY";
545 #endif
546 /* OSF/1 */
547 #if defined EEMULATE
548 case EEMULATE: return "EEMULATE";
549 #endif
550 /* IRIX */
551 #if defined EENDOFMINOR
552 case EENDOFMINOR: return "EENDOFMINOR";
553 #endif
554 /* IRIX */
555 #if defined EENQUEUED
556 case EENQUEUED: return "EENQUEUED";
557 #endif
558 /* OSF/1 */
559 #if defined EFAIL
560 case EFAIL: return "EFAIL";
561 #endif
562 /* AIX */
563 #if defined EFORMAT
564 case EFORMAT: return "EFORMAT";
565 #endif
566 /* Haiku */
567 #if defined EFPOS
568 case EFPOS: return "EFPOS";
569 #endif
570 /* IRIX */
571 #if defined EFSCORRUPTED
572 case EFSCORRUPTED: return "EFSCORRUPTED";
573 #endif
574 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, OSF/1, Minix, Cygwin */
575 #if defined EFTYPE
576 case EFTYPE: return "EFTYPE";
577 #endif
578 /* Minix */
579 #if defined EGENERIC
580 case EGENERIC: return "EGENERIC";
581 #endif
582 /* GNU/Hurd */
583 #if defined EGRATUITOUS
584 case EGRATUITOUS: return "EGRATUITOUS";
585 #endif
586 /* GNU/Hurd */
587 #if defined EGREGIOUS
588 case EGREGIOUS: return "EGREGIOUS";
589 #endif
590 /* IRIX */
591 #if defined EGROUPLOOP
592 case EGROUPLOOP: return "EGROUPLOOP";
593 #endif
594 /* Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, OSF/1, Solaris, Minix, Haiku, Cygwin */
595 #if defined EHOSTDOWN
596 case EHOSTDOWN: return "EHOSTDOWN";
597 #endif
598 /* Linux */
599 #if defined EHWPOISON
600 case EHWPOISON: return "EHWPOISON";
601 #endif
602 /* GNU/Hurd */
603 #if defined EIEIO
604 case EIEIO: return "EIEIO";
605 #endif
606 /* IRIX */
607 #if defined EINIT
608 case EINIT: return "EINIT";
609 #endif
610 /* OSF/1 */
611 #if defined EINPROG
612 case EINPROG: return "EINPROG";
613 #endif
614 /* IRIX */
615 #if defined EINVALMODE
616 case EINVALMODE: return "EINVALMODE";
617 #endif
618 /* IRIX */
619 #if defined EINVALSTATE
620 case EINVALSTATE: return "EINVALSTATE";
621 #endif
622 /* IRIX */
623 #if defined EINVALTIME
624 case EINVALTIME: return "EINVALTIME";
625 #endif
626 /* IRIX */
627 #if defined EIORESID
628 case EIORESID: return "EIORESID";
629 #endif
630 /* OpenBSD */
631 #if defined EIPSEC
632 case EIPSEC: return "EIPSEC";
633 #endif
634 /* Linux, IRIX */
635 #if defined EISNAM
636 case EISNAM: return "EISNAM";
637 #endif
638 /* IRIX */
639 #if defined EJOINED
640 case EJOINED: return "EJOINED";
641 #endif
642 /* FreeBSD, OSF/1 */
643 #if defined EJUSTRETURN
644 case EJUSTRETURN: return "EJUSTRETURN";
645 #endif
646 /* GNU/Hurd */
647 #if defined EKERN_ABORTED
648 case EKERN_ABORTED: return "EKERN_ABORTED";
649 #endif
650 /* GNU/Hurd */
651 #if defined EKERN_FAILURE
652 case EKERN_FAILURE: return "EKERN_FAILURE";
653 #endif
654 /* GNU/Hurd */
655 #if defined EKERN_INTERRUPTED
656 case EKERN_INTERRUPTED:return "EKERN_INTERRUPTED";
657 #endif
658 /* GNU/Hurd */
659 #if defined EKERN_INVALID_ADDRESS
660 case EKERN_INVALID_ADDRESS:return "EKERN_INVALID_ADDRESS";
661 #endif
662 /* GNU/Hurd */
663 #if defined EKERN_INVALID_ARGUMENT
664 case EKERN_INVALID_ARGUMENT:return "EKERN_INVALID_ARGUMENT";
665 #endif
666 /* GNU/Hurd */
667 #if defined EKERN_INVALID_CAPABILITY
668 case EKERN_INVALID_CAPABILITY:return "EKERN_INVALID_CAPABILITY";
669 #endif
670 /* GNU/Hurd */
671 #if defined EKERN_INVALID_HOST
672 case EKERN_INVALID_HOST:return "EKERN_INVALID_HOST";
673 #endif
674 /* GNU/Hurd */
675 #if defined EKERN_INVALID_NAME
676 case EKERN_INVALID_NAME:return "EKERN_INVALID_NAME";
677 #endif
678 /* GNU/Hurd */
679 #if defined EKERN_INVALID_RIGHT
680 case EKERN_INVALID_RIGHT:return "EKERN_INVALID_RIGHT";
681 #endif
682 /* GNU/Hurd */
683 #if defined EKERN_INVALID_TASK
684 case EKERN_INVALID_TASK:return "EKERN_INVALID_TASK";
685 #endif
686 /* GNU/Hurd */
687 #if defined EKERN_INVALID_VALUE
688 case EKERN_INVALID_VALUE:return "EKERN_INVALID_VALUE";
689 #endif
690 /* GNU/Hurd */
691 #if defined EKERN_MEMORY_ERROR
692 case EKERN_MEMORY_ERROR:return "EKERN_MEMORY_ERROR";
693 #endif
694 /* GNU/Hurd */
695 #if defined EKERN_MEMORY_FAILURE
696 case EKERN_MEMORY_FAILURE:return "EKERN_MEMORY_FAILURE";
697 #endif
698 /* GNU/Hurd */
699 #if defined EKERN_MEMORY_PRESENT
700 case EKERN_MEMORY_PRESENT:return "EKERN_MEMORY_PRESENT";
701 #endif
702 /* GNU/Hurd */
703 #if defined EKERN_NAME_EXISTS
704 case EKERN_NAME_EXISTS:return "EKERN_NAME_EXISTS";
705 #endif
706 /* GNU/Hurd */
707 #if defined EKERN_NOT_IN_SET
708 case EKERN_NOT_IN_SET:return "EKERN_NOT_IN_SET";
709 #endif
710 /* GNU/Hurd */
711 #if defined EKERN_NOT_RECEIVER
712 case EKERN_NOT_RECEIVER:return "EKERN_NOT_RECEIVER";
713 #endif
714 /* GNU/Hurd */
715 #if defined EKERN_NO_ACCESS
716 case EKERN_NO_ACCESS: return "EKERN_NO_ACCESS";
717 #endif
718 /* GNU/Hurd */
719 #if defined EKERN_NO_SPACE
720 case EKERN_NO_SPACE: return "EKERN_NO_SPACE";
721 #endif
722 /* GNU/Hurd */
723 #if defined EKERN_PROTECTION_FAILURE
724 case EKERN_PROTECTION_FAILURE:return "EKERN_PROTECTION_FAILURE";
725 #endif
726 /* GNU/Hurd */
727 #if defined EKERN_RESOURCE_SHORTAGE
728 case EKERN_RESOURCE_SHORTAGE:return "EKERN_RESOURCE_SHORTAGE";
729 #endif
730 /* GNU/Hurd */
731 #if defined EKERN_RIGHT_EXISTS
732 case EKERN_RIGHT_EXISTS:return "EKERN_RIGHT_EXISTS";
733 #endif
734 /* GNU/Hurd */
735 #if defined EKERN_TERMINATED
736 case EKERN_TERMINATED:return "EKERN_TERMINATED";
737 #endif
738 /* GNU/Hurd */
739 #if defined EKERN_TIMEDOUT
740 case EKERN_TIMEDOUT: return "EKERN_TIMEDOUT";
741 #endif
742 /* GNU/Hurd */
743 #if defined EKERN_UREFS_OVERFLOW
744 case EKERN_UREFS_OVERFLOW:return "EKERN_UREFS_OVERFLOW";
745 #endif
746 /* GNU/Hurd */
747 #if defined EKERN_WRITE_PROTECTION_FAILURE
748 case EKERN_WRITE_PROTECTION_FAILURE:return "EKERN_WRITE_PROTECTION_FAILURE";
749 #endif
750 /* Linux */
751 #if defined EKEYEXPIRED
752 case EKEYEXPIRED: return "EKEYEXPIRED";
753 #endif
754 /* Linux */
755 #if defined EKEYREJECTED
756 case EKEYREJECTED: return "EKEYREJECTED";
757 #endif
758 /* Linux */
759 #if defined EKEYREVOKED
760 case EKEYREVOKED: return "EKEYREVOKED";
761 #endif
762 /* Linux, AIX, HP-UX, IRIX, Solaris, Cygwin */
763 #if defined EL2HLT
764 case EL2HLT: return "EL2HLT";
765 #endif
766 /* Linux, AIX, HP-UX, IRIX, Solaris, Cygwin */
767 #if defined EL2NSYNC
768 case EL2NSYNC: return "EL2NSYNC";
769 #endif
770 /* Linux, AIX, HP-UX, IRIX, Solaris, Cygwin */
771 #if defined EL3HLT
772 case EL3HLT: return "EL3HLT";
773 #endif
774 /* Linux, AIX, HP-UX, IRIX, Solaris, Cygwin */
775 #if defined EL3RST
776 case EL3RST: return "EL3RST";
777 #endif
778 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, Minix */
779 #if defined ELAST && 0
780 case ELAST: return "ELAST";
781 #endif
782 /* Cygwin */
783 #if defined ELBIN
784 case ELBIN: return "ELBIN";
785 #endif
786 /* Linux, IRIX, Solaris, Cygwin */
787 #if defined ELIBACC
788 case ELIBACC: return "ELIBACC";
789 #endif
790 /* Linux, IRIX, Solaris, Cygwin */
791 #if defined ELIBBAD
792 case ELIBBAD: return "ELIBBAD";
793 #endif
794 /* Linux, IRIX, Solaris, Cygwin */
795 #if defined ELIBEXEC
796 case ELIBEXEC: return "ELIBEXEC";
797 #endif
798 /* Linux, IRIX, Solaris, Cygwin */
799 #if defined ELIBMAX
800 case ELIBMAX: return "ELIBMAX";
801 #endif
802 /* Linux, IRIX, Solaris, Cygwin */
803 #if defined ELIBSCN
804 case ELIBSCN: return "ELIBSCN";
805 #endif
806 /* Linux, AIX, HP-UX, IRIX, Solaris, Cygwin */
807 #if defined ELNRNG
808 case ELNRNG: return "ELNRNG";
809 #endif
810 /* Minix */
811 #if defined ELOCKED
812 case ELOCKED: return "ELOCKED";
813 #endif
814 /* Solaris */
815 #if defined ELOCKUNMAPPED
816 case ELOCKUNMAPPED: return "ELOCKUNMAPPED";
817 #endif
818 /* IRIX */
819 #if defined ELOGINLIM
820 case ELOGINLIM: return "ELOGINLIM";
821 #endif
822 /* GNU/Hurd */
823 #if defined EMACH_RCV_BODY_ERROR
824 case EMACH_RCV_BODY_ERROR:return "EMACH_RCV_BODY_ERROR";
825 #endif
826 /* GNU/Hurd */
827 #if defined EMACH_RCV_HEADER_ERROR
828 case EMACH_RCV_HEADER_ERROR:return "EMACH_RCV_HEADER_ERROR";
829 #endif
830 /* GNU/Hurd */
831 #if defined EMACH_RCV_INTERRUPTED
832 case EMACH_RCV_INTERRUPTED:return "EMACH_RCV_INTERRUPTED";
833 #endif
834 /* GNU/Hurd */
835 #if defined EMACH_RCV_INVALID_DATA
836 case EMACH_RCV_INVALID_DATA:return "EMACH_RCV_INVALID_DATA";
837 #endif
838 /* GNU/Hurd */
839 #if defined EMACH_RCV_INVALID_NAME
840 case EMACH_RCV_INVALID_NAME:return "EMACH_RCV_INVALID_NAME";
841 #endif
842 /* GNU/Hurd */
843 #if defined EMACH_RCV_INVALID_NOTIFY
844 case EMACH_RCV_INVALID_NOTIFY:return "EMACH_RCV_INVALID_NOTIFY";
845 #endif
846 /* GNU/Hurd */
847 #if defined EMACH_RCV_IN_PROGRESS
848 case EMACH_RCV_IN_PROGRESS:return "EMACH_RCV_IN_PROGRESS";
849 #endif
850 /* GNU/Hurd */
851 #if defined EMACH_RCV_IN_SET
852 case EMACH_RCV_IN_SET:return "EMACH_RCV_IN_SET";
853 #endif
854 /* GNU/Hurd */
855 #if defined EMACH_RCV_PORT_CHANGED
856 case EMACH_RCV_PORT_CHANGED:return "EMACH_RCV_PORT_CHANGED";
857 #endif
858 /* GNU/Hurd */
859 #if defined EMACH_RCV_PORT_DIED
860 case EMACH_RCV_PORT_DIED:return "EMACH_RCV_PORT_DIED";
861 #endif
862 /* GNU/Hurd */
863 #if defined EMACH_RCV_TIMED_OUT
864 case EMACH_RCV_TIMED_OUT:return "EMACH_RCV_TIMED_OUT";
865 #endif
866 /* GNU/Hurd */
867 #if defined EMACH_RCV_TOO_LARGE
868 case EMACH_RCV_TOO_LARGE:return "EMACH_RCV_TOO_LARGE";
869 #endif
870 /* GNU/Hurd */
871 #if defined EMACH_SEND_INTERRUPTED
872 case EMACH_SEND_INTERRUPTED:return "EMACH_SEND_INTERRUPTED";
873 #endif
874 /* GNU/Hurd */
875 #if defined EMACH_SEND_INVALID_DATA
876 case EMACH_SEND_INVALID_DATA:return "EMACH_SEND_INVALID_DATA";
877 #endif
878 /* GNU/Hurd */
879 #if defined EMACH_SEND_INVALID_DEST
880 case EMACH_SEND_INVALID_DEST:return "EMACH_SEND_INVALID_DEST";
881 #endif
882 /* GNU/Hurd */
883 #if defined EMACH_SEND_INVALID_HEADER
884 case EMACH_SEND_INVALID_HEADER:return "EMACH_SEND_INVALID_HEADER";
885 #endif
886 /* GNU/Hurd */
887 #if defined EMACH_SEND_INVALID_MEMORY
888 case EMACH_SEND_INVALID_MEMORY:return "EMACH_SEND_INVALID_MEMORY";
889 #endif
890 /* GNU/Hurd */
891 #if defined EMACH_SEND_INVALID_NOTIFY
892 case EMACH_SEND_INVALID_NOTIFY:return "EMACH_SEND_INVALID_NOTIFY";
893 #endif
894 /* GNU/Hurd */
895 #if defined EMACH_SEND_INVALID_REPLY
896 case EMACH_SEND_INVALID_REPLY:return "EMACH_SEND_INVALID_REPLY";
897 #endif
898 /* GNU/Hurd */
899 #if defined EMACH_SEND_INVALID_RIGHT
900 case EMACH_SEND_INVALID_RIGHT:return "EMACH_SEND_INVALID_RIGHT";
901 #endif
902 /* GNU/Hurd */
903 #if defined EMACH_SEND_INVALID_TYPE
904 case EMACH_SEND_INVALID_TYPE:return "EMACH_SEND_INVALID_TYPE";
905 #endif
906 /* GNU/Hurd */
907 #if defined EMACH_SEND_IN_PROGRESS
908 case EMACH_SEND_IN_PROGRESS:return "EMACH_SEND_IN_PROGRESS";
909 #endif
910 /* GNU/Hurd */
911 #if defined EMACH_SEND_MSG_TOO_SMALL
912 case EMACH_SEND_MSG_TOO_SMALL:return "EMACH_SEND_MSG_TOO_SMALL";
913 #endif
914 /* GNU/Hurd */
915 #if defined EMACH_SEND_NOTIFY_IN_PROGRESS
916 case EMACH_SEND_NOTIFY_IN_PROGRESS:return "EMACH_SEND_NOTIFY_IN_PROGRESS";
917 #endif
918 /* GNU/Hurd */
919 #if defined EMACH_SEND_NO_BUFFER
920 case EMACH_SEND_NO_BUFFER:return "EMACH_SEND_NO_BUFFER";
921 #endif
922 /* GNU/Hurd */
923 #if defined EMACH_SEND_NO_NOTIFY
924 case EMACH_SEND_NO_NOTIFY:return "EMACH_SEND_NO_NOTIFY";
925 #endif
926 /* GNU/Hurd */
927 #if defined EMACH_SEND_TIMED_OUT
928 case EMACH_SEND_TIMED_OUT:return "EMACH_SEND_TIMED_OUT";
929 #endif
930 /* GNU/Hurd */
931 #if defined EMACH_SEND_WILL_NOTIFY
932 case EMACH_SEND_WILL_NOTIFY:return "EMACH_SEND_WILL_NOTIFY";
933 #endif
934 /* AIX, OSF/1 */
935 #if defined EMEDIA
936 case EMEDIA: return "EMEDIA";
937 #endif
938 /* Linux, OpenBSD */
939 #if defined EMEDIUMTYPE
940 case EMEDIUMTYPE: return "EMEDIUMTYPE";
941 #endif
942 /* IRIX */
943 #if defined EMEMRETRY
944 case EMEMRETRY: return "EMEMRETRY";
945 #endif
946 /* IRIX */
947 #if defined EMIGRATED
948 case EMIGRATED: return "EMIGRATED";
949 #endif
950 /* IRIX */
951 #if defined EMIGRATING
952 case EMIGRATING: return "EMIGRATING";
953 #endif
954 /* GNU/Hurd */
955 #if defined EMIG_ARRAY_TOO_LARGE
956 case EMIG_ARRAY_TOO_LARGE:return "EMIG_ARRAY_TOO_LARGE";
957 #endif
958 /* GNU/Hurd */
959 #if defined EMIG_BAD_ARGUMENTS
960 case EMIG_BAD_ARGUMENTS:return "EMIG_BAD_ARGUMENTS";
961 #endif
962 /* GNU/Hurd */
963 #if defined EMIG_BAD_ID
964 case EMIG_BAD_ID: return "EMIG_BAD_ID";
965 #endif
966 /* GNU/Hurd */
967 #if defined EMIG_DESTROY_REQUEST
968 case EMIG_DESTROY_REQUEST:return "EMIG_DESTROY_REQUEST";
969 #endif
970 /* GNU/Hurd */
971 #if defined EMIG_EXCEPTION
972 case EMIG_EXCEPTION: return "EMIG_EXCEPTION";
973 #endif
974 /* GNU/Hurd */
975 #if defined EMIG_NO_REPLY
976 case EMIG_NO_REPLY: return "EMIG_NO_REPLY";
977 #endif
978 /* GNU/Hurd */
979 #if defined EMIG_REMOTE_ERROR
980 case EMIG_REMOTE_ERROR:return "EMIG_REMOTE_ERROR";
981 #endif
982 /* GNU/Hurd */
983 #if defined EMIG_REPLY_MISMATCH
984 case EMIG_REPLY_MISMATCH:return "EMIG_REPLY_MISMATCH";
985 #endif
986 /* GNU/Hurd */
987 #if defined EMIG_SERVER_DIED
988 case EMIG_SERVER_DIED:return "EMIG_SERVER_DIED";
989 #endif
990 /* GNU/Hurd */
991 #if defined EMIG_TYPE_ERROR
992 case EMIG_TYPE_ERROR: return "EMIG_TYPE_ERROR";
993 #endif
994 /* OSF/1 */
995 #if defined EMTIMERS
996 case EMTIMERS: return "EMTIMERS";
997 #endif
998 /* IRIX */
999 #if defined EMUSTRUN
1000 case EMUSTRUN: return "EMUSTRUN";
1001 #endif
1002 /* Linux, IRIX */
1003 #if defined ENAVAIL
1004 case ENAVAIL: return "ENAVAIL";
1005 #endif
1006 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, Minix */
1007 #if defined ENEEDAUTH
1008 case ENEEDAUTH: return "ENEEDAUTH";
1009 #endif
1010 /* IRIX */
1011 #if defined ENFSREMOTE
1012 case ENFSREMOTE: return "ENFSREMOTE";
1013 #endif
1014 /* Cygwin */
1015 #if defined ENMFILE
1016 case ENMFILE: return "ENMFILE";
1017 #endif
1018 /* Linux, IRIX, Solaris, Cygwin */
1019 #if defined ENOANO
1020 case ENOANO: return "ENOANO";
1021 #endif
1022 /* IRIX */
1023 #if defined ENOATTACH
1024 case ENOATTACH: return "ENOATTACH";
1025 #endif
1026 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, IRIX, Minix */
1027 #if defined ENOATTR
1028 case ENOATTR: return "ENOATTR";
1029 #endif
1030 /* IRIX */
1031 #if defined ENOBWD
1032 case ENOBWD: return "ENOBWD";
1033 #endif
1034 /* MirBSD */
1035 #if defined ENOCOFFEE
1036 case ENOCOFFEE: return "ENOCOFFEE";
1037 #endif
1038 /* Minix */
1039 #if defined ENOCONN
1040 case ENOCONN: return "ENOCONN";
1041 #endif
1042 /* AIX */
1043 #if defined ENOCONNECT
1044 case ENOCONNECT: return "ENOCONNECT";
1045 #endif
1046 /* Linux, AIX, HP-UX, IRIX, Solaris, Cygwin */
1047 #if defined ENOCSI
1048 case ENOCSI: return "ENOCSI";
1049 #endif
1050 /* IRIX */
1051 #if defined ENOEXIST
1052 case ENOEXIST: return "ENOEXIST";
1053 #endif
1054 /* IRIX */
1055 #if defined ENOINTRGROUP
1056 case ENOINTRGROUP: return "ENOINTRGROUP";
1057 #endif
1058 /* FreeBSD */
1059 #if defined ENOIOCTL
1060 case ENOIOCTL: return "ENOIOCTL";
1061 #endif
1062 /* Linux */
1063 #if defined ENOKEY
1064 case ENOKEY: return "ENOKEY";
1065 #endif
1066 /* IRIX */
1067 #if defined ENOLIMFILE
1068 case ENOLIMFILE: return "ENOLIMFILE";
1069 #endif
1070 /* HP-UX */
1071 #if defined ENOLOAD
1072 case ENOLOAD: return "ENOLOAD";
1073 #endif
1074 /* IRIX */
1075 #if defined ENOLOGIN
1076 case ENOLOGIN: return "ENOLOGIN";
1077 #endif
1078 /* HP-UX */
1079 #if defined ENOMATCH
1080 case ENOMATCH: return "ENOMATCH";
1081 #endif
1082 /* Linux, OpenBSD, Cygwin */
1083 #if defined ENOMEDIUM
1084 case ENOMEDIUM: return "ENOMEDIUM";
1085 #endif
1086 /* IRIX */
1087 #if defined ENOMESSAGE
1088 case ENOMESSAGE: return "ENOMESSAGE";
1089 #endif
1090 /* Linux, HP-UX, IRIX, Solaris, Cygwin */
1091 #if defined ENONET
1092 case ENONET: return "ENONET";
1093 #endif
1094 /* Linux, HP-UX, IRIX, OSF/1, Solaris, Cygwin */
1095 #if defined ENOPKG
1096 case ENOPKG: return "ENOPKG";
1097 #endif
1098 /* Mac OS X */
1099 #if defined ENOPOLICY
1100 case ENOPOLICY: return "ENOPOLICY";
1101 #endif
1102 /* IRIX */
1103 #if defined ENOPROC
1104 case ENOPROC: return "ENOPROC";
1105 #endif
1106 /* HP-UX */
1107 #if defined ENOREG
1108 case ENOREG: return "ENOREG";
1109 #endif
1110 /* IRIX */
1111 #if defined ENOSERVICE
1112 case ENOSERVICE: return "ENOSERVICE";
1113 #endif
1114 /* Cygwin */
1115 #if defined ENOSHARE
1116 case ENOSHARE: return "ENOSHARE";
1117 #endif
1118 /* HP-UX, OSF/1 */
1119 #if defined ENOSYM
1120 case ENOSYM: return "ENOSYM";
1121 #endif
1122 /* Solaris */
1123 #if defined ENOTACTIVE
1124 case ENOTACTIVE: return "ENOTACTIVE";
1125 #endif
1126 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, OSF/1, Solaris, Minix, Cygwin */
1127 #if defined ENOTBLK
1128 case ENOTBLK: return "ENOTBLK";
1129 #endif
1130 /* FreeBSD */
1131 #if defined ENOTCAPABLE
1132 case ENOTCAPABLE: return "ENOTCAPABLE";
1133 #endif
1134 /* IRIX */
1135 #if defined ENOTCONTROLLER
1136 case ENOTCONTROLLER: return "ENOTCONTROLLER";
1137 #endif
1138 /* IRIX */
1139 #if defined ENOTENQUEUED
1140 case ENOTENQUEUED: return "ENOTENQUEUED";
1141 #endif
1142 /* IRIX */
1143 #if defined ENOTJOINED
1144 case ENOTJOINED: return "ENOTJOINED";
1145 #endif
1146 /* Linux, IRIX */
1147 #if defined ENOTNAM
1148 case ENOTNAM: return "ENOTNAM";
1149 #endif
1150 /* AIX, Minix */
1151 #if defined ENOTREADY
1152 case ENOTREADY: return "ENOTREADY";
1153 #endif
1154 /* AIX */
1155 #if defined ENOTRUST
1156 case ENOTRUST: return "ENOTRUST";
1157 #endif
1158 /* IRIX */
1159 #if defined ENOTSTOPPED
1160 case ENOTSTOPPED: return "ENOTSTOPPED";
1161 #endif
1162 /* Linux, IRIX, Solaris, Cygwin */
1163 #if defined ENOTUNIQ
1164 case ENOTUNIQ: return "ENOTUNIQ";
1165 #endif
1166 /* HP-UX */
1167 #if defined ENOUNLD
1168 case ENOUNLD: return "ENOUNLD";
1169 #endif
1170 /* HP-UX */
1171 #if defined ENOUNREG
1172 case ENOUNREG: return "ENOUNREG";
1173 #endif
1174 /* Minix */
1175 #if defined ENOURG
1176 case ENOURG: return "ENOURG";
1177 #endif
1178 /* native Windows */
1179 #if defined EOTHER
1180 case EOTHER: return "EOTHER";
1181 #endif
1182 /* Minix */
1183 #if defined EPACKSIZE
1184 case EPACKSIZE: return "EPACKSIZE";
1185 #endif
1186 /* Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, OSF/1, Solaris, Minix, Haiku, Cygwin */
1187 #if defined EPFNOSUPPORT
1188 case EPFNOSUPPORT: return "EPFNOSUPPORT";
1189 #endif
1190 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, IRIX, OSF/1, Minix, Cygwin */
1191 #if defined EPROCLIM
1192 case EPROCLIM: return "EPROCLIM";
1193 #endif
1194 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, OSF/1, Minix */
1195 #if defined EPROCUNAVAIL
1196 case EPROCUNAVAIL: return "EPROCUNAVAIL";
1197 #endif
1198 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, OSF/1, Minix */
1199 #if defined EPROGMISMATCH
1200 case EPROGMISMATCH: return "EPROGMISMATCH";
1201 #endif
1202 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, OSF/1, Minix */
1203 #if defined EPROGUNAVAIL
1204 case EPROGUNAVAIL: return "EPROGUNAVAIL";
1205 #endif
1206 /* Mac OS X */
1207 #if defined EPWROFF
1208 case EPWROFF: return "EPWROFF";
1209 #endif
1210 /* Mac OS X */
1211 #if defined EQFULL
1212 case EQFULL: return "EQFULL";
1213 #endif
1214 /* HP-UX */
1215 #if defined ERELOC
1216 case ERELOC: return "ERELOC";
1217 #endif
1218 /* OSF/1 */
1219 #if defined ERELOCATED
1220 case ERELOCATED: return "ERELOCATED";
1221 #endif
1222 /* FreeBSD */
1223 #if defined ERELOOKUP
1224 case ERELOOKUP: return "ERELOOKUP";
1225 #endif
1226 /* Linux, IRIX, Solaris, Cygwin */
1227 #if defined EREMCHG
1228 case EREMCHG: return "EREMCHG";
1229 #endif
1230 /* IRIX */
1231 #if defined EREMDEV
1232 case EREMDEV: return "EREMDEV";
1233 #endif
1234 /* Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, OSF/1, Solaris, Minix, Haiku, Cygwin */
1235 #if defined EREMOTE
1236 case EREMOTE: return "EREMOTE";
1237 #endif
1238 /* Linux, IRIX */
1239 #if defined EREMOTEIO
1240 case EREMOTEIO: return "EREMOTEIO";
1241 #endif
1242 /* HP-UX */
1243 #if defined EREMOTERELEASE
1244 case EREMOTERELEASE: return "EREMOTERELEASE";
1245 #endif
1246 /* Linux, FreeBSD, AIX, IRIX, OSF/1, Solaris, Minix */
1247 #if defined ERESTART
1248 case ERESTART: return "ERESTART";
1249 #endif
1250 /* Linux */
1251 #if defined ERFKILL
1252 case ERFKILL: return "ERFKILL";
1253 #endif
1254 /* Mac OS X, FreeBSD, NetBSD, OpenBSD, OSF/1, Minix */
1255 #if defined ERPCMISMATCH
1256 case ERPCMISMATCH: return "ERPCMISMATCH";
1257 #endif
1258 /* AIX */
1259 #if defined ESAD
1260 case ESAD: return "ESAD";
1261 #endif
1262 /* Mac OS X */
1263 #if defined ESHLIBVERS
1264 case ESHLIBVERS: return "ESHLIBVERS";
1265 #endif
1266 /* Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, OSF/1, Solaris, Minix, Haiku, Cygwin */
1267 #if defined ESHUTDOWN
1268 case ESHUTDOWN: return "ESHUTDOWN";
1269 #endif
1270 /* Haiku */
1271 #if defined ESIGPARM
1272 case ESIGPARM: return "ESIGPARM";
1273 #endif
1274 /* Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, OSF/1, Solaris, Minix, Cygwin */
1275 #if defined ESOCKTNOSUPPORT
1276 case ESOCKTNOSUPPORT: return "ESOCKTNOSUPPORT";
1277 #endif
1278 /* AIX, OSF/1 */
1279 #if defined ESOFT
1280 case ESOFT: return "ESOFT";
1281 #endif
1282 /* Linux, HP-UX, IRIX, Solaris, Cygwin */
1283 #if defined ESRMNT
1284 case ESRMNT: return "ESRMNT";
1285 #endif
1286 /* Linux, IRIX, Solaris, Cygwin */
1287 #if defined ESTRPIPE
1288 case ESTRPIPE: return "ESTRPIPE";
1289 #endif
1290 /* OSF/1 */
1291 #if defined ESUCCESS
1292 case ESUCCESS: return "ESUCCESS";
1293 #endif
1294 /* AIX */
1295 #if defined ESYSERROR
1296 case ESYSERROR: return "ESYSERROR";
1297 #endif
1298 /* Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, OSF/1, Solaris, Minix, Cygwin */
1299 #if defined ETOOMANYREFS
1300 case ETOOMANYREFS: return "ETOOMANYREFS";
1301 #endif
1302 /* Minix */
1303 #if defined ETRAPDENIED
1304 case ETRAPDENIED: return "ETRAPDENIED";
1305 #endif
1306 /* Linux, IRIX */
1307 #if defined EUCLEAN
1308 case EUCLEAN: return "EUCLEAN";
1309 #endif
1310 /* Linux, AIX, HP-UX, IRIX, Solaris, Cygwin */
1311 #if defined EUNATCH
1312 case EUNATCH: return "EUNATCH";
1313 #endif
1314 /* Minix */
1315 #if defined EURG
1316 case EURG: return "EURG";
1317 #endif
1318 /* Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, OSF/1, Solaris, Minix, Cygwin */
1319 #if defined EUSERS
1320 case EUSERS: return "EUSERS";
1321 #endif
1322 /* OSF/1 */
1323 #if defined EVERSION
1324 case EVERSION: return "EVERSION";
1325 #endif
1326 /* IRIX */
1327 #if defined EWRONGFS
1328 case EWRONGFS: return "EWRONGFS";
1329 #endif
1330 /* AIX */
1331 #if defined EWRPROTECT
1332 case EWRPROTECT: return "EWRPROTECT";
1333 #endif
1334 /* Linux, IRIX, Solaris, Cygwin */
1335 #if defined EXFULL
1336 case EXFULL: return "EXFULL";
1337 #endif
1339 default:
1340 return NULL;