On Mon, 1 Mar 1999, D.M.Chapman wrote:
> Ok, before I get into a battle on this one, can someone back be up please :-)
With pleasure.
> The remote site seem to be claiming that Exim is wrong as it is not sending
> a rset command before the second (and 3rd, 4th etc.) mail. As far as I can
> see the rfc states that a second mail command implies that a rset should be
> performed.
You are absolutely right, and the authors of many MTAs agree with you.
RFC 821 says:
The MAIL, SEND, SOML, or SAML commands begin a mail
transaction. Once started a mail transaction consists of
one of the transaction beginning commands, one or more RCPT
commands, and a DATA command, in that order. A mail
transaction may be aborted by the RSET command. There may
be zero or more transactions in a session.
It is clear that RSET is for *aborting* a transaction. It is not needed
- and wastes resources - after a successful transaction.
Here is the new wording from the forthcoming revised version of RFC 821
The MAIL command (or the obsolete SEND, SOML, or SAML commands) begins a
mail transaction. Once started, a mail transaction consists of a
transaction beginning command, one or more RCPT commands, and a DATA
command, in that order. A mail transaction may be aborted by the RSET (or
a new EHLO) command. There may be zero or more transactions in a session.
MAIL (or SEND, SOML, or SAML) MUST NOT be sent if a mail transaction is
already open, i.e., it should be sent only if no mail transaction had been
started in the session, or it the previous one successfully concluded with
a successful DATA command, or if the previous one was aborted with a RSET.
This makes it even more clear that RSET is not needed after a successful
transaction. Note especially the final sentence.
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.
--
*** Exim information can be found at
http://www.exim.org/ ***