diff options
author | Alex Gaynor <alex.gaynor@gmail.com> | 2014-10-22 07:33:46 -0700 |
---|---|---|
committer | Alex Gaynor <alex.gaynor@gmail.com> | 2014-10-22 07:33:46 -0700 |
commit | c6f85a721c3f38da6a3f179850a317ce238735b3 (patch) | |
tree | 07eead34092b41d88573fab91fba3cfe516e7268 | |
parent | 6ec1b7bb991a123ed131f138c24eee2c6c18b839 (diff) | |
parent | 6eed9d0f3d1eb36ff5a834ff52e06c80cbde0681 (diff) | |
download | cryptography-c6f85a721c3f38da6a3f179850a317ce238735b3.tar.gz cryptography-c6f85a721c3f38da6a3f179850a317ce238735b3.tar.bz2 cryptography-c6f85a721c3f38da6a3f179850a317ce238735b3.zip |
Merge pull request #1425 from reaperhulk/fix-missing-method
add load_dsa_parameter_numbers on multibackend
-rw-r--r-- | cryptography/hazmat/backends/multibackend.py | 6 | ||||
-rw-r--r-- | tests/hazmat/backends/test_multibackend.py | 9 |
2 files changed, 15 insertions, 0 deletions
diff --git a/cryptography/hazmat/backends/multibackend.py b/cryptography/hazmat/backends/multibackend.py index db189787..e873f504 100644 --- a/cryptography/hazmat/backends/multibackend.py +++ b/cryptography/hazmat/backends/multibackend.py @@ -210,6 +210,12 @@ class MultiBackend(object): raise UnsupportedAlgorithm("DSA is not supported by the backend.", _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM) + def load_dsa_parameter_numbers(self, numbers): + for b in self._filtered_backends(DSABackend): + return b.load_dsa_parameter_numbers(numbers) + raise UnsupportedAlgorithm("DSA is not supported by the backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM) + def cmac_algorithm_supported(self, algorithm): return any( b.cmac_algorithm_supported(algorithm) diff --git a/tests/hazmat/backends/test_multibackend.py b/tests/hazmat/backends/test_multibackend.py index 93934ad6..c50b6cf6 100644 --- a/tests/hazmat/backends/test_multibackend.py +++ b/tests/hazmat/backends/test_multibackend.py @@ -131,6 +131,9 @@ class DummyDSABackend(object): def load_dsa_public_numbers(self, numbers): pass + def load_dsa_parameter_numbers(self, numbers): + pass + @utils.register_interface(CMACBackend) class DummyCMACBackend(object): @@ -330,6 +333,7 @@ class TestMultiBackend(object): backend.dsa_parameters_supported(1, 2, 3) backend.load_dsa_private_numbers("numbers") backend.load_dsa_public_numbers("numbers") + backend.load_dsa_parameter_numbers("numbers") backend = MultiBackend([]) with raises_unsupported_algorithm( @@ -367,6 +371,11 @@ class TestMultiBackend(object): ): backend.load_dsa_public_numbers("numbers") + with raises_unsupported_algorithm( + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM + ): + backend.load_dsa_parameter_numbers("numbers") + def test_cmac(self): backend = MultiBackend([ DummyCMACBackend([algorithms.AES]) |