Re: [Exim] exim router rights

Top Page
Delete this message
Reply to this message
Author: Funk Gabor
Date:  
To: Philip Hazel
CC: exim-users
Subject: Re: [Exim] exim router rights
>> Question: How can I set "local domains" to be the ones in a specified
>> directory in a specified format?
>
>There is no facility in Exim 3 for using a directory of files as a
>list. In Exim 4 there is a lookup called dsearch, which provides exactly
>this facility.

So, bad luck [for me]. Eventually I'll go for it. (I also missed the
availability for separating routers, directors, transports into separate
files, but now I have less routers, so I don't worry about it as much).

Anyway:
I already "solved" the problem by using directors and an "extra" file
for the "local/pop3" domains, but I'm still thinking. (Sorry 'bout that :-)

It it obvious that I can't use
local_domains = *
because after the "router"s, it can change to "local (after all)" but from
a local I don't see the possibility.

By using routers, I can do the following:

#SMTP routing nonlocal domains - with no .../popboxes/domainX.com directory
#(note the " ! " for require_files)
lookuphost:
driver = lookuphost
require_files = pop : ! /var/qmail/popboxes/${lc:${extract{1}{.}{$domain}}-${extract{2}{.}{$domain}}}
transport = remote_smtp

#router for local domains for individual users - eg: .../popboxes/domainX/userY(/Maildir)
cs_pop3_user_router:
driver = domainlist
require_files = pop : /var/qmail/popboxes/${lc:${extract{1}{.}{$domain}}-${extract{2}{.}{$domain}}/$local_part}
transport = cs_pop3_user_transport
route_list = *

#local domains for *@domainX.com - eg: .../popboxes/domainX/Maildir
cs_pop3_group_router:
driver = domainlist
require_files = pop : /var/qmail/popboxes/${lc:${extract{1}{.}{$domain}}-${extract{2}{.}{$domain}}}/Maildir
transport = cs_pop3_group_transport
route_list = *

This way, I don't need separate file for the domains, but this
gives "unroutable domain" error (even with self=fail_hard [exim 3.12])

If I could just do something like this after the 3rd router
new_address = :fail: no matching $local_part in domain $domain...
then I suppose it would be fine, wouldn't it?

Can I?


G.