X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Flibc.so_src%2Ferrno.c;h=af369b12d87055243a02e9f4d3d6d139db1557b9;hb=b99e0f9bd0dfcf6f1b3d33534ea78f8fb33be92a;hp=b5fe95874ed1c285c78c0532781e65ff4da932b4;hpb=e632a3212d1767a18a74e7a7c35f52c8a1a784d2;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/libc.so_src/errno.c b/Usermode/Libraries/libc.so_src/errno.c index b5fe9587..af369b12 100644 --- a/Usermode/Libraries/libc.so_src/errno.c +++ b/Usermode/Libraries/libc.so_src/errno.c @@ -17,20 +17,38 @@ EXPORT int *libc_geterrno() EXPORT char *strerror(int errnum) { - switch(errnum) + switch((enum libc_eErrorNumbers)errnum) { case EOK: return "Success"; - case EISDIR: return "Is a directory"; - case ENOTDIR: return "Not a directory"; case ENOSYS: return "Invalid instruction/syscall"; + case EINVAL: return "Bad argument(s)"; + case EBADF: return "Invalid file"; + case ENOMEM: return "No free memory"; + case EACCES: return "Not permitted"; + case EBUSY: return "Resource is busy"; + case ERANGE: return "Value out of range"; + case ENOTFOUND: return "Item not found"; + case EROFS: return "Read only filesystem"; + case ENOTIMPL: return "Not implimented"; case ENOENT: return "No such file or directory"; - case EINVAL: return "Bad arguments"; - case EPERM: return "Permissions error"; - default: - _SysDebug("strerror: errnum=%i unk", errnum); - errno = EINVAL; - return "unknown error"; + case EEXIST: return "Already exists"; + case ENFILE: return "Too many open files"; + case ENOTDIR: return "Not a directory"; + case EISDIR: return "Is a directory"; + case EIO: return "IO Error"; + case EINTR: return "Interrupted"; + case EWOULDBLOCK: return "Operation would have blocked"; + case ENODEV: return "No such device"; + case EADDRNOTAVAIL: return "Address not avaliable"; + case EINPROGRESS: return "Operation in process"; + case EPERM: return "Operation not permitted"; + case EAGAIN: return "Try again"; + case EALREADY: return "Operation was no-op"; + case EINTERNAL: return "Internal error"; } + _SysDebug("strerror: errnum=%i unk", errnum); + errno = EINVAL; + return "unknown error"; } EXPORT int strerror_r(int errnum, char *buf, size_t bufsiz)