diff options
| -rw-r--r-- | client/src/leap/soledad/client/_crypto.py | 5 | ||||
| -rw-r--r-- | testing/tests/client/test_crypto.py | 3 | 
2 files changed, 8 insertions, 0 deletions
| diff --git a/client/src/leap/soledad/client/_crypto.py b/client/src/leap/soledad/client/_crypto.py index c4c6d336..f91084a4 100644 --- a/client/src/leap/soledad/client/_crypto.py +++ b/client/src/leap/soledad/client/_crypto.py @@ -22,6 +22,7 @@ Cryptographic operations for the soledad client  import binascii  import base64  import hashlib +import warnings  import hmac  import os  import re @@ -278,6 +279,10 @@ class BlobDecryptor(object):          try:              if len(preamble) == LEGACY_PACMAN.size: +                warnings.warn("Decrypting a legacy document without size. " + +                              "This will be deprecated in 0.12. Doc was: " + +                              "doc_id: %s rev: %s" % (self.doc_id, self.rev), +                              Warning)                  unpacked_data = LEGACY_PACMAN.unpack(preamble)                  magic, sch, meth, ts, iv, doc_id, rev = unpacked_data              elif len(preamble) == PACMAN.size: diff --git a/testing/tests/client/test_crypto.py b/testing/tests/client/test_crypto.py index 2d4d827b..399fdc99 100644 --- a/testing/tests/client/test_crypto.py +++ b/testing/tests/client/test_crypto.py @@ -292,6 +292,9 @@ class PreambleTestCase(unittest.TestCase):              self.doc_info, BytesIO(ciphertext),              secret='A' * 96).decrypt()          assert cleartext == self.cleartext.getvalue() +        warnings = self.flushWarnings() +        assert len(warnings) == 1 +        assert 'legacy document without size' in warnings[0]['message']  def _aes_encrypt(key, iv, data, aead=''): | 
