]> git.proxmox.com Git - mirror_qemu.git/commit - util/oslib-win32.c
util: WSAEWOULDBLOCK on connect should map to EINPROGRESS
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Tue, 1 Oct 2019 13:26:07 +0000 (17:26 +0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 4 Oct 2019 16:49:18 +0000 (18:49 +0200)
commitf1cd5d41efe0eef5d536466ee17464368b028dd2
tree54fc43c8b1b1588eca49f854b29f06e83e6f7dd6
parent56f997500aabbc1435a8cd2ea7c39d92c02755b0
util: WSAEWOULDBLOCK on connect should map to EINPROGRESS

In general, WSAEWOULDBLOCK can be mapped to EAGAIN as done by
socket_error() (or EWOULDBLOCK). But for connect() with non-blocking
sockets, it actually means the operation is in progress:

https://docs.microsoft.com/en-us/windows/win32/api/winsock2/nf-winsock2-connect
"The socket is marked as nonblocking and the connection cannot be completed immediately."

(this is also the behaviour implemented by GLib GSocket)

This fixes socket_can_bind_connect() test on win32.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
util/oslib-win32.c