From 8a39ee90343f8104c8eff6e0a9520a1e9ece0073 Mon Sep 17 00:00:00 2001
From: Brian Warner <warner@lothar.com>
Date: Fri, 13 Jul 2007 19:30:48 -0700
Subject: [PATCH] storage.py: turn some assertions into preconditions

---
 src/allmydata/storage.py | 28 ++++++++++++++++++++--------
 1 file changed, 20 insertions(+), 8 deletions(-)

diff --git a/src/allmydata/storage.py b/src/allmydata/storage.py
index 80196807..4b0fccfa 100644
--- a/src/allmydata/storage.py
+++ b/src/allmydata/storage.py
@@ -241,24 +241,33 @@ class WriteBucketProxy:
         offset = self._offsets['plaintext_hash_tree']
         assert isinstance(hashes, list)
         data = "".join(hashes)
-        assert len(data) == self._segment_hash_size
-        assert offset + len(data) <= self._offsets['crypttext_hash_tree']
+        precondition(len(data) == self._segment_hash_size,
+                     len(data), self._segment_hash_size)
+        precondition(offset+len(data) <= self._offsets['crypttext_hash_tree'],
+                     offset, len(data), offset+len(data),
+                     self._offsets['crypttext_hash_tree'])
         return self._write(offset, data)
 
     def put_crypttext_hashes(self, hashes):
         offset = self._offsets['crypttext_hash_tree']
         assert isinstance(hashes, list)
         data = "".join(hashes)
-        assert len(data) == self._segment_hash_size
-        assert offset + len(data) <= self._offsets['block_hashes']
+        precondition(len(data) == self._segment_hash_size,
+                     len(data), self._segment_hash_size)
+        precondition(offset + len(data) <= self._offsets['block_hashes'],
+                     offset, len(data), offset+len(data),
+                     self._offsets['block_hashes'])
         return self._write(offset, data)
 
     def put_block_hashes(self, blockhashes):
         offset = self._offsets['block_hashes']
         assert isinstance(blockhashes, list)
         data = "".join(blockhashes)
-        assert len(data) == self._segment_hash_size
-        assert offset + len(data) <= self._offsets['share_hashes']
+        precondition(len(data) == self._segment_hash_size,
+                     len(data), self._segment_hash_size)
+        precondition(offset + len(data) <= self._offsets['share_hashes'],
+                     offset, len(data), offset+len(data),
+                     self._offsets['share_hashes'])
         return self._write(offset, data)
 
     def put_share_hashes(self, sharehashes):
@@ -270,13 +279,16 @@ class WriteBucketProxy:
                         for hashnum,hashvalue in sharehashes])
         precondition(len(data) == self._share_hash_size,
                      len(data), self._share_hash_size)
-        assert offset + len(data) <= self._offsets['uri_extension']
+        precondition(offset + len(data) <= self._offsets['uri_extension'],
+                     offset, len(data), offset+len(data),
+                     self._offsets['uri_extension'])
         return self._write(offset, data)
 
     def put_uri_extension(self, data):
         offset = self._offsets['uri_extension']
         assert isinstance(data, str)
-        assert len(data) <= self._uri_extension_size
+        precondition(len(data) <= self._uri_extension_size,
+                     len(data), self._uri_extension_size)
         length = struct.pack(">L", len(data))
         return self._write(offset, length+data)
 
-- 
2.45.2