Change to use POSIX standard O_NONBLOCK