Ask Bj�rn Hansen wrote:
On May 25, 2005, at 4:55 PM, Bob wrote:
How many want \n conversion to crlf in queueing to lmtp?
If so, why?
If the LMTP standard uses CRLF you don't have much of a choice...
- ask
Here's what I found just now.
qmail maildir stores bare LF's but must generate crlf's
as mta lmta. Somb mbox files are also stored with bare lf.
Microsoft mta's must interpret bare \n but their mua's are
sometimes broken in failing to interpret unix mail files
(maildir and mbox if bare \n used).
LMTP is a sub-set of SMTP and ESMTP.
"Microsoft, not Apple, is the future of unix".
http://www.faqs.org/rfcs/rfc2822.html
"Messages are divided into lines of characters. A line is a
series of characters that is delimited with the two characters
carriage-return and line-feed...Lines in a message MUST be
a maximum of 998 characters excluding the CRLF, but it is
RECOMMENDED that lines be limited to 78 characters
excluding the CRLF...Bare CR and bare LF are added to
obs-text and obs-utext(MUST NOT be generated according
to the grammar in section 3, they MUST be accepted and
parsed by a conformant receiver)"
I'm using Net::LMTP, dspam, and cyrus lmtp. All receive
and interpret \n line endings, but Cyrus converts to crlf
when writing to disk, if dspam did not do so(probably does).
This is Net::LMTP and Net::Cmd code which does not
convert "obsolete" \n to crlf--
$lmtp->rawdatasend( $transaction->header->as_string ) ;
$lmtp->rawdatasend( $transaction->{_body_array} ) ;
$lmtp->dataend();
and this does convert "obsolete" unix to microsoft--
$lmtp->datasend( $transaction->header->as_string ) ;
$lmtp->datasend( $transaction->{_body_array} ) ;
# doesn't need dataend(), automatically appends .\r\n
-Bob Dodds