If the socket says it's ready to read or write, then I would read or write whatever you planned on reading or writing, but be prepared to handle an error. I think you will find that more robust than looking for particular errors at particular times.
On 2017-06-26 15:52, Carl Hoefs wrote: > On Jun 26, 2017, at 3:37 PM, Dado Colussi <dado.colu...@gmail.com> wrote: > > After the connect() returns EINPROGRESS, and after the select() indicates 1 > descriptor ready for write, getsockopt() returns status=0, errno=0: > > status = getsockopt(sockfd,SOL_SOCKET,SO_ERROR,&error,&len); > > getsockopt() returns 0 on successful retrieval of the option value. So that's > good. > > The option value is stored in memory pointed to by the fourth parameter > (named 'error', above). Hence the variable error == ECONNREFUSED. Yes, it does indeed return ECONNREFUSED, errno = 61, "Interrupted system call" into my error variable! (I thought it would also set errno, but it doesn't.) Thanks; this is exactly what I was looking for! -Carl _______________________________________________ Do not post admin requests to the list. They will be ignored. Macnetworkprog mailing list (Macnetworkprog@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/macnetworkprog/tim%40ivisit.com This email sent to t...@ivisit.com
_______________________________________________ Do not post admin requests to the list. They will be ignored. Macnetworkprog mailing list (Macnetworkprog@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/macnetworkprog/archive%40mail-archive.com This email sent to arch...@mail-archive.com