Viktor Dukhovni:
>
>
> > On Sep 3, 2018, at 9:31 AM, Wietse Venema <[email protected]> wrote:
> >
> > I have difficuty parsing your suggestion that postsccreen should
> > not consider this a pipelinig violation.
> >
> > The client pipelines commands, postscreen does not announce
> > pipelining, therefore the client is at fault.
>
> Perhaps I was too cryptic, my comment was that the pipelining
> violation was sending BDAT in the first place, while Ralf's
> logs indicate that the pipelining violation was the message
> payload after BDAT, which is not in itself a pipeling issue
> since BDAT payload succeeds the command without a response
> from the server.
OK, so the we have two pipelining claims.
1) postscreen's claim that something was pipelined after BDAT. That
claim is wrong, because it looks for the FIRST bytes after a BDAT
command. I can fix that.
(a correct pipelining check would look for bytes pipelined after
the LAST bytes of BDAT payload, but that requires processing
the entire BDAT payload and is practical only with small payloads).
2) Exim sends BDAT after RCPT is rejected. That is a protocol error.
There is no pipelining error, because Exim did not pipeline BDAT
after RCPT. postscreen did not log "command pipelining after RCPT".
Sep 3 00:31:24 mail-cbf postfix/postscreen[34943]: NOQUEUE: reject: RCPT from
[31.7.179.105]:38256: 450 4.3.2 Service currently unavailable;
from=<[email protected]>, to=<[email protected]>, proto=ESMTP,
helo=<smtpgw03.nextwerk.de>
Sep 3 00:31:24 mail-cbf postfix/postscreen[34943]: COMMAND PIPELINING from
[31.7.179.105]:38256 after BDAT: Received: from [213.182.136.75]
(helo=NWH-EX13.nwcloud.loc)\r\n\tby smtpgw03.nextwerk.de with esmtpsa (
Wietse