RE: [Exim] selective relay

Top Page
Delete this message
Reply to this message
Author: Erik Jacobs
Date:  
To: 'Peter Bowyer', exim-users
Subject: RE: [Exim] selective relay
> It does generally cause the mail to be sent out - the only
> way it knows how - by sending it through your router chain.
> If you're using some derivative of the default config, a
> non-local address will be picked up and routed to an smtp
> transport, which will send it on its way. But you can catch
> any or all addresses for special processing by putting your
> own router near the top of the chain.


But if a redirect sends the mail back to the router chain, how does it not
get caught in an endless loop?

It sounds like I need two routers:

One that determines if there needs to be a redirect or go to garbage
Another that actually sends the mail to a transport

I'm not sure of the order, but I guess the overview of routers is:
begin routers
  sql_lookup_redirect:
    driver = redirect
    data = $(lookup mysql{SELECT phonemail FROM users LEFT JOIN access ON
username = user WHERE user="$local_part" and
allow="$sender_address_local_part"}{value}}


Can we condition inside the redirect? If this is the case, then the
condition would be on the SQL lookup... and I still don't really understand
how to use the condition command.

  send_to_transport:
    driver = manualroute
    transport = manipulate_the_email_header
end routers


I mean.. that's basically the right track... or maybe I'm still on the wrong
track?