[exim] Re: Callout from Exim hub to local Exim server

Top Page
Delete this message
Reply to this message
Author: Jason L Tibbitts III
Date:  
To: Rory Campbell-Lange
CC: Exim Users
Subject: [exim] Re: Callout from Exim hub to local Exim server
>>>>> "RC" == Rory Campbell-Lange <rory@???> writes:

RC> The internal host has its user list generated through postgresql
RC> queries. I'm unclear whether it would be best to do database calls
RC> on the hub or to do callouts.


I have two hosts which accept mail for all internal hosts. Some
information is in LDAP, so I have a local LDAP replica on each mail
host. Some information isn't in LDAP or is dynamic so callouts are
done to the appropriate hosts when necessary.

RC> As I understand from the spec that the callout mechanism caches
RC> its results, I presume callouts are more efficient than database
RC> queries.


My understanding is that all lookups are cached if possible.

RC> Is there anything special I need to do to support callouts on the
RC> two hosts?


There shouldn't be, as long as the host that is being called out to
will actually reject messages at SMTP time. Some software will accept
anything sent to it and then generate a bounce itself; that doesn't
get along with Exim's callouts.

RC> Should this *just work*? Advice much appreciated,


I think you have to do verification in an ACL, but I'm certainly no
expert. In a router, the "verify" option only takes a boolean and
controls whether the router is consulted during address verification.

I have this in my RCPT ACL:

  # Check special hosts that run their own mail
  accept  domains       = +special_domains
          endpass
          verify        = recipient/callout=defer_ok


  # The other hosts can be verified via LDAP
  accept  domains       = +local_domains
          endpass
          verify        = recipient


- J<