Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.1 6/24/83; site hou3c.UUCP
Path: utzoo!watmath!clyde!burl!hou3c!solomon@wisc-crys.ARPA
From: solomon@wisc-crys.ARPA (Marvin Solomon)
Newsgroups: net.mail.headers
Subject: Re: smtp, errors and delivery
Message-ID: <8403052307.AA04439@wisc-crys.ARPA>
Date: Mon, 5-Mar-84 18:07:15 EST
Article-I.D.: hou3c.370
Posted: Mon Mar  5 18:07:15 1984
Date-Received: Wed, 7-Mar-84 07:39:27 EST
Sender: ka@hou3c.UUCP (Kenneth Almquist)
Lines: 41
To: Header-People@mit-mc.ARPA

I can't resist putting in my two bits.

An important principle in mail systems is the notion of
responsibility.  If we want reliable mail systems, then we should
design them so that throughout a message's lifetime, there is always
some module responsible for it.  When a server SMTP accepts a message,
it is taking responsibility for that message.  If for some reason it
can't deliver the message to the recipient, it has the responsibility
to return it to the sender.  If it has reason to believe that it is
being asked to accept a piece of mail that will be unreturnable, it has
every right (indeed duty) to reject it.  Otherwise, it may end up with
no alternative but to drop the message on the floor--the very worst thing
to do in any mail systems.

The old BBN SMTP server (used with many Berkeley 4.1 UNIX systems) got
a lot of flack (righly) for being too promiscuous in what it would accept;
it would take just about anything, and figure out later what to do about
it:

	MAIL FROM: !random@@garbage?
	250 Fine and dandy
	RCPT TO: >you got to be kidding>
	250 You betcha
	DATA
	blah blah blah
	.
	250 Yes sir boss!

I would much rather see mail bounce back to the sender if something
goes wrong, than to have it flush down a black hole.  If the server doesn't
like the MAIL FROM address, the sender should take the rejection gracefully,
and inform the sender that something is wrong.  The sender (if he is a
naive user) will yell at his mail system maintainer, who will see what's
wrong and fix it.  The idea of substituting "Postmaster" has a lot
to recommend it, but if that's rejected (perhaps because it's the host name,
not the local part, that's at issue), the sender shouldn't cram the mail
down the receiver's throat.  Null return addresses should only be used for
the error messages themselves.

If many (most?) SMTP servers are broken, they should be fixed, not coded
around by breaking the senders as well.