[Python-checkins] r77606 - tracker/instances/python-dev/lib/openid.py
martin.v.loewis
python-checkins at python.org
Tue Jan 19 04:01:18 CET 2010
Author: martin.v.loewis
Date: Tue Jan 19 04:01:18 2010
New Revision: 77606
Log:
Report errors in associate.
Clear session_type for 1.1 only if it was no-encryption.
Clear openid.ns for 1.1.
Modified:
tracker/instances/python-dev/lib/openid.py
Modified: tracker/instances/python-dev/lib/openid.py
==============================================================================
--- tracker/instances/python-dev/lib/openid.py (original)
+++ tracker/instances/python-dev/lib/openid.py Tue Jan 19 04:01:18 2010
@@ -316,9 +316,13 @@
data['openid.dh_consumer_public'] = dh_public_base64
if is_compat_1x(services):
# 14.2.1: clear session_type in 1.1 compatibility mode
- data['openid.session_type'] = ''
+ if data['openid.session_type'] == "no-encryption":
+ data['openid.session_type'] = ''
+ del data['openid.ns']
res = urllib.urlopen(url, urllib.urlencode(data))
data = parse_response(res.read())
+ if 'error' in data:
+ raise ValueError, "associate failed: "+data['error']
if url.startswith('http:'):
enc_mac_key = base64.b64decode(data['enc_mac_key'])
dh_server_public = base64.b64decode(data['dh_server_public'])
More information about the Python-checkins
mailing list