Asynchronous connects in 2.4 & 2.5

Asynchronous connects in 2.4 & 2.5

Post by Neil Co » Sat, 20 Apr 1996 04:00:00



Doing an asynchronous connect in 2.4 seems to have the following
problem:

first connect() returns EINPROGRESS as expected,

second connect() to check whether the socket is connected yet, causes
a SIGPIPE exception.

This problem can be worked around by ignoring SIGPIPE.

However, in 2.5 the problem is more interesting:

first connect() returns EINPROGRESS as expected,

second connect() returns EAGAIN. This is interesting, since EAGAIN is
not mentioned as a possible return value in the connect man page. I am
of course expecting EISCONN as the return value of the second connect.

Anyone got any ideas? Is there a patch?

Neil.