https://bugs.winehq.org/show_bug.cgi?id=38294
Bug ID: 38294 Summary: select() does not report exception on socket after non-blocking connect() fails Product: Wine Version: 1.7.22 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winsock Assignee: wine-bugs@winehq.org Reporter: dwmw2@infradead.org Distribution: ---
See http://cr.yp.to/docs/connect.html for a discussion of non-blocking socket connect().
It's not quite right for Windows; under Windows when the connect fails, select() will mark it in the exceptfds and *not* the writefds.
Under wine, however, it doesn't marked in *either* set of fds and select() just hangs for ever. Seen with the OpenConnect VPN client, when connecting to any port that doesn't accept a connection.