From 7e115fed6d604653ad4b03ec8bc1c68b0488202e Mon Sep 17 00:00:00 2001
From: akwizgran <akwizgran@users.sourceforge.net>
Date: Fri, 1 Jan 2016 14:28:38 +0000
Subject: [PATCH] Allow output shorter than getDigestSize().

---
 briar-core/src/org/briarproject/crypto/DigestWrapper.java | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/briar-core/src/org/briarproject/crypto/DigestWrapper.java b/briar-core/src/org/briarproject/crypto/DigestWrapper.java
index 30b623eee3..01b7272f72 100644
--- a/briar-core/src/org/briarproject/crypto/DigestWrapper.java
+++ b/briar-core/src/org/briarproject/crypto/DigestWrapper.java
@@ -26,8 +26,9 @@ class DigestWrapper implements MessageDigest {
 
 	@Override
 	public int digest(byte[] buf, int offset, int len) {
-		if (len != digest.getDigestSize()) throw new IllegalArgumentException();
-		digest.doFinal(buf, offset);
+		byte[] hash = digest();
+		len = Math.min(len, hash.length);
+		System.arraycopy(hash, 0, buf, offset, len);
 		return len;
 	}
 
-- 
GitLab