From fe429ab437361036352d1339e6579559fdca436d Mon Sep 17 00:00:00 2001
From: John Dunn <John.Dunn@qsc.com>
Date: Wed, 28 Nov 2018 13:11:42 -0700
Subject: [PATCH] improve windows error reporting
Signed-off-by: John Dunn <John.Dunn@qsc.com>
---
 src/poll.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/poll.c b/src/poll.c
index 2bdf86ad..d8fa00fc 100644
--- a/src/poll.c
+++ b/src/poll.c
@@ -135,6 +135,8 @@ static bool bsd_socket_disconnected(int sock_err)
     case WSAECONNRESET:
     case WSAENETRESET:
     case WSAESHUTDOWN:
+    case WSAECONNREFUSED:
+    case WSAETIMEDOUT:
 #else
     case ECONNABORTED:
     case ECONNRESET:
@@ -261,6 +263,7 @@ static int bsd_poll(ssh_pollfd_t *fds, nfds_t nfds, int timeout)
                                  (void *)&sock_err,
                                  &sock_err_len);
                 if (sock_err != 0 && bsd_socket_disconnected(sock_err)) {
+                    errno = sock_err;
                     fds[i].revents |= POLLHUP;
                 } else {
                     fds[i].revents |= fds[i].events & (POLLPRI | POLLRDBAND);
-- 
2.14.1.windows.1

