On 12/05/14 15:26, Heiko Schlittermann wrote:
> One of the questions that I got: Can we somehow control how
> outgoing connections continue in face of *any* condition?
>
> Somehow it fits again into the gap with checks for an outgoing TLS
> connection, but in a more general way. So, basically it's the
> continuation of my messages from last week :)
>
> (The actual question was: I'd like to tear down the outgoing
> connection as soon as I'm faced with a specific (E)SMTP banner. --
> Don't ask why.)
>
> My short answer was: no, we can't.
http://git.exim.org/users/jgh/exim.git/shortlog/refs/heads/TPDA_expanded
... is my development playground for this. Feel free to grab and
make suggestions.
Summary: a rework of TPDA. Single transport callback, a variable
saying what the event is, and a second one carrying event-dependent
data. Current event set:
msg:delivery
msg:host:defer
tcp:connect
tcp:close
tls:cert
smtp:connect
It's the expansion's job to filter events using the given
information.
The intent is that the (text) expansion of the callback can affect
processing in an event-type dependent manner; so far this is only
tested for tls:cert (to deny verification).
The smtp:connect event fires just after the banner is received,
and puts it into the $tpda_data variable; the obvious thing
to do with the result (to support your conference questioner)
will be to close the connection (not done yet; how clean
must we be - SMTP QUIT?)
--
Cheers,
Jeremy