On Thu, 9 Oct 2003, Chris Edwards wrote:
> Details aside, it seems wierd for exim->exim dialogs to include protocol
> errors...
Of course, this has arisen as a result of development. Originally, Exim
did not support pipelining. When that support was added, I didn't think
to change the underlying code which reads and deals with each command
one-by-one - because in principle it doesn't need to be changed.
The client sends "MAIL, RCPT, RCPT, RCPT, DATA" all in one packet. It then
expects to get back responses to all those commands. If all the RCPTs
are rejected, it will get
250 for MAIL
550s for the RCPTs
... and then what for DATA? It has to be a 5xx.
Hmm. I suppose the tidying could be at the client end. It knows it has
sent a pile of stuff using pipelining, and it also knows if any
recipients have been accepted, so I guess it could just not log the DATA
error if all recipients were rejected. I've noted this for looking into.
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.
Get the Exim 4 book: http://www.uit.co.uk/exim-book