From 16cab46f9c1ca77039b34cceefc727733c57fe83 Mon Sep 17 00:00:00 2001 From: Roland Hedberg Date: Sun, 15 Nov 2015 10:11:12 +0100 Subject: [PATCH] RelayState may be missing. --- example/idp2/idp.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/example/idp2/idp.py b/example/idp2/idp.py index 682e9cf..61f25f5 100755 --- a/example/idp2/idp.py +++ b/example/idp2/idp.py @@ -142,16 +142,19 @@ class Service(object): return resp(self.environ, self.start_response) else: kwargs = {} + try: - _encrypt_cert = encrypt_cert_from_item( + kwargs['encrypt_cert'] = encrypt_cert_from_item( saml_msg["req_info"].message) - return self.do(saml_msg["SAMLRequest"], binding, - saml_msg["RelayState"], - encrypt_cert=_encrypt_cert, **kwargs) except KeyError: - # Can live with no relay state - return self.do(saml_msg["SAMLRequest"], binding, - saml_msg["RelayState"], **kwargs) + pass + + try: + kwargs['relay_state'] = saml_msg['RelayState'] + except KeyError: + pass + + return self.do(saml_msg["SAMLRequest"], binding, **kwargs) def artifact_operation(self, saml_msg): if not saml_msg: