From 550036b6e96cca4df1cc530f0cdd6d662324d3ff Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 2 Aug 2013 20:33:22 +0200 Subject: [SERVER] Some sanity here and there, minor fixes, trying to track down proxy corruption --- src/server/altservers.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/server/altservers.c') diff --git a/src/server/altservers.c b/src/server/altservers.c index 641e36b..89c724f 100644 --- a/src/server/altservers.c +++ b/src/server/altservers.c @@ -377,8 +377,9 @@ static void *altserver_main(void *data) if ( writev( sock, iov, 2 ) != len + sizeof(request) ) goto server_failed; // See if selecting the image succeeded ++++++++++++++++++++++++++++++ if ( recv( sock, &reply, sizeof(reply), MSG_WAITALL ) != sizeof(reply) ) { - ERROR_GOTO_VA( server_failed, "[ERROR] Received corrupted reply header after CMD_SELECT_IMAGE (%s)", - uplink->image->lower_name ); + //ERROR_GOTO_VA( server_failed, "[ERROR] Received corrupted reply header after CMD_SELECT_IMAGE (%s)", + // uplink->image->lower_name ); + goto server_failed; } // check reply header fixup_reply( reply ); @@ -419,7 +420,7 @@ static void *altserver_main(void *data) fixup_reply( reply ); if ( reply.cmd != CMD_GET_BLOCK || reply.size != DNBD3_BLOCK_SIZE ) ERROR_GOTO_VA( server_failed, "[ERROR] Reply to random block request is %d bytes for %s", reply.size, uplink->image->lower_name ); - if ( recv( sock, buffer, DNBD3_BLOCK_SIZE, 0 ) != DNBD3_BLOCK_SIZE ) ERROR_GOTO_VA( server_failed, + if ( recv( sock, buffer, DNBD3_BLOCK_SIZE, MSG_WAITALL ) != DNBD3_BLOCK_SIZE ) ERROR_GOTO_VA( server_failed, "[ERROR] Could not read random block from socket for %s", uplink->image->lower_name ); clock_gettime( CLOCK_MONOTONIC_RAW, &end ); // Measurement done - everything fine so far @@ -450,7 +451,6 @@ static void *altserver_main(void *data) uplink->rttTestResult = RTT_DOCHANGE; } else { // nope - printf( "DONT CHANGE: best: %uµs, current: %uµs\n", bestRtt, currentRtt ); if ( bestSock != -1 ) close( bestSock ); uplink->rttTestResult = RTT_DONTCHANGE; } -- cgit v1.2.3-55-g7522