[Email-SIG] continuation_ws in Generator and Header
Jordan Hayes
jmhayes at j-o-r-d-a-n.com
Mon Oct 15 17:34:10 CEST 2012
> I believe these issues have been dealt with, and that
> we are now RFC 2822 (and 5322, for that matter) compliant.
Great! Any chance of this making it into a patch for 2.1.15 ...?
> The only thing that continuation_ws is used for now is when
> doing line wrapping on RFC 2047 tokens. (And it now defaults
> to a space, which may or may not be optimal, but certainly works.)
I thought the issue is that there should be no character at all: 2822
says to perform folding you simply insert a CRLF *before any whitespace*
so that unfolding is simply a matter of removing the CRLF.
Maybe an example would help. Here's a header line:
Subject: This is overkill to fold, but legal
Here's one way to fold it:
Subject: This is overkill
to fold, but legal
Because the space between "overkill" and "to" is valid whitespace, it's
also valid as a signal that the second line is a continuation of the
first. You don't have to insert another space (or as it does presently,
a tab!), you just have to insert CRLF. Likewise on the way out, just
remove the CRLF.
So I think for Mailman, which can modify the Subject: line, what you
need to do is first unfold the line if it's already folded; apply any
changes; and then optionally refold, if it's now longer than you'd like
it to be.
> I addition, the new (provisional) email policy in the 3.3 email
> library has a both an unfolding and a folding algorithm that are
> supposed to be fully RFC 2822/5322 compliant, including that the
> folding algorithm implements folding according to the RFC's syntax.
> That is, it really knows where the higher level syntactic breaks are
> on a per-header-type basis and folds there preferentially.
Sounds great.
Thanks,
/jordan
More information about the Email-SIG
mailing list