[issue4769] b64decode should accept strings or bytes
STINNER Victor
report at bugs.python.org
Fri Jan 2 03:10:06 CET 2009
STINNER Victor <victor.stinner at haypocalc.com> added the comment:
> If the input to b64decode is a str, just do a encode('ascii')
> operation on it and proceed. If that fails, it wasn't valid
> Base64 to begin with.
On unicode encode error, should we raise an UnicodeEncodeError or a
binascii.Error?
And there is also the problem of base64.b64decode()
alternate "characters". Should we accept non-ASCII alternate
characters?
base64.b64decode('01a\xfeb\xffcd', altchars=b'\xfe\xff')
For the example, the result depends on the choosen charset:
- ASCII (strict): encode input text raise an UnicodeDecodeError
- ISO-8859-1 (ignore): works as expected
- UTF-8 (strict): unexpected result
The only valid choice is ASCII because ISO-8859-1 or UTF-8 will
reintroduce bytes/character mixture.
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue4769>
_______________________________________
More information about the Python-bugs-list
mailing list