1 /* 2 * Copyright (C) 2002 Manuel Novoa III 3 * Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org> 4 * 5 * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. 6 */ 7 8 #include <features.h> 9 #include <errno.h> 10 11 extern const char _string_syserrmsgs[] attribute_hidden; 12 13 #ifdef __UCLIBC_HAS_SYS_ERRLIST__ 14 15 const char *const sys_errlist[] = { 16 [0] = _string_syserrmsgs + 0, 17 [EPERM] = _string_syserrmsgs + 8, 18 [ENOENT] = _string_syserrmsgs + 32, 19 [ESRCH] = _string_syserrmsgs + 58, 20 [EINTR] = _string_syserrmsgs + 74, 21 [EIO] = _string_syserrmsgs + 98, 22 [ENXIO] = _string_syserrmsgs + 117, 23 [E2BIG] = _string_syserrmsgs + 143, 24 [ENOEXEC] = _string_syserrmsgs + 166, 25 [EBADF] = _string_syserrmsgs + 184, 26 [ECHILD] = _string_syserrmsgs + 204, 27 [EAGAIN] = _string_syserrmsgs + 223, 28 [ENOMEM] = _string_syserrmsgs + 256, 29 [EACCES] = _string_syserrmsgs + 279, 30 [EFAULT] = _string_syserrmsgs + 297, 31 [ENOTBLK] = _string_syserrmsgs + 309, 32 [EBUSY] = _string_syserrmsgs + 331, 33 [EEXIST] = _string_syserrmsgs + 355, 34 [EXDEV] = _string_syserrmsgs + 367, 35 [ENODEV] = _string_syserrmsgs + 393, 36 [ENOTDIR] = _string_syserrmsgs + 408, 37 [EISDIR] = _string_syserrmsgs + 424, 38 [EINVAL] = _string_syserrmsgs + 439, 39 [ENFILE] = _string_syserrmsgs + 456, 40 [EMFILE] = _string_syserrmsgs + 486, 41 [ENOTTY] = _string_syserrmsgs + 506, 42 [ETXTBSY] = _string_syserrmsgs + 537, 43 [EFBIG] = _string_syserrmsgs + 552, 44 [ENOSPC] = _string_syserrmsgs + 567, 45 [ESPIPE] = _string_syserrmsgs + 591, 46 [EROFS] = _string_syserrmsgs + 604, 47 [EMLINK] = _string_syserrmsgs + 626, 48 [EPIPE] = _string_syserrmsgs + 641, 49 [EDOM] = _string_syserrmsgs + 653, 50 [ERANGE] = _string_syserrmsgs + 686, 51 [EDEADLK] = _string_syserrmsgs + 716, 52 [ENAMETOOLONG] = _string_syserrmsgs + 742, 53 [ENOLCK] = _string_syserrmsgs + 761, 54 [ENOSYS] = _string_syserrmsgs + 780, 55 [ENOTEMPTY] = _string_syserrmsgs + 805, 56 [ELOOP] = _string_syserrmsgs + 825, 57 /* _string_syserrmsgs + 859, */ 58 [ENOMSG] = _string_syserrmsgs + 860, 59 [EIDRM] = _string_syserrmsgs + 887, 60 [ECHRNG] = _string_syserrmsgs + 906, 61 [EL2NSYNC] = _string_syserrmsgs + 934, 62 [EL3HLT] = _string_syserrmsgs + 959, 63 [EL3RST] = _string_syserrmsgs + 974, 64 [ELNRNG] = _string_syserrmsgs + 988, 65 [EUNATCH] = _string_syserrmsgs + 1013, 66 [ENOCSI] = _string_syserrmsgs + 1042, 67 [EL2HLT] = _string_syserrmsgs + 1069, 68 [EBADE] = _string_syserrmsgs + 1084, 69 [EBADR] = _string_syserrmsgs + 1101, 70 [EXFULL] = _string_syserrmsgs + 1128, 71 [ENOANO] = _string_syserrmsgs + 1142, 72 [EBADRQC] = _string_syserrmsgs + 1151, 73 [EBADSLT] = _string_syserrmsgs + 1172, 74 /* _string_syserrmsgs + 1185, */ 75 [EBFONT] = _string_syserrmsgs + 1186, 76 [ENOSTR] = _string_syserrmsgs + 1207, 77 [ENODATA] = _string_syserrmsgs + 1227, 78 [ETIME] = _string_syserrmsgs + 1245, 79 [ENOSR] = _string_syserrmsgs + 1259, 80 [ENONET] = _string_syserrmsgs + 1284, 81 [ENOPKG] = _string_syserrmsgs + 1314, 82 [EREMOTE] = _string_syserrmsgs + 1336, 83 [ENOLINK] = _string_syserrmsgs + 1353, 84 [EADV] = _string_syserrmsgs + 1375, 85 [ESRMNT] = _string_syserrmsgs + 1391, 86 [ECOMM] = _string_syserrmsgs + 1405, 87 [EPROTO] = _string_syserrmsgs + 1433, 88 [EMULTIHOP] = _string_syserrmsgs + 1448, 89 [EDOTDOT] = _string_syserrmsgs + 1467, 90 [EBADMSG] = _string_syserrmsgs + 1486, 91 [EOVERFLOW] = _string_syserrmsgs + 1498, 92 [ENOTUNIQ] = _string_syserrmsgs + 1536, 93 [EBADFD] = _string_syserrmsgs + 1563, 94 [EREMCHG] = _string_syserrmsgs + 1592, 95 [ELIBACC] = _string_syserrmsgs + 1615, 96 [ELIBBAD] = _string_syserrmsgs + 1654, 97 [ELIBSCN] = _string_syserrmsgs + 1691, 98 [ELIBMAX] = _string_syserrmsgs + 1723, 99 [ELIBEXEC] = _string_syserrmsgs + 1771, 100 [EILSEQ] = _string_syserrmsgs + 1809, 101 [ERESTART] = _string_syserrmsgs + 1859, 102 [ESTRPIPE] = _string_syserrmsgs + 1903, 103 [EUSERS] = _string_syserrmsgs + 1922, 104 [ENOTSOCK] = _string_syserrmsgs + 1937, 105 [EDESTADDRREQ] = _string_syserrmsgs + 1968, 106 [EMSGSIZE] = _string_syserrmsgs + 1997, 107 [EPROTOTYPE] = _string_syserrmsgs + 2014, 108 [ENOPROTOOPT] = _string_syserrmsgs + 2045, 109 [EPROTONOSUPPORT] = _string_syserrmsgs + 2068, 110 [ESOCKTNOSUPPORT] = _string_syserrmsgs + 2091, 111 [EOPNOTSUPP] = _string_syserrmsgs + 2117, 112 [EPFNOSUPPORT] = _string_syserrmsgs + 2141, 113 [EAFNOSUPPORT] = _string_syserrmsgs + 2171, 114 [EADDRINUSE] = _string_syserrmsgs + 2212, 115 [EADDRNOTAVAIL] = _string_syserrmsgs + 2235, 116 [ENETDOWN] = _string_syserrmsgs + 2267, 117 [ENETUNREACH] = _string_syserrmsgs + 2283, 118 [ENETRESET] = _string_syserrmsgs + 2306, 119 [ECONNABORTED] = _string_syserrmsgs + 2342, 120 [ECONNRESET] = _string_syserrmsgs + 2375, 121 [ENOBUFS] = _string_syserrmsgs + 2400, 122 [EISCONN] = _string_syserrmsgs + 2426, 123 [ENOTCONN] = _string_syserrmsgs + 2466, 124 [ESHUTDOWN] = _string_syserrmsgs + 2502, 125 [ETOOMANYREFS] = _string_syserrmsgs + 2548, 126 [ETIMEDOUT] = _string_syserrmsgs + 2583, 127 [ECONNREFUSED] = _string_syserrmsgs + 2604, 128 [EHOSTDOWN] = _string_syserrmsgs + 2623, 129 [EHOSTUNREACH] = _string_syserrmsgs + 2636, 130 [EALREADY] = _string_syserrmsgs + 2653, 131 [EINPROGRESS] = _string_syserrmsgs + 2683, 132 [ESTALE] = _string_syserrmsgs + 2709, 133 [EUCLEAN] = _string_syserrmsgs + 2731, 134 [ENOTNAM] = _string_syserrmsgs + 2756, 135 [ENAVAIL] = _string_syserrmsgs + 2784, 136 [EISNAM] = _string_syserrmsgs + 2814, 137 [EREMOTEIO] = _string_syserrmsgs + 2835, 138 [EDQUOT] = _string_syserrmsgs + 2852, 139 [ENOMEDIUM] = _string_syserrmsgs + 2872, 140 [EMEDIUMTYPE] = _string_syserrmsgs + 2888, 141 142 #if EDEADLOCK != EDEADLK 143 [EDEADLOCK] = _string_syserrmsgs + 2906, 144 #endif 145 146 #if EWOULDBLOCK != EAGAIN 147 #error EWOULDBLOCK does not equal EAGAIN 148 #endif 149 150 /* For now, ignore the other arch-specific errors. glibc only maps EPROCLIM. */ 151 152 /* some other mips errors */ 153 #ifdef ECANCELED 154 #endif 155 #ifdef EINIT 156 #endif 157 #ifdef EREMDEV 158 #endif 159 160 /* some other sparc errors */ 161 #ifdef EPROCLIM 162 #endif 163 #ifdef ERREMOTE 164 #endif 165 }; 166 167 int sys_nerr = sizeof(sys_errlist)/sizeof(sys_errlist[0]); 168 169 #endif 170