Hector Santos wrote:
> The document editor and others believe this is a MLM BUG. It could
> be, but we don't know if its really an normal attempt to add HEADER
> text that was empty:
>
> Create List Message for Distribution:
>
> Body = EMPTY;
> Body += AppendText(GetHeaderNoticeForList()) + CRLF;
> Body += AppendText(GetMessageBody()) + CRLF;
> Body += AppendText(GetFooterNoticeForList()) + CRLF;
>
> We just don't know. Of course, for programmers, one can easily see
> that there is a "mite" there where extra CRLF will be added. We
> recognized it with the ending CRLF but "forgot" that list header text
> was also possible. The key point is for "40" years, it wasn't a
> problem until a new kid in the block came and now demands MLMs adjust
> to work with it
As a follow up, the above is very conceivable when you also consider
the addition of List-* which is normally done with templates:
Head = EMPTY;
Head = GetMessageHeaders();
Head += GetListHeaders();
Body = EMPTY;
Body += TrimCRLF(GetHeaderNoticeForList()+CRLF;
Body += GetMessageBody() + CRLF;
Body += GetFooterNoticeForList() + CRLF;
Mail = Head + CRLF + Body;
Of course, regardless of DKIM, to be aesthetically "clean" in
displays, it should perform trailing CRLF checks to avoid extra lines:
Head = EMPTY;
Head = GetMessageHeaders();
Head += TrimCRLF(GetListHeaders()); // no extra CRLF
Body = EMPTY;
TextHeader = TrimCRLF(GetHeaderNoticeForList()); // no extra CRLF
if (TextHeader != EMPTY) Body += TextHeader +CRLF;
Body += GetMessageBody();
TextFooter = TrimCRLF(GetFooterNoticeForList()); // no extra CRLF
if (TextFooter) Body += CRLF+ TextFooter + CRLF;
Mail = Head + CRLF + Body;
So its easy to see that a MLM not being 100% in its "clean" header and
footer text additions to the header and body is possible without being
label as a "BUG" or bad until something that deals with the purity of
integrity and C14N comes into play.
The MLM I-D *SHOULD* at least acknowledge that an extra line is
conceivable.
--
Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
_______________________________________________
NOTE WELL: This list operates according to
http://mipassoc.org/dkim/ietf-list-rules.html