Re: [exim] Recursive Lookups

Top Page
Delete this message
Reply to this message
Author: Tony Finch
Date:  
To: W B Hacker
CC: exim-users
Subject: Re: [exim] Recursive Lookups
On Tue, 4 Jul 2006, W B Hacker wrote:
>
> A situation where some but not all, lookups are recursively nested, and
> potentially to different depths, may be supportable in the code. But
> 'IMNSHO' represents an administrative, user-interface and user-education
> load that need not be taken on when many-to-one flat mapping delivers
> the same result with fewer machine resources and less risk of confusion.


That doesn't agree with my experience. Our virtual domain system typically
handles personal aliases via a couple of redirections: see
http://www.cam.ac.uk/cs/docs/eleaflets/g25/
These usually resolve to an @cam address which in turn usually resiolves
to an @hermes address - though the user can change their @cam forwarding.
A typical example is:

fanf2@???
    <-- fanf2@???
    <-- fanf2@???
    <-- tony.finch@???
    <-- tony.finch@ucs


Our users often have addresses in three domains on our mail switch: one
for their college affiliation (managed by the college's IT staff), one for
their department affiliation (managed by the department's IT staff), and
one @cam (controlled by the user). It's not actually possible to acheive
one-step redirections across all those domains on a system where they are
under administrative control by different people who don't work with each
other - do you really want the user to have to bug several different IT
staff to get their redirections changed? I suppose we could do so with a
much more complicated database infrastructure, but why bother when Exim
can resolve it at run time?

The most likely cause of problems is if someone accidentally creates a
loop, but since most redirections fan in to @cam before fanning out
again (i.e. few redirections directly between subdomains), this is in
practice very rare.

(PS. I've sketched over the fact that users can independently control
redirection of their @cam and @hermes addresses, which is indeed a bug
because they have two ways to control the same functionality without any
protections against getting in a mess. We avoid most of the problems
because the @cam redirection is much more obscure than the @hermes
redirection. The point is that you minimise support costs by minimising
the number of ways of doing something.)

Tony.
--
<fanf@???> <dot@???> http://dotat.at/ ${sg{\N${sg{\
N\}{([^N]*)(.)(.)(.*)}{\$1\$3\$2\$1\$3\n\$2\$3\$4\$3\n\$3\$2\$4}}\
\N}{([^N]*)(.)(.)(.*)}{\$1\$3\$2\$1\$3\n\$2\$3\$4\$3\n\$3\$2\$4}}