aboutsummaryrefslogtreecommitdiff
path: root/vl.c
diff options
context:
space:
mode:
authorths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-03-25 15:58:03 +0000
committerths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-03-25 15:58:03 +0000
commitf5b122688b8d7912e7094be60cca4d3a2ee5a3e7 (patch)
tree6ab308c2dcaadca657f9141ad0ff2a1174b4e543 /vl.c
parent62724a3773b5553a696ebc5cdd212908f7572c6a (diff)
downloadqemu-f5b122688b8d7912e7094be60cca4d3a2ee5a3e7.zip
qemu-f5b122688b8d7912e7094be60cca4d3a2ee5a3e7.tar.gz
qemu-f5b122688b8d7912e7094be60cca4d3a2ee5a3e7.tar.bz2
Windows sockets like to be different. Inspired by a patch from Alex Consul.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2535 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'vl.c')
-rw-r--r--vl.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/vl.c b/vl.c
index 6c5dbc8..b2b49e7 100644
--- a/vl.c
+++ b/vl.c
@@ -2850,6 +2850,10 @@ static CharDriverState *qemu_chr_open_tcp(const char *host_str,
if (err == EINTR || err == EWOULDBLOCK) {
} else if (err == EINPROGRESS) {
break;
+#ifdef _WIN32
+ } else if (err == WSAEALREADY) {
+ break;
+#endif
} else {
goto fail;
}
@@ -4017,6 +4021,10 @@ static int net_socket_connect_init(VLANState *vlan, const char *host_str)
if (err == EINTR || err == EWOULDBLOCK) {
} else if (err == EINPROGRESS) {
break;
+#ifdef _WIN32
+ } else if (err == WSAEALREADY) {
+ break;
+#endif
} else {
perror("connect");
closesocket(fd);