diff options
author | Simon Rettberg | 2015-12-07 14:32:43 +0100 |
---|---|---|
committer | Simon Rettberg | 2015-12-07 14:32:43 +0100 |
commit | fdfdb5ed4e14745c8c2dbb91b581484acea19841 (patch) | |
tree | 76cc74d9ac10b477fd5e2948fe026fbceff14bbf | |
parent | [SERVER] Add missing nullptr check from refactoring, improve locking (diff) | |
download | dnbd3-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.c | 8 |
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; |