1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-11 07:17:58 +00:00

Differentiate socket closed from socket error in recv_line.

This commit is contained in:
Con Kolivas 2013-04-06 11:21:55 +11:00
parent 86821eb45d
commit c6ca12f084

9
util.c
View File

@ -1038,11 +1038,16 @@ char *recv_line(struct pool *pool)
mutex_lock(&pool->stratum_lock);
do {
char s[RBUFSIZE];
size_t slen, n;
size_t slen;
ssize_t n;
memset(s, 0, RBUFSIZE);
n = recv(pool->sock, s, RECVSIZE, 0);
if (n < 1 && errno != EAGAIN && errno != EWOULDBLOCK) {
if (!n) {
applog(LOG_DEBUG, "Socket closed waiting in recv_line");
break;
}
if (n < 0 && errno != EAGAIN && errno != EWOULDBLOCK) {
applog(LOG_DEBUG, "Failed to recv sock in recv_line");
break;
}