Subject: Re: bin/3286: sendmail doesn't escape 'From'
To: None <mouse@Rodents.Montreal.QC.CA>
From: Eric Fischer <eric@fudge.uchicago.edu>
List: netbsd-bugs
Date: 03/04/1997 13:22:48
der Mouse says,

> Then, I believe, the "other mailers" are broken; a message boundary in
> the mbox file format is defined to be "From " immediately following two
> consecutive newlines (with an implicit message begin at the beginning
> of the file).  Always has been.  If some UAs mistake "From " after one
> (but not two) newlines for a message boundary, then their mbox parsing
> code is simply broken, as much so as if it mistook any other string for
> a message boundary.

I don't think it's fair to declare Berkeley Mail the arbiter of the One
True Mbox Format.  Bell Labs was using mbox format long before there
was a Berkeley Unix at all, and Seventh Edition mail (and its successor
in System V) doesn't require the blank line between messages.  Berkeley
mail hasn't even been consistent between versions in what it wants --
in 4.3BSD and before, lines just had to start with "From " to count as
postmarks, while 4.4 requires that the postmark actually resemble the
ctime format.  Worse, the file format that 4.4 mail accepts isn't even
the same as the one described in the manual -- the manual says that the
time zone should follow the year, but the software wants the time zone,
if there is one, to precede the year.  

This is not to say that elm, pine, v7 mail, and all the rest aren't
broken in their own ways too -- but the real culprit is not any of
these programs, but a poorly defined file format that has been a moving
target over the years.  It's too late to change history, so instead we
ought to be writing mail files that are acceptable to as many different
mailers as possible and writing mailers that will accept as many
variant file formats as possible.

Eric