diff options
| author | Paul Kehrer <paul.l.kehrer@gmail.com> | 2014-07-09 11:36:01 -0500 |
|---|---|---|
| committer | Paul Kehrer <paul.l.kehrer@gmail.com> | 2014-07-09 11:36:01 -0500 |
| commit | 3a333048451b99d71dcba92d024a4a3841e68acc (patch) | |
| tree | 4d795af767f27949ef071dc1c9a032c4bc65801a /cryptography | |
| parent | 728b7e4c77c5075a36308781355adc0bc68bde94 (diff) | |
| download | cryptography-3a333048451b99d71dcba92d024a4a3841e68acc.tar.gz cryptography-3a333048451b99d71dcba92d024a4a3841e68acc.tar.bz2 cryptography-3a333048451b99d71dcba92d024a4a3841e68acc.zip | |
add TraditionalOpenSSLSerializationBackend to MultiBackend
Diffstat (limited to 'cryptography')
| -rw-r--r-- | cryptography/hazmat/backends/multibackend.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/cryptography/hazmat/backends/multibackend.py b/cryptography/hazmat/backends/multibackend.py index 6741f045..35e2a093 100644 --- a/cryptography/hazmat/backends/multibackend.py +++ b/cryptography/hazmat/backends/multibackend.py @@ -17,7 +17,8 @@ from cryptography import utils from cryptography.exceptions import UnsupportedAlgorithm, _Reasons from cryptography.hazmat.backends.interfaces import ( CMACBackend, CipherBackend, DSABackend, EllipticCurveBackend, HMACBackend, - HashBackend, PBKDF2HMACBackend, PKCS8SerializationBackend, RSABackend + HashBackend, PBKDF2HMACBackend, PKCS8SerializationBackend, + RSABackend, TraditionalOpenSSLSerializationBackend ) @@ -28,6 +29,7 @@ from cryptography.hazmat.backends.interfaces import ( @utils.register_interface(PBKDF2HMACBackend) @utils.register_interface(PKCS8SerializationBackend) @utils.register_interface(RSABackend) +@utils.register_interface(TraditionalOpenSSLSerializationBackend) @utils.register_interface(DSABackend) @utils.register_interface(EllipticCurveBackend) class MultiBackend(object): @@ -312,3 +314,14 @@ class MultiBackend(object): "This backend does not support this key serialization.", _Reasons.UNSUPPORTED_SERIALIZATION ) + + def load_traditional_openssl_pem_private_key(self, data, password): + for b in self._filtered_backends( + TraditionalOpenSSLSerializationBackend + ): + return b.load_traditional_openssl_pem_private_key(data, password) + + raise UnsupportedAlgorithm( + "This backend does not support this key serialization.", + _Reasons.UNSUPPORTED_SERIALIZATION + ) |
