diff options
author | Adam Goodman <akgood@duosecurity.com> | 2014-07-23 15:11:46 -0400 |
---|---|---|
committer | Adam Goodman <akgood@duosecurity.com> | 2014-07-23 15:11:46 -0400 |
commit | e97ae127f9fc44098f2461a567aa6b9a61e37f5c (patch) | |
tree | 671df50035c3daadb26ddb081e36493c610828e5 /tests/hazmat/backends/test_multibackend.py | |
parent | ab3093ffe7dcc058cbd1b22ecb32b715ca47d6d2 (diff) | |
parent | ad116e26d102651ab6dc2752ae21afb92b72ad6f (diff) | |
download | cryptography-e97ae127f9fc44098f2461a567aa6b9a61e37f5c.tar.gz cryptography-e97ae127f9fc44098f2461a567aa6b9a61e37f5c.tar.bz2 cryptography-e97ae127f9fc44098f2461a567aa6b9a61e37f5c.zip |
Merge branch 'master' into reorder_libs
Diffstat (limited to 'tests/hazmat/backends/test_multibackend.py')
-rw-r--r-- | tests/hazmat/backends/test_multibackend.py | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/tests/hazmat/backends/test_multibackend.py b/tests/hazmat/backends/test_multibackend.py index 3be8371f..168ed688 100644 --- a/tests/hazmat/backends/test_multibackend.py +++ b/tests/hazmat/backends/test_multibackend.py @@ -19,7 +19,8 @@ from cryptography.exceptions import ( ) from cryptography.hazmat.backends.interfaces import ( CMACBackend, CipherBackend, DSABackend, EllipticCurveBackend, HMACBackend, - HashBackend, PBKDF2HMACBackend, PKCS8SerializationBackend, RSABackend + HashBackend, PBKDF2HMACBackend, PKCS8SerializationBackend, RSABackend, + TraditionalOpenSSLSerializationBackend ) from cryptography.hazmat.backends.multibackend import MultiBackend from cryptography.hazmat.primitives import cmac, hashes, hmac @@ -143,6 +144,12 @@ class DummyDSABackend(object): def dsa_parameters_supported(self, p, q, g): pass + def load_dsa_private_numbers(self, numbers): + pass + + def load_dsa_public_numbers(self, numbers): + pass + @utils.register_interface(CMACBackend) class DummyCMACBackend(object): @@ -198,6 +205,12 @@ class DummyPKCS8SerializationBackend(object): pass +@utils.register_interface(TraditionalOpenSSLSerializationBackend) +class DummyTraditionalOpenSSLSerializationBackend(object): + def load_traditional_openssl_pem_private_key(self, data, password): + pass + + class TestMultiBackend(object): def test_ciphers(self): backend = MultiBackend([ @@ -358,6 +371,8 @@ class TestMultiBackend(object): backend.create_dsa_signature_ctx("private_key", hashes.SHA1()) backend.dsa_hash_supported(hashes.SHA1()) backend.dsa_parameters_supported(1, 2, 3) + backend.load_dsa_private_numbers("numbers") + backend.load_dsa_public_numbers("numbers") backend = MultiBackend([]) with raises_unsupported_algorithm( @@ -397,6 +412,16 @@ class TestMultiBackend(object): ): backend.dsa_parameters_supported('p', 'q', 'g') + with raises_unsupported_algorithm( + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM + ): + backend.load_dsa_private_numbers("numbers") + + with raises_unsupported_algorithm( + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM + ): + backend.load_dsa_public_numbers("numbers") + def test_cmac(self): backend = MultiBackend([ DummyCMACBackend([algorithms.AES]) @@ -486,3 +511,12 @@ class TestMultiBackend(object): backend = MultiBackend([]) with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_SERIALIZATION): backend.load_pkcs8_pem_private_key(b"keydata", None) + + def test_traditional_openssl_serialization_backend(self): + backend = MultiBackend([DummyTraditionalOpenSSLSerializationBackend()]) + + backend.load_traditional_openssl_pem_private_key(b"keydata", None) + + backend = MultiBackend([]) + with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_SERIALIZATION): + backend.load_traditional_openssl_pem_private_key(b"keydata", None) |