Patrik Rak:
> >> Implementation wise, the following changes would be necessary:
> >>
> >> - when creating message structure, qmgr would need to keep track
> >> if it came from the incoming or deferred queue
> >> - in qmgr_message_resolve(), just before looking up the transport,
> >> when the message originates from deferred queue, qmgr would
> >> replace the transport name in the reply with the configured retry
> >> variant if it is defined and such transport exists.
>
> Hmm, or shall this perhaps be made part of trivial rewrite resolving
> instead? Which one would you prefer?
This is already how the qmgr chooses between transports for normal
delivery, and transports for address verification. I don't expect
that adding a third request type (for retried deliveries) would
break resolver requests from other Postfix daemons.
Also, this orthogonal approach guarantees that there will be no
surprising interactions between address verification and retried
deliveries. A request is one of "normal", "verification" or "retried",
(i.e. there is no overlap).
With this approach, each additional resolver request type results
in a number of additional configuration parameters:
XXX_default_transport = $default_transport
XXX_local_transport = $local_transport
XXX_relay_transport = $relay_transport
XXX_virtual_transport = $virtual_transport
XXX_relayhost = $relayhost
XXX_transport_maps = $transport_maps
XXX_sender_dependent_default_transport_maps =
$sender_dependent_default_transport_maps
XXX_sender_dependent_relayhost_maps = $sender_dependent_relayhost_maps
This may appear unwieldy at first, but it does give a lot of control
over how Postfix handles delayed mail deliveries.
Wietse