On Mon, Jul 4, 2011 at 7:11 AM, Karl DeSaulniers <k...@designdrumm.com>wrote:

> Hello Stuart,
> After some closer look at the RFC Compliant manuals you suggested,
> I have determined that the creator of that code was in fact RFC821
> Compliant.
> Being that this was a code I found several years ago, RFC822 may not have
> been in effect.
> This being the reason (I believe) that the creator went with a check for
> System OS when determining the end of line characters to use.
> Not substantiated in any way, but that is what it looks like to me. I could
> stand corrected.

RFC821: Simple Mail Transfer Protocol, dated August 1982 (

RFC822: Standard for the Format of ARPA Internet Text Messages, dated August
13, 1982 (http://www.faqs.org/rfcs/rfc822.html)

So, unless you started using that code before PHP was created (1995 if we go
back as far as PHP/FI) then no, RFC822 predates that snippet of code.

Further, RFC821 defines the end of lines as CRLF, so the creator of that
code was not RFC821 compliant if it was being used to send commands to an
SMTP server.

>From RFC821, MAIL FROM command definition: MAIL <SP> FROM:<reverse-path>

>From RFC822, general header field definition: field = field-name ":" [
field-body ] CRLF

Note the CRLF at the end of both definitions.

Now, technically speaking the body of email messages can use any line
endings they want to, but the headers should use CRLF, and commands sent to
servers should also use CRLF.

One final thing for you to consider... what we've been talking about is
commands and messages being sent to other computers, so what good does it do
to send them in a format that's dependent on the OS of the sending machine?
The standards exist so they are OS-independant, because you usually cannot
tell what OS the computer you're talking to is running.


Stuart Dallas
3ft9 Ltd

Reply via email to