// ── Errno table: code, name, description ──────────────────────────────────── // Generated from the system's errno definitions. // Used by WCEnd blocks to select exit codes. /** @type {Array<{code:number, name:string, desc:string}>} */ const ERRNO_LIST = [ { code: 1, name: 'EPERM', desc: 'Operation not permitted' }, { code: 2, name: 'ENOENT', desc: 'No such file or directory' }, { code: 3, name: 'ESRCH', desc: 'No such process' }, { code: 4, name: 'EINTR', desc: 'Interrupted system call' }, { code: 5, name: 'EIO', desc: 'Input/output error' }, { code: 6, name: 'ENXIO', desc: 'No such device or address' }, { code: 7, name: 'E2BIG', desc: 'Argument list too long' }, { code: 8, name: 'ENOEXEC', desc: 'Exec format error' }, { code: 9, name: 'EBADF', desc: 'Bad file descriptor' }, { code: 10, name: 'ECHILD', desc: 'No child processes' }, { code: 11, name: 'EAGAIN', desc: 'Resource temporarily unavailable' }, { code: 12, name: 'ENOMEM', desc: 'Cannot allocate memory' }, { code: 13, name: 'EACCES', desc: 'Permission denied' }, { code: 14, name: 'EFAULT', desc: 'Bad address' }, { code: 15, name: 'ENOTBLK', desc: 'Block device required' }, { code: 16, name: 'EBUSY', desc: 'Device or resource busy' }, { code: 17, name: 'EEXIST', desc: 'File exists' }, { code: 18, name: 'EXDEV', desc: 'Invalid cross-device link' }, { code: 19, name: 'ENODEV', desc: 'No such device' }, { code: 20, name: 'ENOTDIR', desc: 'Not a directory' }, { code: 21, name: 'EISDIR', desc: 'Is a directory' }, { code: 22, name: 'EINVAL', desc: 'Invalid argument' }, { code: 23, name: 'ENFILE', desc: 'Too many open files in system' }, { code: 24, name: 'EMFILE', desc: 'Too many open files' }, { code: 25, name: 'ENOTTY', desc: 'Inappropriate ioctl for device' }, { code: 26, name: 'ETXTBSY', desc: 'Text file busy' }, { code: 27, name: 'EFBIG', desc: 'File too large' }, { code: 28, name: 'ENOSPC', desc: 'No space left on device' }, { code: 29, name: 'ESPIPE', desc: 'Illegal seek' }, { code: 30, name: 'EROFS', desc: 'Read-only file system' }, { code: 31, name: 'EMLINK', desc: 'Too many links' }, { code: 32, name: 'EPIPE', desc: 'Broken pipe' }, { code: 33, name: 'EDOM', desc: 'Numerical argument out of domain' }, { code: 34, name: 'ERANGE', desc: 'Numerical result out of range' }, { code: 35, name: 'EDEADLOCK', desc: 'Resource deadlock avoided' }, { code: 36, name: 'ENAMETOOLONG', desc: 'File name too long' }, { code: 37, name: 'ENOLCK', desc: 'No locks available' }, { code: 38, name: 'ENOSYS', desc: 'Function not implemented' }, { code: 39, name: 'ENOTEMPTY', desc: 'Directory not empty' }, { code: 40, name: 'ELOOP', desc: 'Too many levels of symbolic links' }, { code: 42, name: 'ENOMSG', desc: 'No message of desired type' }, { code: 43, name: 'EIDRM', desc: 'Identifier removed' }, { code: 44, name: 'ECHRNG', desc: 'Channel number out of range' }, { code: 45, name: 'EL2NSYNC', desc: 'Level 2 not synchronized' }, { code: 46, name: 'EL3HLT', desc: 'Level 3 halted' }, { code: 47, name: 'EL3RST', desc: 'Level 3 reset' }, { code: 48, name: 'ELNRNG', desc: 'Link number out of range' }, { code: 49, name: 'EUNATCH', desc: 'Protocol driver not attached' }, { code: 50, name: 'ENOCSI', desc: 'No CSI structure available' }, { code: 51, name: 'EL2HLT', desc: 'Level 2 halted' }, { code: 52, name: 'EBADE', desc: 'Invalid exchange' }, { code: 53, name: 'EBADR', desc: 'Invalid request descriptor' }, { code: 54, name: 'EXFULL', desc: 'Exchange full' }, { code: 55, name: 'ENOANO', desc: 'No anode' }, { code: 56, name: 'EBADRQC', desc: 'Invalid request code' }, { code: 57, name: 'EBADSLT', desc: 'Invalid slot' }, { code: 59, name: 'EBFONT', desc: 'Bad font file format' }, { code: 60, name: 'ENOSTR', desc: 'Device not a stream' }, { code: 61, name: 'ENODATA', desc: 'No data available' }, { code: 62, name: 'ETIME', desc: 'Timer expired' }, { code: 63, name: 'ENOSR', desc: 'Out of streams resources' }, { code: 64, name: 'ENONET', desc: 'Machine is not on the network' }, { code: 65, name: 'ENOPKG', desc: 'Package not installed' }, { code: 66, name: 'EREMOTE', desc: 'Object is remote' }, { code: 67, name: 'ENOLINK', desc: 'Link has been severed' }, { code: 68, name: 'EADV', desc: 'Advertise error' }, { code: 69, name: 'ESRMNT', desc: 'Srmount error' }, { code: 70, name: 'ECOMM', desc: 'Communication error on send' }, { code: 71, name: 'EPROTO', desc: 'Protocol error' }, { code: 72, name: 'EMULTIHOP', desc: 'Multihop attempted' }, { code: 73, name: 'EDOTDOT', desc: 'RFS specific error' }, { code: 74, name: 'EBADMSG', desc: 'Bad message' }, { code: 75, name: 'EOVERFLOW', desc: 'Value too large for defined data type' }, { code: 76, name: 'ENOTUNIQ', desc: 'Name not unique on network' }, { code: 77, name: 'EBADFD', desc: 'File descriptor in bad state' }, { code: 78, name: 'EREMCHG', desc: 'Remote address changed' }, { code: 79, name: 'ELIBACC', desc: 'Can not access a needed shared library' }, { code: 80, name: 'ELIBBAD', desc: 'Accessing a corrupted shared library' }, { code: 81, name: 'ELIBSCN', desc: '.lib section in a.out corrupted' }, { code: 82, name: 'ELIBMAX', desc: 'Attempting to link in too many shared libraries' }, { code: 83, name: 'ELIBEXEC', desc: 'Cannot exec a shared library directly' }, { code: 84, name: 'EILSEQ', desc: 'Invalid or incomplete multibyte or wide character' }, { code: 85, name: 'ERESTART', desc: 'Interrupted system call should be restarted' }, { code: 86, name: 'ESTRPIPE', desc: 'Streams pipe error' }, { code: 87, name: 'EUSERS', desc: 'Too many users' }, { code: 88, name: 'ENOTSOCK', desc: 'Socket operation on non-socket' }, { code: 89, name: 'EDESTADDRREQ', desc: 'Destination address required' }, { code: 90, name: 'EMSGSIZE', desc: 'Message too long' }, { code: 91, name: 'EPROTOTYPE', desc: 'Protocol wrong type for socket' }, { code: 92, name: 'ENOPROTOOPT', desc: 'Protocol not available' }, { code: 93, name: 'EPROTONOSUPPORT', desc: 'Protocol not supported' }, { code: 94, name: 'ESOCKTNOSUPPORT', desc: 'Socket type not supported' }, { code: 95, name: 'ENOTSUP', desc: 'Operation not supported' }, { code: 96, name: 'EPFNOSUPPORT', desc: 'Protocol family not supported' }, { code: 97, name: 'EAFNOSUPPORT', desc: 'Address family not supported by protocol' }, { code: 98, name: 'EADDRINUSE', desc: 'Address already in use' }, { code: 99, name: 'EADDRNOTAVAIL', desc: 'Cannot assign requested address' }, { code: 100, name: 'ENETDOWN', desc: 'Network is down' }, { code: 101, name: 'ENETUNREACH', desc: 'Network is unreachable' }, { code: 102, name: 'ENETRESET', desc: 'Network dropped connection on reset' }, { code: 103, name: 'ECONNABORTED', desc: 'Software caused connection abort' }, { code: 104, name: 'ECONNRESET', desc: 'Connection reset by peer' }, { code: 105, name: 'ENOBUFS', desc: 'No buffer space available' }, { code: 106, name: 'EISCONN', desc: 'Transport endpoint is already connected' }, { code: 107, name: 'ENOTCONN', desc: 'Transport endpoint is not connected' }, { code: 108, name: 'ESHUTDOWN', desc: 'Cannot send after transport endpoint shutdown' }, { code: 109, name: 'ETOOMANYREFS', desc: 'Too many references: cannot splice' }, { code: 110, name: 'ETIMEDOUT', desc: 'Connection timed out' }, { code: 111, name: 'ECONNREFUSED', desc: 'Connection refused' }, { code: 112, name: 'EHOSTDOWN', desc: 'Host is down' }, { code: 113, name: 'EHOSTUNREACH', desc: 'No route to host' }, { code: 114, name: 'EALREADY', desc: 'Operation already in progress' }, { code: 115, name: 'EINPROGRESS', desc: 'Operation now in progress' }, { code: 116, name: 'ESTALE', desc: 'Stale file handle' }, { code: 117, name: 'EUCLEAN', desc: 'Structure needs cleaning' }, { code: 118, name: 'ENOTNAM', desc: 'Not a XENIX named type file' }, { code: 119, name: 'ENAVAIL', desc: 'No XENIX semaphores available' }, { code: 120, name: 'EISNAM', desc: 'Is a named type file' }, { code: 121, name: 'EREMOTEIO', desc: 'Remote I/O error' }, { code: 122, name: 'EDQUOT', desc: 'Disk quota exceeded' }, { code: 123, name: 'ENOMEDIUM', desc: 'No medium found' }, { code: 124, name: 'EMEDIUMTYPE', desc: 'Wrong medium type' }, { code: 125, name: 'ECANCELED', desc: 'Operation canceled' }, { code: 126, name: 'ENOKEY', desc: 'Required key not available' }, { code: 127, name: 'EKEYEXPIRED', desc: 'Key has expired' }, { code: 128, name: 'EKEYREVOKED', desc: 'Key has been revoked' }, { code: 129, name: 'EKEYREJECTED', desc: 'Key was rejected by service' }, { code: 130, name: 'EOWNERDEAD', desc: 'Owner died' }, { code: 131, name: 'ENOTRECOVERABLE', desc: 'State not recoverable' }, { code: 132, name: 'ERFKILL', desc: 'Operation not possible due to RF-kill' }, ];