summaryrefslogtreecommitdiff
path: root/src/test/test_dir.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2017-03-15 11:53:01 -0400
committerNick Mathewson <nickm@torproject.org>2017-03-15 12:16:17 -0400
commit44514058b96440eaa1b364b915860ae372207ca6 (patch)
tree02f31e95825f97581fe7775935eecf8432f4412d /src/test/test_dir.c
parentd642ceb8dff5e837bc0e27f9f50812beece06401 (diff)
downloadtor-44514058b96440eaa1b364b915860ae372207ca6.tar.gz
tor-44514058b96440eaa1b364b915860ae372207ca6.zip
Correctly handle fd-drain errors on windows workqueues
Windows doesn't let you check the socket error for a socket with WSAGetLastError() and getsockopt(SO_ERROR). But getsockopt(SO_ERROR) clears the error on the socket, so you can't call it more than once per error. When we introduced recv_ni to help drain alert sockets, back in 0.2.6.3-alpha, we had the failure path for recv_ni call getsockopt() twice, though: once to check for EINTR and one to check for EAGAIN. Of course, we never got the eagain, so we treated it as an error, and warned about: "No error". The fix here is to have these functions return -errno on failure. Fixes bug 21540; bugfix on 0.2.6.3-alpha.
Diffstat (limited to 'src/test/test_dir.c')
0 files changed, 0 insertions, 0 deletions