On Fri, Dec 12, 2003 at 02:23:53PM +0000, Philip Hazel wrote:
> On Fri, 12 Dec 2003, David Woodhouse wrote:
> > Note that since the client sent the 'RCPT TO:' and DATA' lines in a
> > single group, as permitted by RFC2920, it had no way of knowing that the
> > RCPT TO was going to be rejected. It is not at fault, and is behaving
> > perfectly correctly.
> Which release of Exim?
In 4.30 (smtp_in.c):
| case DATA_CMD:
| if (sender_address == NULL)
| {
| done = synprot_error(L_smtp_protocol_error, 503, NULL,
| US"MAIL command must precede DATA");
| break;
| }
|
| if (!discarded && recipients_count <= 0)
^^^^^^^^^^
I take it this is supposed to fix it?
| done = synprot_error(L_smtp_protocol_error, 503, NULL,
| US"valid RCPT command must precede DATA");
| break;
| }
If so, should you not return an error to DATA, but not log a protocol error,
and should this check (or similar) not also be implemented for "MAIL FROM",
as that is valid in the middle of a RFC2920 group.
MBM
--
Matthew Byng-Maddick <mbm@???> http://colondot.net/