Fix EC detection. (#981) (#982)

(cherry picked from commit 911ed33c2e)
This commit is contained in:
Felix Fontein
2026-02-11 22:11:21 +01:00
committed by GitHub
parent 3091b2f997
commit edfb82772c
3 changed files with 5 additions and 5 deletions

View File

@@ -0,0 +1,2 @@
bugfixes:
- "crypto_info, openssl_privatekey, openssl_privatekey_pipe - fix detection of EC support for cryptography 46.0.5+ (https://github.com/ansible-collections/community.crypto/pull/981)."

View File

@@ -276,7 +276,7 @@ class PrivateKeyBackend:
class PrivateKeyCryptographyBackend(PrivateKeyBackend):
def _get_ec_class(self, ectype):
ecclass = cryptography.hazmat.primitives.asymmetric.ec.__dict__.get(ectype)
ecclass = getattr(cryptography.hazmat.primitives.asymmetric.ec, ectype, None)
if ecclass is None:
self.module.fail_json(
msg="Your cryptography version does not support {0}".format(ectype)

View File

@@ -286,10 +286,8 @@ def add_crypto_information(module):
backend = cryptography.hazmat.backends.default_backend()
for curve_name, constructor_name in CURVES:
ecclass = cryptography.hazmat.primitives.asymmetric.ec.__dict__.get(
constructor_name
)
if ecclass:
ecclass = getattr(cryptography.hazmat.primitives.asymmetric.ec, constructor_name, None)
if ecclass is not None:
try:
cryptography.hazmat.primitives.asymmetric.ec.generate_private_key(
curve=ecclass(), backend=backend