diff --git a/main/core/src/main/java/org/cryptomator/webdav/jackrabbit/EncryptedFilePart.java b/main/core/src/main/java/org/cryptomator/webdav/jackrabbit/EncryptedFilePart.java index b9d241799..e9af363b7 100644 --- a/main/core/src/main/java/org/cryptomator/webdav/jackrabbit/EncryptedFilePart.java +++ b/main/core/src/main/java/org/cryptomator/webdav/jackrabbit/EncryptedFilePart.java @@ -53,7 +53,7 @@ class EncryptedFilePart extends EncryptedFile { assert Files.isRegularFile(filePath); assert contentLength != null; - final Long rangeLength = range.getRight() - range.getLeft(); + final Long rangeLength = range.getRight() - range.getLeft() + 1; outputContext.setModificationTime(Files.getLastModifiedTime(filePath).toMillis()); if (rangeLength <= 0 || range.getLeft() > contentLength - 1) { // unsatisfiable content range: diff --git a/main/crypto-aes/src/main/java/org/cryptomator/crypto/aes256/Aes256Cryptor.java b/main/crypto-aes/src/main/java/org/cryptomator/crypto/aes256/Aes256Cryptor.java index 838e25801..0d3cbb86d 100644 --- a/main/crypto-aes/src/main/java/org/cryptomator/crypto/aes256/Aes256Cryptor.java +++ b/main/crypto-aes/src/main/java/org/cryptomator/crypto/aes256/Aes256Cryptor.java @@ -549,7 +549,7 @@ public class Aes256Cryptor implements Cryptor, AesCryptographicConfiguration { final Long fileSize = sensitiveHeaderContentBuf.getLong(); sensitiveHeaderContentBuf.get(fileKeyBytes); - assert pos + length < fileSize; + assert pos + length - 1 < fileSize; // find first relevant block: final long startBlock = pos / CONTENT_MAC_BLOCK; // floor