* - errno and strerror
*/
#include "lib.h"
+#include <stdio.h>
#include <errno.h>
#include <acess/sys.h>
#include <string.h>
case EPERM: return "Operation not permitted";
case ENOTTY: return "Not a TTY";
case EAGAIN: return "Try again";
+ case EFBIG: return "File too big";
case EALREADY: return "Operation was no-op";
+ case EAFNOSUPPORT: return "Address family not supported";
case EINTERNAL: return "Internal error";
}
_SysDebug("strerror: errnum=%i unk", errnum);
return 0;
}
+// stdio.h
+EXPORT void perror(const char *s)
+{
+ int err = errno;
+ if( s && s[0] ) {
+ fprintf(stderr, "%s: (%i) %s\n", s, err, strerror(err));
+ }
+ else {
+ fprintf(stderr, "(%i) %s\n", err, strerror(err));
+ }
+ _SysDebug("perror('%s'): %s (%i)", s, strerror(err), err);
+}
+