diff --git a/src/Simplex/FileTransfer/Description.hs b/src/Simplex/FileTransfer/Description.hs index 2418f3005..6e807b807 100644 --- a/src/Simplex/FileTransfer/Description.hs +++ b/src/Simplex/FileTransfer/Description.hs @@ -226,20 +226,14 @@ validateFileDescription :: FileDescription p -> Either String (ValidFileDescript validateFileDescription fd@FileDescription {size, chunks} | chunkNos /= [1 .. length chunks] = Left "chunk numbers are not sequential" | chunksSize chunks /= unFileSize size = Left "chunks total size is different than file size" - | any (> maxChunkReplicas) replicaCounts = Left "too many chunk replicas" - | sum replicaCounts > maxFileReplicas = Left "too many file replicas" + | any (> 16) replicaCounts = Left "too many chunk replicas" + | sum replicaCounts > 4096 = Left "too many file replicas" | otherwise = Right $ ValidFD fd where chunkNos = map (\FileChunk {chunkNo} -> chunkNo) chunks chunksSize = foldl' (\(s :: Int64) FileChunk {chunkSize} -> s + fromIntegral (unFileSize chunkSize)) 0 replicaCounts = map (\FileChunk {replicas} -> length replicas) chunks -maxChunkReplicas :: Int -maxChunkReplicas = 16 - -maxFileReplicas :: Int -maxFileReplicas = 4096 - sharedDescriptionHash :: FileDescription p -> ByteString sharedDescriptionHash FileDescription {size, digest, key, nonce, chunkSize, chunks} = C.sha512Hash $ smpEncode (unFileSize size, unFileDigest digest, C.unSbKey key, nonce, unFileSize chunkSize) <> foldMap chunkFields chunks