summaryrefslogtreecommitdiff
path: root/quoins/openid_controllers.py
diff options
context:
space:
mode:
Diffstat (limited to 'quoins/openid_controllers.py')
-rw-r--r--quoins/openid_controllers.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/quoins/openid_controllers.py b/quoins/openid_controllers.py
index 2d15c7e..8b1619f 100644
--- a/quoins/openid_controllers.py
+++ b/quoins/openid_controllers.py
@@ -51,6 +51,7 @@ class DecideController(object):
51 session.save() 51 session.save()
52 52
53 d = dict(openid = self.oid_controller, 53 d = dict(openid = self.oid_controller,
54 oid_return_verified = request.environ['oid_return_verified'],
54 oid_request = oid_request, 55 oid_request = oid_request,
55 required = sr_required, 56 required = sr_required,
56 optional = sr_optional, 57 optional = sr_optional,
@@ -174,11 +175,17 @@ class OpenIDController(TGController):
174 oid_request = oserver.decodeRequest(request.params) 175 oid_request = oserver.decodeRequest(request.params)
175 request.environ['oid_request']=oid_request 176 request.environ['oid_request']=oid_request
176 177
178 request.environ['oid_return_verified']='not verified'
177 if oid_request.mode in ['checkid_immediate', 'checkid_setup']: 179 if oid_request.mode in ['checkid_immediate', 'checkid_setup']:
178 if hasattr(oid_request, 'returnToVerified'): 180 if hasattr(oid_request, 'returnToVerified'):
179 if not (oid_request.trustRootValid() 181 if not oid_request.trustRootValid():
180 and oid_request.returnToVerified()):
181 raise Exception("Not trusted") 182 raise Exception("Not trusted")
183 try:
184 if not oid_request.returnToVerified():
185 raise Exception("Not trusted")
186 request.environ['oid_return_verified']='verified'
187 except:
188 pass
182 else: 189 else:
183 if not (oid_request.trustRootValid()): 190 if not (oid_request.trustRootValid()):
184 raise Exception("Not trusted") 191 raise Exception("Not trusted")