Hi,
I'm currently using the example from the documentation [1] for virtual domains
lookup. My main routers are:
virtual_domains (from documentation; but no_more removed because I need
system_aliases for all domains)
system_aliases (using /etc/aliases)
local_user (using cyrus, no checl_local_user!)
As it stands now, do determine whether an address is locally deliverable or not
can only be found out by using the cyrus transport because then the local cyrus
delivery will fail. My cyrus users are not local system users.
Assume I've a cyrus user "foo", the destination of the incoming message is
"bar.com" and I've "bar.com" in my virtual domains and I've no other redirect
alias for "foo" in that "bar.com" domain, it just gets locally delivered to
cyrus user "foo".
However, the same is true for another virtual domain which is local, "baz.com".
If a message to "foo@???" is received by the system and there's no special
alias/redirect for "foo" at "baz.com"s virtual domain configuration, it will
end up in the local users mailbox, too (because basically, it falls through).
I want to avoid that.
I want a way to say that "foo" can only be delivered if received for the domain
"bar.com", but no other local domain (or, maybe also for "zak.com", but not all
the others I'm receiving mail for too).
I remmeber from sendmail there was a "virtusertable" file in which I could
state that delivery should be done with cyrus to a specified user, e.g.
"foo@??? cyrus:foo".
Ultimatively, this means every user which can be locally delivered needs an
extra configuration (somewhere); I'm fine with that. Problem is that I've no
idea how to set this up currently. Any hints/pointers are appreciated.
I'm using exim 4.22 on debian from testing.
- Markus
[1]
http://www.exim.org/exim-html-4.20/doc/html/spec_41.html#SECT41.6