Added O_NONBLOCK