Detect OpenID discovery errors and return proper error message
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Libravatar (obsolete) |
Fix Released
|
High
|
François Marier |
Bug Description
When OpenID fails to parse the HTML page it was given, we don't get any useful debugging information:
Traceback (most recent call last):
File "/usr/lib/
response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/
return view_func(request, *args, **kwargs)
File "/usr/share/
auth_request = openid_
File "/usr/lib/
service = disco.getNextSe
File "/usr/lib/
yadis_url, services = discover(self.url)
File "/usr/lib/
return discoverURI(
File "/usr/lib/
claimed_id, openid_services = discoverYadis(uri)
File "/usr/lib/
response = yadisDiscover(uri)
File "/usr/lib/
result.xrds_uri = whereIsYadis(resp)
File "/usr/lib/
yadis_loc = findHTMLMeta(
File "/usr/lib/
parser.
File "/usr/lib/
return HTMLParser.
File "/usr/lib/
self.goahead(0)
File "/usr/lib/
k = self.parse_
File "/usr/lib/
attrvalue = self.unescape(
File "/usr/lib/
return re.sub(
File "/usr/lib/
return _compile(pattern, 0).sub(repl, string, count)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 15: ordinal not in range(128)
We need to catch that error (UnicodeDecodeE
Also, we need to find a way to add these to the error message:
- user ID
- Open ID URL
Changed in libravatar: | |
status: | Confirmed → Fix Committed |
Changed in libravatar: | |
status: | Fix Committed → Fix Released |