> This thread is not about send() blocking or returning EAGAIN. This > is about the behaviour of select(2) and poll(2).
I was merely commenting on your note that if select() returned a socket as writable, and send() writes more than internally allowed, then send() would block. It wouldn't! It'd just write the allowable count, and return as a short write, whether the socket was blocking or not. select() and poll() whether I/O would block. By the virtue of this, a socket, which is in error (except for EAGAIN), is writable exactly because write()/send() to such a socket would return -1 right away. Anton Lavrentiev Contractor NIH/NLM/NCBI -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple