(Steve Dougherty)
2013-06-20: Merge Freemail address fixes. Merge Freemail address fixes.
diff --git a/infocalypse/wot.py b/infocalypse/wot.py --- a/infocalypse/wot.py +++ b/infocalypse/wot.py @@ -1,3 +1,4 @@ +import string import fcp from config import Config import xml.etree.ElementTree as ET @@ -320,9 +321,14 @@ def to_freemail_address(identity): # addresses are not case sensitive, so some clients may mangle case. # See https://github.com/zidel/Freemail/blob/v0.2.2.1/docs/spec/spec.tex#L32 - for item in identity.iteritem(): + for item in identity.iteritems(): if item[1] == 'Freemail' and item[0].startswith('Context'): - return identity['Nickname'] + '@' + b32encode(base64decode( - identity['Identity'])) + 'freemail' + re_encode = b32encode(base64decode(identity['Identity'])) + # Remove '=' padding. + re_encode = re_encode.split('=', 1)[0] + + # Freemail addresses are lower case. + return string.lower(identity['Nickname'] + '@' + re_encode + + '.freemail') return None