aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2018-12-18 02:03:19 -0500
committerPaul Kehrer <paul.l.kehrer@gmail.com>2018-12-18 15:03:19 +0800
commit815301ab4f7b794c091a8435741d7f57436f87d9 (patch)
treeb3d60712507169f863edd03ee95ce03ab258be45 /src
parentd13fd93ddde42c806929f334ae03c02b954aa64a (diff)
downloadcryptography-815301ab4f7b794c091a8435741d7f57436f87d9.tar.gz
cryptography-815301ab4f7b794c091a8435741d7f57436f87d9.tar.bz2
cryptography-815301ab4f7b794c091a8435741d7f57436f87d9.zip
Improve error message for unsupported ciphers (#4650)
* Improve error message for unsupported ciphers * fix spacing * include the openssl version number in the message * backwards * pep8
Diffstat (limited to 'src')
-rw-r--r--src/cryptography/hazmat/backends/openssl/ciphers.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/cryptography/hazmat/backends/openssl/ciphers.py b/src/cryptography/hazmat/backends/openssl/ciphers.py
index fe5715b2..66ac5fd6 100644
--- a/src/cryptography/hazmat/backends/openssl/ciphers.py
+++ b/src/cryptography/hazmat/backends/openssl/ciphers.py
@@ -48,12 +48,14 @@ class _CipherContext(object):
evp_cipher = adapter(self._backend, cipher, mode)
if evp_cipher == self._backend._ffi.NULL:
- raise UnsupportedAlgorithm(
- "cipher {0} in {1} mode is not supported "
- "by this backend.".format(
- cipher.name, mode.name if mode else mode),
- _Reasons.UNSUPPORTED_CIPHER
- )
+ msg = "cipher {0.name} ".format(cipher)
+ if mode is not None:
+ msg += "in {0.name} mode ".format(mode)
+ msg += (
+ "is not supported by this backend (Your version of OpenSSL "
+ "may be too old. Current version: {0}.)"
+ ).format(self._backend.openssl_version_text())
+ raise UnsupportedAlgorithm(msg, _Reasons.UNSUPPORTED_CIPHER)
if isinstance(mode, modes.ModeWithInitializationVector):
iv_nonce = self._backend._ffi.from_buffer(