Browse Source

Bugfix: stratum: Log WSAGetLastError() for error number on recv failures on Windows

Luke Dashjr 12 years ago
parent
commit
68aa670b50
2 changed files with 3 additions and 1 deletions
  1. 1 1
      util.c
  2. 2 0
      util.h

+ 1 - 1
util.c

@@ -1383,7 +1383,7 @@ char *recv_line(struct pool *pool)
 			if (n < 0) {
 				//Save errno from being overweitten bei socket_ commands 
 				int socket_recv_errno;
-				socket_recv_errno = errno;
+				socket_recv_errno = SOCKERR;
 				if (!sock_blocks() || !socket_full(pool, false)) {
 					applog(LOG_DEBUG, "Failed to recv sock in recv_line: %d", socket_recv_errno);
 					suspend_stratum(pool);

+ 2 - 0
util.h

@@ -30,6 +30,7 @@
 	#define INVINETADDR -1
 	#define CLOSESOCKET close
 
+	#define SOCKERR (errno)
 	#define SOCKERRMSG bfg_strerror(errno, BST_SOCKET)
 	static inline bool sock_blocks(void)
 	{
@@ -45,6 +46,7 @@
 	#define INVINETADDR INADDR_NONE
 	#define CLOSESOCKET closesocket
 
+	#define SOCKERR (WSAGetLastError())
 	#define SOCKERRMSG bfg_strerror(WSAGetLastError(), BST_SOCKET)
 
 	static inline bool sock_blocks(void)