diff options
author | Simon Rettberg | 2013-08-13 17:04:18 +0200 |
---|---|---|
committer | Simon Rettberg | 2013-08-13 17:04:18 +0200 |
commit | c25838a76eacef9a08ae4bca3762d1d328f2b882 (patch) | |
tree | c16c17babd40c0c5b96b87c57ff6bd735e9a952a /src/server/altservers.c | |
parent | [SERVER] Fix race condition in uplink request aggregation, other small improv... (diff) | |
download | dnbd3-c25838a76eacef9a08ae4bca3762d1d328f2b882.tar.gz dnbd3-c25838a76eacef9a08ae4bca3762d1d328f2b882.tar.xz dnbd3-c25838a76eacef9a08ae4bca3762d1d328f2b882.zip |
Test your coke, dork!
Diffstat (limited to 'src/server/altservers.c')
-rw-r--r-- | src/server/altservers.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/server/altservers.c b/src/server/altservers.c index 86b2dce..a98bedc 100644 --- a/src/server/altservers.c +++ b/src/server/altservers.c @@ -420,9 +420,12 @@ static void *altserver_main(void *data) if ( send( sock, &request, sizeof(request), 0 ) != sizeof(request) ) ERROR_GOTO_VA( server_failed, "[ERROR] Could not request random block for %s", uplink->image->lower_name ); // See if requesting the block succeeded ++++++++++++++++++++++ - if ( recv( sock, &reply, sizeof(reply), MSG_WAITALL ) != sizeof(reply) ) { - ERROR_GOTO_VA( server_failed, "[ERROR] Received corrupted reply header after CMD_GET_BLOCK (%s)", - uplink->image->lower_name ); + const int retlen = recv( sock, &reply, sizeof(reply), MSG_WAITALL ); + if ( retlen != sizeof(reply) ) { + char buf[100] = { 0 }; + host_to_string( &servers[itAlt], buf, 100 ); + ERROR_GOTO_VA( server_failed, "[ERROR] Received corrupted reply header (%d, %s) after CMD_GET_BLOCK (%s)", + retlen, buf, uplink->image->lower_name ); } // check reply header fixup_reply( reply ); |