> I don't have an answer to this problem yet. > > Can we use send(sock, "", 0) to reenable FD_WRITE, perhaps?
Can't it just be assumed that the socket is _always_ writeable _unless_ the last send() failed? In other words, try to always send() if it did not fail before. If it did, only send() after FD_WRITE was returned in the event mask. We do that in our code and it works without any issues with any sorts of timeouts (including none). 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