Re: [Exim] Tricky directors conversion Exim 3.3x -> 4.x

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Andreas Metzler
Datum:  
To: exim-users
CC: Jonathan Rogers
Betreff: Re: [Exim] Tricky directors conversion Exim 3.3x -> 4.x
On Thu, Sep 18, 2003 at 07:35:57PM -0700, Jonathan Rogers wrote:
[...]
> The setup: I'm handling several virtual domains' mail. For each domain,
> there's a "[vdomain]-aliases" file (which will have both local aliases and
> remote forwarding addresses, and - importantly - a "catchall" entry to grab
> any undelivables) _and_ a "[vdomain]-passwd" file (which has the local POP
> users' names and passwords only). This is all described in excruciating
> detail in an original posting from early last year, asking for help with
> making the catchall work whether it pointed at a local or a forwarded
> address:

[...]
> http://www.exim.org/pipermail/exim-users/Week-of-Mon-20020225/035588.html
>
> ...and which I've been running on, ever since. Now with Exim 4.x, I'm faced
> with the convert4r4 output, which translated the Exim 3.x directors section
> kluge:


> [Exim 3.x conf]
> virtual_popuser:
> domains = lsearch;/etc/exim/domains
> driver = aliasfile
> file = /etc/exim/$domain-passwd
> search_type = lsearch
> transport = local_delivery
>
> virtual_aliases:
> domains = lsearch;/etc/exim/domains
> driver = aliasfile
> file = /etc/exim/$domain-aliases
> search_type = lsearch*
> qualify_preserve_domain
> file_transport = address_file
>
> virtual_popuser_redux:
> domains = lsearch;/etc/exim/domains
> driver = aliasfile
> file = /etc/exim/$domain-passwd
> search_type = lsearch
> transport = local_delivery
> no_more
>
>
> ***into:
>
> [Exim4 conf]
> virtual_popuser:
> driver = accept
> condition = ${if eq
> {}{${lookup{$local_part}lsearch{/etc/exim/$domain-passwd}}}{no}{yes}}
> domains = lsearch;/etc/exim/domains
> retry_use_local_part
> transport = local_delivery
>
> virtual_aliases:
> driver = redirect
> allow_defer
> allow_fail
> data = ${lookup{$local_part}lsearch*{/etc/exim/$domain-aliases}}
> domains = lsearch;/etc/exim/domains
> file_transport = address_file
> qualify_preserve_domain
> retry_use_local_part
>
> virtual_popuser_redux:
> driver = accept
> condition = ${if eq
> {}{${lookup{$local_part}lsearch{/etc/exim/$domain-passwd}}}{no}{yes}}
> domains = lsearch;/etc/exim/domains
> no_more
> retry_use_local_part
> transport = local_delivery


> The two questions I have are:


> 1) With Exim 4, is there a simpler or more elegant way of doing what I'm
> trying to do with these three directors (process the alias file and the
> local users file both, while still allowing a catchall address to point
> anywhere it needs to)?

[...]


I think you can simply delete the third router (virtual_popuser_redux)
and move no_more to virtual_aliases, I do not see when it would be
invoked at all.

Running -bt on a great number of addresses with and without the router
should tell whether I am mistaken.
                cu andreas