Helge Hafting ha scritto: > Please submit bug reports - to the makers of bad email clients. > I tried sending with thunderbird 1.0.7 and receiving with mutt - no > problem.
I tried to read some RFCs on the subject and I think that it could be the fault of broken email clients. I report here on some experiments I did. First of all I tried to verify how sendmail behaves, so I directly "talked" with the sendmail program. What follows is the transcript of our "conversation". I faked host names and addresses for obvious reasons, and marked with ">>>" the lines I typed in. sirio:~> telnet mailhost 25 Trying xxx.xxx.xxx.xxx... Connected to mailhost. Escape character is '^]'. 220 mailhost ESMTP Sendmail 8.13.3+Sun/8.13.3; Fri, 2 Dec 2005 17:39:42 +0100 (CET) >>>ehlo sirio 250-mailhost Hello sirio [yyy.yyy.yyy.yyy], pleased to meet you 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-EXPN 250-VERB 250-8BITMIME 250-SIZE 250-DSN 250-ETRN 250-DELIVERBY 250 HELP >>>mail from:<[EMAIL PROTECTED]> 250 2.1.0 <[EMAIL PROTECTED]>... Sender ok >>>rcpt to:<ef> 250 2.1.5 <ef>... Recipient ok >>>data 354 Enter mail, end with "." on a line by itself >>>.one dot >>>..two dots >>>. 250 2.0.0 jB2GdgBt016003 Message accepted for delivery >>>quit 221 2.0.0 mailhost closing connection Connection closed by foreign host. sirio:~> In essence, I sent to my local address on mailhost a mail whose body is composed by the two lines (without quotes, of course): ".one dot" "..two dots" and nothing more. Then I edited my mailbox with vim and it looked like this (again, I faked host names and addresses): ----begin---- |From [EMAIL PROTECTED] Fri Dec 2 17:53:34 2005 |Return-Path: <[EMAIL PROTECTED]> |Received: from sirio (sirio [yyy.yyy.yyy.yyy]) | by mailhost (8.13.3+Sun/8.13.3) with SMTP id jB2Gr3Bt016158 | for <ef>; Fri, 2 Dec 2005 17:53:17 +0100 (CET) |Date: Fri, 2 Dec 2005 17:53:03 +0100 (CET) |From: [EMAIL PROTECTED] |Message-Id: <[EMAIL PROTECTED]> |Content-Length: 19 | |.one dot |.two dots | ----end---- So, sendmail eated one of the two dots on the second line, but leaved alone the starting dot on the first line. Now I used mutt to fetch the mail with POP3 and mutt downloaded a mail whose body had the two lines: ".one dot" ".two dots" Exactly as it was in my mailbox on mailhost. I instructed mutt to not delete the mail from the mailhost and then used another mailer to fetch that same mail with POP3. The result was a mail with the two lines body: "..one dot" "..two dots" So, this mailer is clearly broken, as it seems that, according to the POP3 protocol, an initial dot gets transmitted duplicated and it should be the responsibility of the mailer acting accordingly upon this. Unfortunately, this mailer (http://www.js-home.org/XCmail/) seems not to be actively developed anymore :-( To summarize what I think are the results of my experimentation: 1) sendmail eats a dot if it is the first one on a line *and* it is immediately followed by another dot (I also tried with a line containing only a dot and a blank immediately following it, and sendmail does not touched it). 2) An initial single dot followed by nothing is very dangerous as the email would be truncated there (I think that the fact the sendmail eats the first of two initial dots is there to allow for a single dot on a line by simply doubling it; so it seems a good strategy for a mailer to always double an initial dot, and indeed it is done when the email is fetched with POP3). 3) The dot doubling problem seems to be related to POP3 transmission and occurs with broken mailers which do not follow the rules (RFCs). IMHO this is not a lyx problem and I should say that it seems I judged wrongly both TB and OE, which seem to do the "right thing". Indeed, when I reported that TB was showing me a different thing from what I was seeing looking at an email with vim, I was not aware of the fact that TB was showing the html part of the email, which indeed was correct! -- Enrico