| 1 | //===-- Map of POSIX error numbers to strings -------------------*- C++ -*-===// |
| 2 | // |
| 3 | // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| 4 | // See https://llvm.org/LICENSE.txt for license information. |
| 5 | // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| 6 | // |
| 7 | //===----------------------------------------------------------------------===// |
| 8 | |
| 9 | #ifndef LLVM_LIBC_SRC___SUPPORT_STRINGUTIL_TABLES_POSIX_ERRORS_H |
| 10 | #define LLVM_LIBC_SRC___SUPPORT_STRINGUTIL_TABLES_POSIX_ERRORS_H |
| 11 | |
| 12 | #include "hdr/errno_macros.h" |
| 13 | #include "src/__support/StringUtil/message_mapper.h" |
| 14 | #include "src/__support/macros/config.h" |
| 15 | |
| 16 | namespace LIBC_NAMESPACE_DECL { |
| 17 | |
| 18 | LIBC_INLINE_VAR constexpr MsgTable<76> POSIX_ERRORS = { |
| 19 | MsgMapping(EPERM, "Operation not permitted" ), |
| 20 | MsgMapping(ENOENT, "No such file or directory" ), |
| 21 | MsgMapping(ESRCH, "No such process" ), |
| 22 | MsgMapping(EINTR, "Interrupted system call" ), |
| 23 | MsgMapping(EIO, "Input/output error" ), |
| 24 | MsgMapping(ENXIO, "No such device or address" ), |
| 25 | MsgMapping(E2BIG, "Argument list too long" ), |
| 26 | MsgMapping(ENOEXEC, "Exec format error" ), |
| 27 | MsgMapping(EBADF, "Bad file descriptor" ), |
| 28 | MsgMapping(ECHILD, "No child processes" ), |
| 29 | MsgMapping(EAGAIN, "Resource temporarily unavailable" ), |
| 30 | MsgMapping(ENOMEM, "Cannot allocate memory" ), |
| 31 | MsgMapping(EACCES, "Permission denied" ), |
| 32 | MsgMapping(EFAULT, "Bad address" ), |
| 33 | MsgMapping(EBUSY, "Device or resource busy" ), |
| 34 | MsgMapping(EEXIST, "File exists" ), |
| 35 | MsgMapping(EXDEV, "Invalid cross-device link" ), |
| 36 | MsgMapping(ENODEV, "No such device" ), |
| 37 | MsgMapping(ENOTDIR, "Not a directory" ), |
| 38 | MsgMapping(EISDIR, "Is a directory" ), |
| 39 | MsgMapping(EINVAL, "Invalid argument" ), |
| 40 | MsgMapping(ENFILE, "Too many open files in system" ), |
| 41 | MsgMapping(EMFILE, "Too many open files" ), |
| 42 | MsgMapping(ENOTTY, "Inappropriate ioctl for device" ), |
| 43 | MsgMapping(ETXTBSY, "Text file busy" ), |
| 44 | MsgMapping(EFBIG, "File too large" ), |
| 45 | MsgMapping(ENOSPC, "No space left on device" ), |
| 46 | MsgMapping(ESPIPE, "Illegal seek" ), |
| 47 | MsgMapping(EROFS, "Read-only file system" ), |
| 48 | MsgMapping(EMLINK, "Too many links" ), |
| 49 | MsgMapping(EPIPE, "Broken pipe" ), |
| 50 | MsgMapping(EDEADLK, "Resource deadlock avoided" ), |
| 51 | MsgMapping(ENAMETOOLONG, "File name too long" ), |
| 52 | MsgMapping(ENOLCK, "No locks available" ), |
| 53 | MsgMapping(ENOSYS, "Function not implemented" ), |
| 54 | MsgMapping(ENOTEMPTY, "Directory not empty" ), |
| 55 | MsgMapping(ELOOP, "Too many levels of symbolic links" ), |
| 56 | MsgMapping(ENOMSG, "No message of desired type" ), |
| 57 | MsgMapping(EIDRM, "Identifier removed" ), |
| 58 | MsgMapping(ENOSTR, "Device not a stream" ), |
| 59 | MsgMapping(ENODATA, "No data available" ), |
| 60 | MsgMapping(ETIME, "Timer expired" ), |
| 61 | MsgMapping(ENOSR, "Out of streams resources" ), |
| 62 | MsgMapping(ENOLINK, "Link has been severed" ), |
| 63 | MsgMapping(EPROTO, "Protocol error" ), |
| 64 | MsgMapping(EMULTIHOP, "Multihop attempted" ), |
| 65 | MsgMapping(EBADMSG, "Bad message" ), |
| 66 | MsgMapping(EOVERFLOW, "Value too large for defined data type" ), |
| 67 | MsgMapping(ENOTSOCK, "Socket operation on non-socket" ), |
| 68 | MsgMapping(EDESTADDRREQ, "Destination address required" ), |
| 69 | MsgMapping(EMSGSIZE, "Message too long" ), |
| 70 | MsgMapping(EPROTOTYPE, "Protocol wrong type for socket" ), |
| 71 | MsgMapping(ENOPROTOOPT, "Protocol not available" ), |
| 72 | MsgMapping(EPROTONOSUPPORT, "Protocol not supported" ), |
| 73 | MsgMapping(ENOTSUP, "Operation not supported" ), |
| 74 | MsgMapping(EAFNOSUPPORT, "Address family not supported by protocol" ), |
| 75 | MsgMapping(EADDRINUSE, "Address already in use" ), |
| 76 | MsgMapping(EADDRNOTAVAIL, "Cannot assign requested address" ), |
| 77 | MsgMapping(ENETDOWN, "Network is down" ), |
| 78 | MsgMapping(ENETUNREACH, "Network is unreachable" ), |
| 79 | MsgMapping(ENETRESET, "Network dropped connection on reset" ), |
| 80 | MsgMapping(ECONNABORTED, "Software caused connection abort" ), |
| 81 | MsgMapping(ECONNRESET, "Connection reset by peer" ), |
| 82 | MsgMapping(ENOBUFS, "No buffer space available" ), |
| 83 | MsgMapping(EISCONN, "Transport endpoint is already connected" ), |
| 84 | MsgMapping(ENOTCONN, "Transport endpoint is not connected" ), |
| 85 | MsgMapping(ETIMEDOUT, "Connection timed out" ), |
| 86 | MsgMapping(ECONNREFUSED, "Connection refused" ), |
| 87 | MsgMapping(EHOSTUNREACH, "No route to host" ), |
| 88 | MsgMapping(EALREADY, "Operation already in progress" ), |
| 89 | MsgMapping(EINPROGRESS, "Operation now in progress" ), |
| 90 | MsgMapping(ESTALE, "Stale file handle" ), |
| 91 | MsgMapping(EDQUOT, "Disk quota exceeded" ), |
| 92 | MsgMapping(ECANCELED, "Operation canceled" ), |
| 93 | MsgMapping(EOWNERDEAD, "Owner died" ), |
| 94 | MsgMapping(ENOTRECOVERABLE, "State not recoverable" ), |
| 95 | }; |
| 96 | |
| 97 | LIBC_INLINE_VAR constexpr MsgTable<76> POSIX_ERRNO_NAMES = { |
| 98 | MsgMapping(EPERM, "EPERM" ), |
| 99 | MsgMapping(ENOENT, "ENOENT" ), |
| 100 | MsgMapping(ESRCH, "ESRCH" ), |
| 101 | MsgMapping(EINTR, "EINTR" ), |
| 102 | MsgMapping(EIO, "EIO" ), |
| 103 | MsgMapping(ENXIO, "ENXIO" ), |
| 104 | MsgMapping(E2BIG, "E2BIG" ), |
| 105 | MsgMapping(ENOEXEC, "ENOEXEC" ), |
| 106 | MsgMapping(EBADF, "EBADF" ), |
| 107 | MsgMapping(ECHILD, "ECHILD" ), |
| 108 | MsgMapping(EAGAIN, "EAGAIN" ), |
| 109 | MsgMapping(ENOMEM, "ENOMEM" ), |
| 110 | MsgMapping(EACCES, "EACCES" ), |
| 111 | MsgMapping(EFAULT, "EFAULT" ), |
| 112 | MsgMapping(EBUSY, "EBUSY" ), |
| 113 | MsgMapping(EEXIST, "EEXIST" ), |
| 114 | MsgMapping(EXDEV, "EXDEV" ), |
| 115 | MsgMapping(ENODEV, "ENODEV" ), |
| 116 | MsgMapping(ENOTDIR, "ENOTDIR" ), |
| 117 | MsgMapping(EISDIR, "EISDIR" ), |
| 118 | MsgMapping(EINVAL, "EINVAL" ), |
| 119 | MsgMapping(ENFILE, "ENFILE" ), |
| 120 | MsgMapping(EMFILE, "EMFILE" ), |
| 121 | MsgMapping(ENOTTY, "ENOTTY" ), |
| 122 | MsgMapping(ETXTBSY, "ETXTBSY" ), |
| 123 | MsgMapping(EFBIG, "EFBIG" ), |
| 124 | MsgMapping(ENOSPC, "ENOSPC" ), |
| 125 | MsgMapping(ESPIPE, "ESPIPE" ), |
| 126 | MsgMapping(EROFS, "EROFS" ), |
| 127 | MsgMapping(EMLINK, "EMLINK" ), |
| 128 | MsgMapping(EPIPE, "EPIPE" ), |
| 129 | MsgMapping(EDEADLK, "EDEADLK" ), |
| 130 | MsgMapping(ENAMETOOLONG, "ENAMETOOLONG" ), |
| 131 | MsgMapping(ENOLCK, "ENOLCK" ), |
| 132 | MsgMapping(ENOSYS, "ENOSYS" ), |
| 133 | MsgMapping(ENOTEMPTY, "ENOTEMPTY" ), |
| 134 | MsgMapping(ELOOP, "ELOOP" ), |
| 135 | MsgMapping(ENOMSG, "ENOMSG" ), |
| 136 | MsgMapping(EIDRM, "EIDRM" ), |
| 137 | MsgMapping(ENOSTR, "ENOSTR" ), |
| 138 | MsgMapping(ENODATA, "ENODATA" ), |
| 139 | MsgMapping(ETIME, "ETIME" ), |
| 140 | MsgMapping(ENOSR, "ENOSR" ), |
| 141 | MsgMapping(ENOLINK, "ENOLINK" ), |
| 142 | MsgMapping(EPROTO, "EPROTO" ), |
| 143 | MsgMapping(EMULTIHOP, "EMULTIHOP" ), |
| 144 | MsgMapping(EBADMSG, "EBADMSG" ), |
| 145 | MsgMapping(EOVERFLOW, "EOVERFLOW" ), |
| 146 | MsgMapping(ENOTSOCK, "ENOTSOCK" ), |
| 147 | MsgMapping(EDESTADDRREQ, "EDESTADDRREQ" ), |
| 148 | MsgMapping(EMSGSIZE, "EMSGSIZE" ), |
| 149 | MsgMapping(EPROTOTYPE, "EPROTOTYPE" ), |
| 150 | MsgMapping(ENOPROTOOPT, "ENOPROTOOPT" ), |
| 151 | MsgMapping(EPROTONOSUPPORT, "EPROTONOSUPPORT" ), |
| 152 | MsgMapping(ENOTSUP, "ENOTSUP" ), |
| 153 | MsgMapping(EAFNOSUPPORT, "EAFNOSUPPORT" ), |
| 154 | MsgMapping(EADDRINUSE, "EADDRINUSE" ), |
| 155 | MsgMapping(EADDRNOTAVAIL, "EADDRNOTAVAIL" ), |
| 156 | MsgMapping(ENETDOWN, "ENETDOWN" ), |
| 157 | MsgMapping(ENETUNREACH, "ENETUNREACH" ), |
| 158 | MsgMapping(ENETRESET, "ENETRESET" ), |
| 159 | MsgMapping(ECONNABORTED, "ECONNABORTED" ), |
| 160 | MsgMapping(ECONNRESET, "ECONNRESET" ), |
| 161 | MsgMapping(ENOBUFS, "ENOBUFS" ), |
| 162 | MsgMapping(EISCONN, "EISCONN" ), |
| 163 | MsgMapping(ENOTCONN, "ENOTCONN" ), |
| 164 | MsgMapping(ETIMEDOUT, "ETIMEDOUT" ), |
| 165 | MsgMapping(ECONNREFUSED, "ECONNREFUSED" ), |
| 166 | MsgMapping(EHOSTUNREACH, "EHOSTUNREACH" ), |
| 167 | MsgMapping(EALREADY, "EALREADY" ), |
| 168 | MsgMapping(EINPROGRESS, "EINPROGRESS" ), |
| 169 | MsgMapping(ESTALE, "ESTALE" ), |
| 170 | MsgMapping(EDQUOT, "EDQUOT" ), |
| 171 | MsgMapping(ECANCELED, "ECANCELED" ), |
| 172 | MsgMapping(EOWNERDEAD, "EOWNERDEAD" ), |
| 173 | MsgMapping(ENOTRECOVERABLE, "ENOTRECOVERABLE" ), |
| 174 | }; |
| 175 | |
| 176 | } // namespace LIBC_NAMESPACE_DECL |
| 177 | |
| 178 | #endif // LLVM_LIBC_SRC___SUPPORT_STRINGUTIL_TABLES_POSIX_ERRORS_H |
| 179 | |