(this document is taken from http://pobox.com/~djb/docs/smtplf.html)
Solaris 2.5 sendmail: Upgrade! Fixed in Solaris 2.5.1. You can fix the problem by putting ``,E=\r\n'' at the end of Mether, Mtcp, or Msmtp in sendmail.cf. (Note that Mether is not the same as DMether.)
sendmail V8 has a bug that will produce a bare LF in certain messages (e.g., messages with very long lines). This bug was identified in November 1996; I don't know if it has been fixed yet.
Eudora Pro 4.0 for Windows: Upgrade! The HTML LF problem was fixed in 4.0.1. The attachment LF problem was fixed in 4.1.
listproc 6.0c: Chuck Foster says you should add ``CONVERT(buf);'' before ``WRITE_TO_SOCKET'' around line 165 of sysmail.c in the Listproc source code.
fetchmail: Upgrade! Recent versions of fetchmail reportedly do the right thing. Make sure the forcecr option is on.
Galacticom WorldGroups: Reported 19970716. No information yet on how it can be fixed.
Claris Emailer: Reported 19980613. No information yet on how it can be fixed.
Every line in an Internet mail message is required to end with CR LF. The entire message ends with CR LF dot CR LF. 822bis specifically prohibits other uses of LF.
The mail clients discussed above are incorrectly ending lines with LF and, in most cases, ending the entire message with LF dot LF. That's not CR LF dot CR LF, so a server such as msn.com will sit there waiting for the rest of the message. After a while it'll give up and drop the connection. Your mail doesn't get through.
Some mail servers convert a bare LF into CR LF, and accept LF dot LF as the end of a mail message. This behavior is specifically prohibited by 821bis (and RFC 2821).