diff options
author | Simon Rettberg | 2020-03-06 15:00:46 +0100 |
---|---|---|
committer | Simon Rettberg | 2020-03-06 15:00:46 +0100 |
commit | ff4e770e645c05da48baddb30a77b9dc15ca76fd (patch) | |
tree | 7eb155343d7b5ece21479fa8f81524cfba7b672e /src/server/image.c | |
parent | [SERVER] Reload cache maps periodically for local images (diff) | |
download | dnbd3-ff4e770e645c05da48baddb30a77b9dc15ca76fd.tar.gz dnbd3-ff4e770e645c05da48baddb30a77b9dc15ca76fd.tar.xz dnbd3-ff4e770e645c05da48baddb30a77b9dc15ca76fd.zip |
[SERVER] Handle "warn unused result" cases
Diffstat (limited to 'src/server/image.c')
-rw-r--r-- | src/server/image.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/server/image.c b/src/server/image.c index 7ffe041..32c9efe 100644 --- a/src/server/image.c +++ b/src/server/image.c @@ -1446,9 +1446,13 @@ static bool image_clone(int sock, char *name, uint16_t revision, uint64_t imageS logadd( LOG_WARNING, "OTF-Clone: Corrupted CRC-32 list. ignored. (%s)", name ); } else { int fd = open( crcFile, O_WRONLY | O_CREAT, 0644 ); - write( fd, &masterCrc, sizeof(uint32_t) ); - write( fd, crc32list, crc32len ); + ssize_t ret = write( fd, &masterCrc, sizeof(masterCrc) ); + ret += write( fd, crc32list, crc32len ); close( fd ); + if ( (size_t)ret != crc32len + sizeof(masterCrc) ) { + logadd( LOG_WARNING, "Could not save freshly received crc32 list for %s:%d", name, (int)revision ); + unlink( crcFile ); + } } } free( crc32list ); |