1 NOTE: This document is outdated. It shows mostly what was planned to be done,
2 but 8bit encoding is mostly untested at this time. There is no way currently
3 to find out if a MailTransport::Transport supports 8bit or not.
7 How Content-Transfer-Encoding (CTE) is handled:
8 --------------------------------------------
10 * For text body and text attachments:
12 2) 8bit if text fits and transport supports it.
13 3) quoted-printable or base 64 otherwise, depending on which is most space-efficient.
14 * For binary attachments:
16 * For multipart/* (except signed/encrypted):
17 1) 7bit if everything fits.
18 2) 8bit if allowed by transport.
19 * For message/rfc822 (encapsulated messages):
20 1) 7bit if everything fits.
21 2) 8bit if allowed by transport.
22 TODO what if encapsulated message is 8bit but our transport is 7bit???
23 * For multipart/signed (see RFC3156):
24 1) 7bit if everything fits
25 2) quoted-printable or base64 if:
26 - has trailing whitespace
27 - a line starts with 'From '
28 * For multipart/encrypted (but not signed):
29 Same as for multipart/*.
35 RFC5322: Internet Message Format (P. Resnick, Ed., October 2008)
36 RFC2045: Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies
37 (N. Freed, N. Borenstein, November 1996)
38 RFC2046: Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types
39 (N. Freed N. Borenstein, November 1996)
40 RFC2047: MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for
41 Non-ASCII Text (K. Moore, November 1996)
42 RFC3156: MIME Security with OpenPGP (M. Elkins, D. Del Torto, R. Levien, T. Roessler, August 2001)