summary refs log tree commit diff stats
path: root/lib/windows
diff options
context:
space:
mode:
authoralaviss <leorize+oss@disroot.org>2020-08-01 19:27:55 +0000
committerGitHub <noreply@github.com>2020-08-01 21:27:55 +0200
commitc619cedd7cba60d588707fbbb2905c8ac85fd12a (patch)
tree89af3b938f2bc6a8cfe9d3fede9dfded06fa2467 /lib/windows
parent3ce32a7e40c92f305a6f48017fe9323d35720f13 (diff)
downloadNim-c619cedd7cba60d588707fbbb2905c8ac85fd12a.tar.gz
net: allow close() to ignore SSL failures due to disconnections (#15120)
* net: allow close() to ignore SSL failures due to disconnections

Comes with this PR is also a SIGPIPE handling contraption.

* net: don't do selectSigpipe() on macOS

macOS sockets have SO_NOSIGPIPE set, so an EPIPE doesn't necessary mean
that a SIGPIPE happened.

* net: fix alreadyBlocked logic

* net: WSAESHUTDOWN is also a disconnection error
Diffstat (limited to 'lib/windows')
-rw-r--r--lib/windows/winlean.nim1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/windows/winlean.nim b/lib/windows/winlean.nim
index bd4cfdca7..c28700374 100644
--- a/lib/windows/winlean.nim
+++ b/lib/windows/winlean.nim
@@ -813,6 +813,7 @@ const
   WSAEINPROGRESS* = 10036
   WSAEINTR* = 10004
   WSAEWOULDBLOCK* = 10035
+  WSAESHUTDOWN* = 10058
   ERROR_NETNAME_DELETED* = 64
   STATUS_PENDING* = 0x103