WRT the timeout logic in create_connect_socket(), I ad-hoc tested on Windows that setting INTERNET_OPTION_CONNECT_TIMEOUT affect this in a seemingly similar way: if timeout is expired on first address connect attempt it won't attempt the next, as callback calls go. Such a test seems to be a bit hard to incorporate reliably, for some reason on Windows connection to [localhost](http://localhost) ::1 takes considerable time before it fails (moves to 127.0.0.1 attempt) or times out which is not the case on Wine / Linux. Unrelated, in case of timeout Windows returns INTERNET_OPTION_CONNECT_TIMEOUT instead of ERROR_INTERNET_CANNOT_CONNECT (while we always return the latter, both before and after my patches). -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10794#note_138480