summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Rettberg2015-12-07 14:32:43 +0100
committerSimon Rettberg2015-12-07 14:32:43 +0100
commitfdfdb5ed4e14745c8c2dbb91b581484acea19841 (patch)
tree76cc74d9ac10b477fd5e2948fe026fbceff14bbf
parent[SERVER] Add missing nullptr check from refactoring, improve locking (diff)
downloaddnbd3-fdfdb5ed4e14745c8c2dbb91b581484acea19841.tar.gz
dnbd3-fdfdb5ed4e14745c8c2dbb91b581484acea19841.tar.xz
dnbd3-fdfdb5ed4e14745c8c2dbb91b581484acea19841.zip
[SERVER] Use error code constants instead of magic values
-rw-r--r--src/server/net.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/net.c b/src/server/net.c
index 0745e9b..3c74a91 100644
--- a/src/server/net.c
+++ b/src/server/net.c
@@ -237,7 +237,6 @@ void *net_client_handler(void *dnbd3_client)
send_reply( client->sock, &reply, NULL );
break;
}
- //printf( "Request - size: %" PRIu32 ", offset: %" PRIu64 "\n", request.size, request.offset );
if ( request.size != 0 && image->cache_map != NULL ) {
// This is a proxyed image, check if we need to relay the request...
@@ -317,11 +316,12 @@ void *net_client_handler(void *dnbd3_client)
while ( done < request.size ) {
const ssize_t ret = sendfile( client->sock, image_file, &offset, request.size - done );
if ( ret <= 0 ) {
+ const int err = errno;
if ( lock ) pthread_mutex_unlock( &client->sendMutex );
- if ( ret < 0 && errno != 32 && errno != 104 )
+ if ( ret < 0 && err != EPIPE && err != ECONNRESET )
logadd( LOG_DEBUG1, "sendfile failed (image to net. sent %d/%d, errno=%d)\n",
- (int)done, (int)request.size, (int)errno );
- if ( errno == EBADF || errno == EINVAL || errno == EIO ) image->working = false;
+ (int)done, (int)request.size, err );
+ if ( err == EBADF || err == EINVAL || err == EIO ) image->working = false;
goto exit_client_cleanup;
}
done += ret;