On 2023-06-03, Andrew C Aitchison via Exim-users <exim-users@???> wrote:
> If all the recipients are pipelined in one blast,
> will the "recipient denied" messages will all be logged before the delay
> kicks in, or does exim actually twiddle its thumbs when there is a block
> of pipelined data waiting to be read ?
The delay on each recipient is triggered, but then cancelled because
exim's smtp_out connection has been shut down.
The delay is implemented by means of a poll(2) on the outstream,
waiting for POLLRDHUP; so if the outstream is closed by the client,
there is no delay. At this point, I would expect exim to get a send
error when it writes the SMTP response, but it appears not to.
I suppose this is because it received the commands pipelined, and so
sends the responses pipelined without flushing the output.
Nonetheless, I think that a pipeline should be aborted if you already
know that the far end is closed.
(I was slow to understand this, because I hadn't heard of SMTP pipelining
before today:)
--
## subscription configuration (requires account):
##
https://lists.exim.org/mailman3/postorius/lists/exim-users.lists.exim.org/
## unsubscribe (doesn't require an account):
## exim-users-unsubscribe@???
## Exim details at
http://www.exim.org/
## Please use the Wiki with this list -
http://wiki.exim.org/