diff options
author | Tulio Casagrande <tcasagra@thoughtworks.com> | 2017-03-09 17:28:22 -0300 |
---|---|---|
committer | Tulio Casagrande <tcasagra@thoughtworks.com> | 2017-03-09 17:28:22 -0300 |
commit | c1966cd7cfa27445f2a09501709dc66a18d79058 (patch) | |
tree | c7e8df77410d5261c6e8ed55cdd1f5e9f1cbc1ee | |
parent | 32c6d2eae998ceec302995e52c70a0636ca1e463 (diff) |
[bug] add default version when decrypting secrets
Resolves: https://0xacab.org/leap/soledad/issues/8788
-rw-r--r-- | client/src/leap/soledad/client/_secrets/crypto.py | 2 | ||||
-rw-r--r-- | testing/tests/client/test_secrets.py | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/client/src/leap/soledad/client/_secrets/crypto.py b/client/src/leap/soledad/client/_secrets/crypto.py index fa7aaca0..afa80034 100644 --- a/client/src/leap/soledad/client/_secrets/crypto.py +++ b/client/src/leap/soledad/client/_secrets/crypto.py @@ -72,7 +72,7 @@ class SecretsCrypto(object): # def decrypt(self, data): - version = data.get('version') + version = data.get('version', 1) method = getattr(self, '_decrypt_v%d' % version) try: return method(data) diff --git a/testing/tests/client/test_secrets.py b/testing/tests/client/test_secrets.py index 18ff458b..7c909bcb 100644 --- a/testing/tests/client/test_secrets.py +++ b/testing/tests/client/test_secrets.py @@ -157,3 +157,9 @@ class SecretsCryptoTestCase(unittest.TestCase): encrypted = self.ENCRYPTED_V1 decrypted = self._crypto.decrypt(encrypted) self.assertEqual(decrypted, self.SECRETS) + + def test__decrypt_v1_without_version_field(self): + encrypted = dict(self.ENCRYPTED_V1) + del encrypted['version'] + decrypted = self._crypto.decrypt(encrypted) + self.assertEqual(decrypted, self.SECRETS) |