From: Zooko O'Whielacronx Date: Tue, 6 Jan 2009 17:41:22 +0000 (-0700) Subject: util: base32: require str-not-unicode inputs -- effectively rolls back [3306] and... X-Git-Url: https://git.rkrishnan.org/pf/content/%22news.html/something?a=commitdiff_plain;h=d4a5f9131bd685ef547bfaa3390dd39e8edd2ccd;p=tahoe-lafs%2Ftahoe-lafs.git util: base32: require str-not-unicode inputs -- effectively rolls back [3306] and [3307] --- diff --git a/src/allmydata/util/base32.py b/src/allmydata/util/base32.py index d832b57e..a943cacc 100644 --- a/src/allmydata/util/base32.py +++ b/src/allmydata/util/base32.py @@ -179,17 +179,13 @@ def init_s5(): s5 = init_s5() def could_be_base32_encoded(s, s8=s8, tr=string.translate, identitytranstable=identitytranstable, chars=chars): - precondition(isinstance(s, (str, unicode)), s) - if isinstance(s, unicode): - s = s.encode('utf-8') + precondition(isinstance(s, str), s) if s == '': return True return s8[len(s)%8][ord(s[-1])] and not tr(s, identitytranstable, chars) def could_be_base32_encoded_l(s, lengthinbits, s5=s5, tr=string.translate, identitytranstable=identitytranstable, chars=chars): - precondition(isinstance(s, (str, unicode)), s) - if isinstance(s, unicode): - s = s.encode('utf-8') + precondition(isinstance(s, str), s) if s == '': return True assert lengthinbits%5 < len(s5), lengthinbits @@ -205,9 +201,7 @@ def a2b(cs): @param cs the base-32 encoded data (a string) """ precondition(could_be_base32_encoded(cs), "cs is required to be possibly base32 encoded data.", cs=cs) - precondition(isinstance(cs, (str, unicode)), cs) - if isinstance(cs, unicode): - cs = cs.encode('utf-8') + precondition(isinstance(cs, str), cs) return a2b_l(cs, num_octets_that_encode_to_this_many_quintets(len(cs))*8) @@ -232,9 +226,7 @@ def a2b_l(cs, lengthinbits): @return the data encoded in cs """ precondition(could_be_base32_encoded_l(cs, lengthinbits), "cs is required to be possibly base32 encoded data.", cs=cs, lengthinbits=lengthinbits) - precondition(isinstance(cs, (str, unicode)), cs) - if isinstance(cs, unicode): - cs = cs.encode('utf-8') + precondition(isinstance(cs, str), cs) if cs == '': return ''