-- Linux error messages return { PERM = "Operation not permitted", NOENT = "No such file or directory", SRCH = "No such process", INTR = "Interrupted system call", IO = "Input/output error", NXIO = "No such device or address", ["2BIG"] = "Argument list too long", NOEXEC = "Exec format error", BADF = "Bad file descriptor", CHILD = "No child processes", AGAIN = "Resource temporarily unavailable", NOMEM = "Cannot allocate memory", ACCES = "Permission denied", FAULT = "Bad address", NOTBLK = "Block device required", BUSY = "Device or resource busy", EXIST = "File exists", XDEV = "Invalid cross-device link", NODEV = "No such device", NOTDIR = "Not a directory", ISDIR = "Is a directory", INVAL = "Invalid argument", NFILE = "Too many open files in system", MFILE = "Too many open files", NOTTY = "Inappropriate ioctl for device", TXTBSY = "Text file busy", FBIG = "File too large", NOSPC = "No space left on device", SPIPE = "Illegal seek", ROFS = "Read-only file system", MLINK = "Too many links", PIPE = "Broken pipe", DOM = "Numerical argument out of domain", RANGE = "Numerical result out of range", DEADLK = "Resource deadlock avoided", NAMETOOLONG = "File name too long", NOLCK = "No locks available", NOSYS = "Function not implemented", NOTEMPTY = "Directory not empty", LOOP = "Too many levels of symbolic links", NOMSG = "No message of desired type", IDRM = "Identifier removed", CHRNG = "Channel number out of range", L2NSYNC = "Level 2 not synchronized", L3HLT = "Level 3 halted", L3RST = "Level 3 reset", LNRNG = "Link number out of range", UNATCH = "Protocol driver not attached", NOCSI = "No CSI structure available", L2HLT = "Level 2 halted", BADE = "Invalid exchange", BADR = "Invalid request descriptor", XFULL = "Exchange full", NOANO = "No anode", BADRQC = "Invalid request code", BADSLT = "Invalid slot", BFONT = "Bad font file format", NOSTR = "Device not a stream", NODATA = "No data available", TIME = "Timer expired", NOSR = "Out of streams resources", NONET = "Machine is not on the network", NOPKG = "Package not installed", REMOTE = "Object is remote", NOLINK = "Link has been severed", ADV = "Advertise error", SRMNT = "Srmount error", COMM = "Communication error on send", PROTO = "Protocol error", MULTIHOP = "Multihop attempted", DOTDOT = "RFS specific error", BADMSG = "Bad message", OVERFLOW = "Value too large for defined data type", NOTUNIQ = "Name not unique on network", BADFD = "File descriptor in bad state", REMCHG = "Remote address changed", LIBACC = "Can not access a needed shared library", LIBBAD = "Accessing a corrupted shared library", LIBSCN = ".lib section in a.out corrupted", LIBMAX = "Attempting to link in too many shared libraries", LIBEXEC = "Cannot exec a shared library directly", ILSEQ = "Invalid or incomplete multibyte or wide character", RESTART = "Interrupted system call should be restarted", STRPIPE = "Streams pipe error", USERS = "Too many users", NOTSOCK = "Socket operation on non-socket", DESTADDRREQ = "Destination address required", MSGSIZE = "Message too long", PROTOTYPE = "Protocol wrong type for socket", NOPROTOOPT = "Protocol not available", PROTONOSUPPORT = "Protocol not supported", SOCKTNOSUPPORT = "Socket type not supported", OPNOTSUPP = "Operation not supported", PFNOSUPPORT = "Protocol family not supported", AFNOSUPPORT = "Address family not supported by protocol", ADDRINUSE = "Address already in use", ADDRNOTAVAIL = "Cannot assign requested address", NETDOWN = "Network is down", NETUNREACH = "Network is unreachable", NETRESET = "Network dropped connection on reset", CONNABORTED = "Software caused connection abort", CONNRESET = "Connection reset by peer", NOBUFS = "No buffer space available", ISCONN = "Transport endpoint is already connected", NOTCONN = "Transport endpoint is not connected", SHUTDOWN = "Cannot send after transport endpoint shutdown", TOOMANYREFS = "Too many references: cannot splice", TIMEDOUT = "Connection timed out", CONNREFUSED = "Connection refused", HOSTDOWN = "Host is down", HOSTUNREACH = "No route to host", ALREADY = "Operation already in progress", INPROGRESS = "Operation now in progress", STALE = "Stale NFS file handle", UCLEAN = "Structure needs cleaning", NOTNAM = "Not a XENIX named type file", NAVAIL = "No XENIX semaphores available", ISNAM = "Is a named type file", REMOTEIO = "Remote I/O error", DQUOT = "Disk quota exceeded", NOMEDIUM = "No medium found", MEDIUMTYPE = "Wrong medium type", CANCELED = "Operation canceled", NOKEY = "Required key not available", KEYEXPIRED = "Key has expired", KEYREVOKED = "Key has been revoked", KEYREJECTED = "Key was rejected by service", OWNERDEAD = "Owner died", NOTRECOVERABLE = "State not recoverable", RFKILL = "Operation not possible due to RF-kill", -- only on some platforms DEADLOCK = "File locking deadlock error", INIT = "Reserved EINIT", -- what is correct message? REMDEV = "Remote device", -- what is correct message? HWPOISON = "Reserved EHWPOISON", -- what is correct message? }