| // Copyright Microsoft and CHERIoT Contributors. |
| // SPDX-License-Identifier: MIT |
| |
| #ifndef _ERRNO_H_ |
| #define _ERRNO_H_ |
| |
| #define ECOMPARTMENTFAIL 1 // Compartment failed |
| #define EPERM 2 // Operation not permitted. |
| #define ENOENT 3 // No such file or directory. |
| #define ESRCH 4 // No such process. |
| #define EINTR 5 // Interrupted function. |
| #define EIO 6 // I/O error. |
| #define ENXIO 7 // No such device or address. |
| #define E2BIG 8 // Argument list too long. |
| #define ENOEXEC 9 // Executable file format error. |
| #define EBADF 10 // Bad file descriptor. |
| #define ECHILD 11 // No child processes. |
| #define EAGAIN 12 // Resource unavailable, try again. |
| #define ENOMEM 13 // Not enough space. |
| #define EACCES 14 // Permission denied. |
| #define EFAULT 15 // Bad address. |
| #define EBUSY 16 // Device or resource busy. |
| #define EEXIST 17 // File exists. |
| #define EXDEV 18 // Cross-device link. |
| #define ENODEV 19 // No such device. |
| #define ENOTDIR 20 // Not a directory or a symbolic link to a directory. |
| #define EISDIR 21 // Is a directory. |
| #define EINVAL 22 // Invalid argument. |
| #define ENFILE 23 // Too many files open in system. |
| #define EMFILE 24 // File descriptor value too large. |
| #define ENOTTY 25 // Inappropriate I/O control operation. |
| #define ETXTBSY 26 // Text file busy. |
| #define EFBIG 27 // File too large. |
| #define ENOSPC 28 // No space left on device. |
| #define ESPIPE 29 // Invalid seek. |
| #define EROFS 30 // Read-only file system. |
| #define EMLINK 31 // Too many links. |
| #define EPIPE 32 // Broken pipe. |
| #define EDOM 33 // Math arg out of domain of func. |
| #define ERANGE 34 // Result too large. |
| #define ENAMETOOLONG 36 // Filename too long. |
| #define ENOLCK 37 // No locks available. |
| #define ENOSYS 38 // Functionality not supported. |
| #define ENOTEMPTY 39 // Directory not empty. |
| #define ELOOP 40 // Too many levels of symbolic links. |
| #define ENOMSG 42 // No message of the desired type. |
| #define EIDRM 43 // Identifier removed. |
| #define EDEADLK 45 // Resource deadlock would occur. |
| #define EUNATCH 49 // Protocol driver not attached. |
| #define EBADE 52 // Invalid exchange. |
| #define ENOSTR 60 // Not a STREAM. |
| #define ENODATA 61 // No data available. |
| #define ETIME 62 // Timer expired. |
| #define ENOSR 63 // No STREAM resources. |
| #define ENOLINK 67 // Reserved. |
| #define EPROTO 71 // Protocol error. |
| #define EMULTIHOP 72 // Reserved. |
| #define EBADMSG 74 // Bad message. |
| #define EFTYPE 79 // Inappropriate file type or format. |
| #define EILSEQ 84 // Illegal byte sequence. |
| #define ENOTSOCK 88 // Not a socket. |
| #define EDESTADDRREQ 89 // Destination address required. |
| #define EMSGSIZE 90 // Message too large. |
| #define EPROTOTYPE 91 // Protocol wrong type for socket. |
| #define ENOPROTOOPT 92 // Protocol not available. |
| #define EPROTONOSUPPORT 93 // Protocol not supported. |
| #define EOPNOTSUPP 95 // Operation not supported on socket. |
| #define EAFNOSUPPORT 97 // Address family not supported. |
| #define EADDRINUSE 98 // Address in use. |
| #define EADDRNOTAVAIL 99 // Address not available. |
| #define ENETDOWN 100 // Network is down. |
| #define ENETUNREACH 101 // Network unreachable. |
| #define ENETRESET 102 // Connection aborted by network. |
| #define ECONNABORTED 103 // Connection aborted. |
| #define ECONNRESET 104 // Connection reset. |
| #define ENOBUFS 105 // No buffer space available. |
| #define EISCONN 106 // Socket is connected. |
| #define ENOTCONN 107 // The socket is not connected. |
| #define ETIMEDOUT 110 // Connection timed out. |
| #define ECONNREFUSED 111 // Connection refused. |
| #define EHOSTUNREACH 113 // Host is unreachable. |
| #define EALREADY 114 // Connection already in progress. |
| #define EINPROGRESS 115 // Operation in progress. |
| #define ESTALE 116 // Reserved. |
| #define EDQUOT 122 // Reserved. |
| #define ENOMEDIUM 123 // No medium inserted. |
| #define ECANCELED 125 // Operation canceled. |
| #define EOWNERDEAD 130 // Previous owner died. |
| #define ENOTRECOVERABLE 131 // State not recoverable. |
| #define EOVERFLOW 139 // Value too large to be stored in data type. |
| #define ENOTENOUGHSTACK 140 // Insufficient stack space for cross-compartment call. |
| #define ENOTENOUGHTRUSTEDSTACK 141 // Insufficient stack space for cross-compartment call. |
| #define EWOULDBLOCK EAGAIN // Operation would block. |
| #define ENOTSUP EOPNOTSUPP // Not supported. |
| #define __ELASTERROR 2000 // Users can add values starting here. |
| |
| #endif // _ERRNO_H_ |