From 50a863e58c3075bf6206d060d41b35790fe5e955 Mon Sep 17 00:00:00 2001 From: Victor Shyba Date: Sun, 31 Dec 2017 21:14:49 -0300 Subject: [bug] handle incomplete preamble as a retriable error --- src/leap/soledad/client/_db/blobs/__init__.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/leap/soledad/client/_db') diff --git a/src/leap/soledad/client/_db/blobs/__init__.py b/src/leap/soledad/client/_db/blobs/__init__.py index d4eddb8f..cacfe638 100644 --- a/src/leap/soledad/client/_db/blobs/__init__.py +++ b/src/leap/soledad/client/_db/blobs/__init__.py @@ -104,8 +104,12 @@ class DecrypterBuffer(object): if self.decrypter: real_size = self.decrypter.decrypted_content_size return self.decrypter.endStream(), real_size - else: + elif hasattr(self, 'raw_data'): + # Externally encrypted blob, see Incoming API specification return self.raw_data, self.raw_data.tell() + else: + msg = "Incomplete Blob: %s" % self.doc_info.doc_id + raise RetriableTransferError(msg) class StreamDecrypterBuffer(object): -- cgit v1.2.3