summaryrefslogtreecommitdiff
path: root/dedup/hashing.py
diff options
context:
space:
mode:
Diffstat (limited to 'dedup/hashing.py')
-rw-r--r--dedup/hashing.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/dedup/hashing.py b/dedup/hashing.py
index 1419811..2a83929 100644
--- a/dedup/hashing.py
+++ b/dedup/hashing.py
@@ -183,3 +183,13 @@ class HashedStream(object):
def hexdigest(self):
return self.hashobj.hexdigest()
+
+ def validate(self, hexdigest):
+ """Soak up any remaining input and validate the read data using the
+ given hexdigest.
+ @raises ValueError: when the hash does not match
+ """
+ while self.read(65536):
+ pass
+ if self.hexdigest() != hexdigest:
+ raise ValueError("hash sum mismatch")