summaryrefslogtreecommitdiff
path: root/src/tcp_socket.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/tcp_socket.cpp')
-rw-r--r--src/tcp_socket.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/tcp_socket.cpp b/src/tcp_socket.cpp
index e7a69e4..07159d8 100644
--- a/src/tcp_socket.cpp
+++ b/src/tcp_socket.cpp
@@ -79,7 +79,7 @@ int zmq::tcp_socket_t::write (const void *data, int size)
// we'll get an error (this may happen during the speculative write).
if (nbytes == SOCKET_ERROR && WSAGetLastError () == WSAEWOULDBLOCK)
return 0;
-
+
// Signalise peer failure.
if (nbytes == -1 && (
WSAGetLastError () == WSAENETDOWN ||
@@ -119,7 +119,7 @@ int zmq::tcp_socket_t::read (void *data, int size)
// Orderly shutdown by the other peer.
if (nbytes == 0)
- return -1;
+ return -1;
return (size_t) nbytes;
}
@@ -200,6 +200,9 @@ int zmq::tcp_socket_t::write (const void *data, int size)
if (nbytes == -1 && (errno == ECONNRESET || errno == EPIPE))
return -1;
+ if (nbytes == 1)
+ fprintf (stderr, "E: unhandled error on send: %d/%s\n",
+ errno, strerror (errno));
errno_assert (nbytes != -1);
return (size_t) nbytes;
}
@@ -220,6 +223,9 @@ int zmq::tcp_socket_t::read (void *data, int size)
errno == ETIMEDOUT || errno == EHOSTUNREACH))
return -1;
+ if (nbytes == 1)
+ fprintf (stderr, "E: unhandled error on recv: %d/%s\n",
+ errno, strerror (errno));
errno_assert (nbytes != -1);
// Orderly shutdown by the other peer.