diff --git a/plugins/module_utils/ansible_freeipa_module.py b/plugins/module_utils/ansible_freeipa_module.py index 37e1fdfddd53e13f40465c5db9af7c07cae41226..78cc5768998e9c32d49242f85868a488e8f74319 100644 --- a/plugins/module_utils/ansible_freeipa_module.py +++ b/plugins/module_utils/ansible_freeipa_module.py @@ -39,6 +39,7 @@ try: except ImportError: from ipapython.ipautil import kinit_password, kinit_keytab from ipapython.ipautil import run +from ipapython.dn import DN from ipaplatform.paths import paths from ipalib.krb_utils import get_credentials_if_valid from ansible.module_utils.basic import AnsibleModule @@ -344,6 +345,16 @@ def load_cert_from_str(cert): return cert +def DN_x500_text(text): + if hasattr(DN, "x500_text"): + return DN(text).x500_text() + else: + # Emulate x500_text + dn = DN(text) + dn.rdns = reversed(dn.rdns) + return str(dn) + + def is_valid_port(port): if not isinstance(port, int): return False