diff options
author | Simon Rettberg | 2018-03-19 17:22:00 +0100 |
---|---|---|
committer | Simon Rettberg | 2018-03-19 17:22:00 +0100 |
commit | 3e22ffa9f329e6224aa9d01dfde8f923229fa678 (patch) | |
tree | 436bddb91629eb268b828bf1046377a923e68b7e | |
parent | [SERVER] Increase read() block size when calculating CRC32 (diff) | |
download | dnbd3-3e22ffa9f329e6224aa9d01dfde8f923229fa678.tar.gz dnbd3-3e22ffa9f329e6224aa9d01dfde8f923229fa678.tar.xz dnbd3-3e22ffa9f329e6224aa9d01dfde8f923229fa678.zip |
[SERVER] image.c: Add size to RPC data, rename bytesReceived, always add uplink if existent
-rw-r--r-- | src/server/image.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/server/image.c b/src/server/image.c index 28dc397..ec0ab7b 100644 --- a/src/server/image.c +++ b/src/server/image.c @@ -1555,7 +1555,7 @@ json_t* image_getListAsJson() json_t *imagesJson = json_array(); json_t *jsonImage; int i; - char buffer[100] = { 0 }; + char uplinkName[100] = { 0 }; uint64_t bytesReceived; int users, completeness; @@ -1569,24 +1569,28 @@ json_t* image_getListAsJson() completeness = image_getCompletenessEstimate( image ); if ( image->uplink == NULL ) { bytesReceived = 0; + uplinkName[0] = '\0'; } else { bytesReceived = image->uplink->bytesReceived; - if ( !host_to_string( &image->uplink->currentServer, buffer, sizeof(buffer) ) ) { - buffer[0] = '\0'; + if ( !host_to_string( &image->uplink->currentServer, uplinkName, sizeof(uplinkName) ) ) { + uplinkName[0] = '\0'; } } image->users++; // Prevent freeing after we unlock spin_unlock( &image->lock ); - jsonImage = json_pack( "{sisssisisi}", + jsonImage = json_pack( "{sisssisisisI}", "id", image->id, // id, name, rid never change, so access them without locking "name", image->name, "rid", (int) image->rid, "users", users, - "complete", completeness ); + "complete", completeness, + "size", (json_int_t)image->virtualFilesize ); if ( bytesReceived != 0 ) { - json_object_set_new( jsonImage, "uplinkServer", json_string( buffer ) ); - json_object_set_new( jsonImage, "receivedBytes", json_integer( (json_int_t) bytesReceived ) ); + json_object_set_new( jsonImage, "bytesReceived", json_integer( (json_int_t) bytesReceived ) ); + } + if ( uplinkName[0] != '\0' ) { + json_object_set_new( jsonImage, "uplinkServer", json_string( uplinkName ) ); } json_array_append_new( imagesJson, jsonImage ); |