On Wed, Jan 28, 2026 at 06:05:34PM -0500, Derek Martin wrote:
The message separator is the string "\nFrom " arguably followed by additional
text which is not a newline, and then a newline. Messages which have
paragraphs in the body which start with From should do one of:
1. escape that From (ONLY if preceded by a newline)
2. Use the Content-Length header to mark where the message ends
3. Use quoted-printable encoding or some other well-known and
well-supported encoding to alleviate the need to escape the
"\nFrom " line.
That would be nice. Unfortunately, mbox files in the wild are not that
reliable.
In practice, software that attempts to read almost all mbox has to do
heuristics. Attempting to recognize a date-time at the end of a From_
line is one such heuristic -- not guaranteed to work, but improves the odds.