diff options
author | Vlad Mencl <vladimir.mencl@reannz.co.nz> | 2023-01-16 17:12:01 +1300 |
---|---|---|
committer | Vlad Mencl <vladimir.mencl@reannz.co.nz> | 2023-01-16 17:12:01 +1300 |
commit | 2fe02c14b1c08ff7981c878f3360fe5beacdebb2 (patch) | |
tree | 7f13d3638748f32d823a0cf261c61cc384c9ce5d | |
parent | 4276e7786f3ad31d2ad21d2b8bffe600fde53ca0 (diff) | |
download | pysaml2-2fe02c14b1c08ff7981c878f3360fe5beacdebb2.tar.gz |
fix: metadata: process extensions also for idp_sso_descriptor
-rw-r--r-- | src/saml2/metadata.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/saml2/metadata.py b/src/saml2/metadata.py index d926345e..ff4450a8 100644 --- a/src/saml2/metadata.py +++ b/src/saml2/metadata.py @@ -533,6 +533,17 @@ def do_idpsso_descriptor(conf, cert=None, enc_cert=None): idpsso = md.IDPSSODescriptor() idpsso.protocol_support_enumeration = samlp.NAMESPACE + exts = conf.getattr("extensions", "idp") + if exts: + if idpsso.extensions is None: + idpsso.extensions = md.Extensions() + + for key, val in exts.items(): + _ext = do_extensions(key, val) + if _ext: + for _e in _ext: + idpsso.extensions.add_extension_element(_e) + endps = conf.getattr("endpoints", "idp") if endps: for (endpoint, instlist) in do_endpoints(endps, ENDPOINTS["idp"]).items(): |