On Sun, 14 Feb 1999, Oliver Smith wrote:
> I mentioned that I was seeing errors from people sending out Emails with
> headers along the lines of:
>
> To: Work: Jim <jims@email>,
> Home: Bob <bobs@email>
>
> and Exim wasn't liking this; although I could see why this is technically an
> error, I wondered if it was something I could specifically turn off.
Checking the syntax of headers is turned off by default in Exim. You
have to turn on headers_check_syntax to enable it.
> Unfortunately; according to RFC 822, I should have received none of the
> replies. All the subject lines began with the three letters Re:, and most of
> your received headers had colons in them too.
Wrong. Subject: lines are permitted to contain free text. Received:
lines have a very specific format, which includes colons (e.g. in the
time field). Lines such as From:, To:, etc, which contain addresses, are
structured and required to be in a specific format. See RFC 822.
Colons are in fact allowed in To: lines, but only in connection with
names lists (called "groups"), e.g.
To: My friends: X <x@???>, Y <y@???>;,
My enemies: A <a@???>, B <b@???>;
but as you see, each list must be terminated by a semicolon. Have a read
of RFC822 if you want to see the full definitions. I do not know *why*
the rules are the way they are (RFC822 dates from the early 1980s) but I
do know that the whole point of following rules is to allow different
computers to interwork successfully. Sometimes the rules may seem
illogical, but if everybody picks and chooses which bits they follow,
interoperability is going to decline fast.
> Making Exim pick up these errors is obviously an overhead (since it requires
> a more complex rule), and it's not applied with any degree of accuracy.
Like I said, Exim only checks the syntax of header lines if you ask it
to. However, I would hope that its checking of RFC822 format *is*
accurate (subject to a couple of "common extensions", I must in all
fairness admit). If you can show any cases where checking does not
conform to RFC 822 then please speak up.
> The trouble is that I want most of the rest of the errors that header syntax
> checking detects,
Aha! Some errors are more equal than others! :-)
> we're going to end up with a lot (big numbers) of
> frustrated end-users out there who are trying to figure out what's wrong
> with the _email address_ part of
>
> Work: john@??? <john@???>
(1) Which part of that is the "email address part"? (Rhetoric question.)
(2) RFC 822 mailers have been around for about 15 years. Somehow the
users have managed.
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.
--
*** Exim information can be found at
http://www.exim.org/ ***