errno.c by @mcscx