Patch #462190, patch #464070: Support quoted printable in the binascii module.

Decode and encode underscores for header style encoding. Fixes bug #463996.
This commit is contained in:
Martin v. Löwis 2001-09-30 20:32:11 +00:00
parent 5f12d755a8
commit 16dc7f44b1
6 changed files with 391 additions and 18 deletions

View file

@ -7,21 +7,27 @@
This module performs quoted-printable transport encoding and decoding,
as defined in \rfc{1521}: ``MIME (Multipurpose Internet Mail Extensions)
Part One''. The quoted-printable encoding is designed for data where
there are relatively few nonprintable characters; the base64 encoding
scheme available via the \refmodule{base64} module is more compact if there
are many such characters, as when sending a graphics file.
as defined in \rfc{1521}: ``MIME (Multipurpose Internet Mail
Extensions) Part One: Mechanisms for Specifying and Describing the
Format of Internet Message Bodies''. The quoted-printable encoding is
designed for data where there are relatively few nonprintable
characters; the base64 encoding scheme available via the
\refmodule{base64} module is more compact if there are many such
characters, as when sending a graphics file.
\indexii{quoted-printable}{encoding}
\index{MIME!quoted-printable encoding}
\begin{funcdesc}{decode}{input, output}
\begin{funcdesc}{decode}{input, output\optional{,header}}
Decode the contents of the \var{input} file and write the resulting
decoded binary data to the \var{output} file.
\var{input} and \var{output} must either be file objects or objects that
mimic the file object interface. \var{input} will be read until
\code{\var{input}.readline()} returns an empty string.
If the optional argument \var{header} is present and true, underscore
will be decoded as space. This is used to decode
``Q''-encoded headers as described in \rfc{1522}: ``MIME (Multipurpose Internet Mail Extensions)
Part Two: Message Header Extensions for Non-ASCII Text''.
\end{funcdesc}
\begin{funcdesc}{encode}{input, output, quotetabs}
@ -36,7 +42,7 @@ when false it leaves them unencoded. Note that spaces and tabs
appearing at the end of lines are always encoded, as per \rfc{1521}.
\end{funcdesc}
\begin{funcdesc}{decodestring}{s}
\begin{funcdesc}{decodestring}{s\optional{,header}}
Like \function{decode()}, except that it accepts a source string and
returns the corresponding decoded string.
\end{funcdesc}