diff options
author | Yoann Vandoorselaere <yoann.v@prelude-ids.com> | 2008-09-11 18:09:17 +0200 |
---|---|---|
committer | Paolo Bonzini <bonzini@gnu.org> | 2008-09-11 18:09:17 +0200 |
commit | 2075aae40d2ce87695428cfbe1c5f00ec27e1f55 (patch) | |
tree | 863dbdf3ecc87fd7253982e10e7537d9482deca0 /lib | |
parent | 2493eaad3d7c73cf929ec072ae0807fee9afe8e5 (diff) | |
download | gnulib-2075aae40d2ce87695428cfbe1c5f00ec27e1f55.tar.gz |
poll: fix polling unconnected server sockets on WIN32
2008-09-11 Yoann Vandoorselaere <yoann.v@prelude-ids.com>
* lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/poll.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/poll.c b/lib/poll.c index 4a62dc1df1..e0714f09a9 100644 --- a/lib/poll.c +++ b/lib/poll.c @@ -180,6 +180,12 @@ poll (pfd, nfd, timeout) #else char data[64]; r = recv (pfd[i].fd, data, sizeof (data), MSG_PEEK); + +# ifdef WIN32 + if (r < 0 && GetLastError() == 10057) /* server socket */ + socket_errno = ENOTCONN; + else +# endif socket_errno = (r < 0) ? errno : 0; #endif if (r == 0) |