From: Sergey Matveev Date: Fri, 28 Apr 2017 13:12:52 +0000 (+0300) Subject: Validate the last chunk's size too X-Git-Tag: 0.7^2~34 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=025a4d3d1a0fe67c3ab8d1fa70c86992984cb276;p=nncp.git Validate the last chunk's size too --- diff --git a/src/cypherpunks.ru/nncp/cmd/nncp-reass/main.go b/src/cypherpunks.ru/nncp/cmd/nncp-reass/main.go index 588ba0e..10024e5 100644 --- a/src/cypherpunks.ru/nncp/cmd/nncp-reass/main.go +++ b/src/cypherpunks.ru/nncp/cmd/nncp-reass/main.go @@ -117,7 +117,13 @@ func process(ctx *nncp.Ctx, path string, keep, dryRun, stdout, dumpMeta bool) bo allChunksExist = false continue } - if chunkNum+1 != len(chunksPaths) && uint64(fi.Size()) != metaPkt.ChunkSize { + var badSize bool + if chunkNum+1 == len(chunksPaths) { + badSize = uint64(fi.Size()) != metaPkt.FileSize%metaPkt.ChunkSize + } else { + badSize = uint64(fi.Size()) != metaPkt.ChunkSize + } + if badSize { ctx.LogE("nncp-reass", nncp.SDS{ "path": path, "chunk": strconv.Itoa(chunkNum),