From 025a4d3d1a0fe67c3ab8d1fa70c86992984cb276 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Fri, 28 Apr 2017 16:12:52 +0300 Subject: [PATCH] Validate the last chunk's size too --- src/cypherpunks.ru/nncp/cmd/nncp-reass/main.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) 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), -- 2.48.1