Hector Santos wrote:
> 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-* [headers] which is normally done with templates:
> 
>       Head = EMPTY;
>       Head = GetMessageHeaders();
>       Head += GetListHeaders();
> 
>       Body = EMPTY;
>       Body +=  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.
> 

Base on possible code analysis , here is what I recommend:

current text in section 3.3:

    Minor body changes:  Some lists prepend or append a few lines to each
       message to remind subscribers of an administrative URL for
       subscription issues, or of list policy, etc.

proposed changed (starter text):

    Minor body changes:  Some lists prepend or append a few lines to each
       message to remind subscribers of an administrative URL for
       subscription issues, or of list policy, etc.  These few lines can
       have extra blank lines or empty text with only CRLF characters
       which under normal circumstances would be trimmed or pruned.

The goal is to give the MLM audience reading this document insights 
into their long running current code which may need some modern CRLF 
trimming considerations, if any, even if the MLM is non-DKIM aware or 
a list is setup by the admin not to DKIM resign mail submissions.   No 
need to mention C14N kludges or new C14N (i.e. STRIP) proposals.

-- 
Hector Santos, CTO
http://www.santronics.com



_______________________________________________
NOTE WELL: This list operates according to 
http://mipassoc.org/dkim/ietf-list-rules.html

Reply via email to