Re: [Exim] aliasfile director and duplicates

Página superior
Eliminar este mensaje
Responder a este mensaje
Autor: Philip Hazel
Fecha:  
A: Pete Naylor
Cc: exim-users
Asunto: Re: [Exim] aliasfile director and duplicates
On Fri, 24 Mar 2000, Pete Naylor wrote:

> Might it be possible to add an option to the aliasfile and/or smartuser
> directors which would allow an administrator to disable the duplicate
> elimination? Such an option would be extremely useful to me right now :)


I'm afraid not. Duplication has other ramifications other than just
(in)convenience. Consider

. Message is addressed to A and to B.

. Both A and B are aliased to C.

. Without de-duplication, two deliveries to C are scheduled.

. One delivery happens, Exim records that it has delivered the message
to C.

. The next delivery fails (C's mailbox is over quota, say).

Next time round, Exim wants to know if it has already delivered to C or
not, before scheduling a new delivery. Has it? Obviously, if duplicate
deliveries are supported, it has to remember not only that it has
delivered to C but also the "history" of how that delivery happened - in
effect an ancestry list back to the original envelope address. This it
does not do, and changing it to work in that way would be a lot of work
and a big upheaval.

The best way to get duplicate deliveries if you want them is not to use
aliasfile, but to use smartuser *with a transport*, e.g.

alias_with_duplicates:
driver = smartuser
transport = local_delivery_for_duplicates
new_address = ${lookup {$local_part} lsearch ..... etc

This goes straight to the transport without generating a new address
that is considered for de-duplication or re-aliasing. In effect, it is
just re-writing the address on the way to the transport. You will need
to specify the user under which to run the delivery, either on the
transport or on the director.

-- 
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.