ldap_routing.m4 revision 244833
1264790Sbaptdivert(-1)
2264790Sbapt#
3264790Sbapt# Copyright (c) 1999-2002, 2004, 2007 Sendmail, Inc. and its suppliers.
4264790Sbapt#	All rights reserved.
5264790Sbapt#
6264790Sbapt# By using this file, you agree to the terms and conditions set
7264790Sbapt# forth in the LICENSE file which can be found at the top level of
8264790Sbapt# the sendmail distribution.
9264790Sbapt#
10264790Sbapt#
11264790Sbapt
12264790Sbaptdivert(0)
13264790SbaptVERSIONID(`$Id: ldap_routing.m4,v 8.20 2012/01/18 22:27:06 ca Exp $')
14264790Sbaptdivert(-1)
15264790Sbapt
16264790Sbapt# Check first two arguments.  If they aren't set, may need to warn in proto.m4
17264790Sbaptifelse(len(X`'_ARG1_), `1', `define(`_LDAP_ROUTING_WARN_', `yes')')
18264790Sbaptifelse(len(X`'_ARG2_), `1', `define(`_LDAP_ROUTING_WARN_', `yes')')
19264790Sbaptifelse(len(X`'_ARG5_), `1', `', `define(`_LDAP_ROUTE_NODOMAIN_', `yes')')
20264790Sbapt
21264790Sbapt# Check for third argument to indicate how to deal with non-existant
22264790Sbapt# LDAP records
23264790Sbaptifelse(len(X`'_ARG3_), `1', `define(`_LDAP_ROUTING_', `_PASS_THROUGH_')',
24264790Sbapt       _ARG3_, `passthru', `define(`_LDAP_ROUTING_', `_PASS_THROUGH_')',
25264790Sbapt       _ARG3_, `sendertoo', `define(`_LDAP_ROUTING_', `_MUST_EXIST_')define(`_LDAP_SENDER_MUST_EXIST_')',
26264790Sbapt       `define(`_LDAP_ROUTING_', `_MUST_EXIST_')')
27264790Sbapt
28264790Sbapt# Check for fourth argument to indicate how to deal with +detail info
29264790Sbaptifelse(len(X`'_ARG4_), `1', `',
30264790Sbapt       _ARG4_, `strip', `define(`_LDAP_ROUTE_DETAIL_', `_STRIP_')',
31264790Sbapt       _ARG4_, `preserve', `define(`_LDAP_ROUTE_DETAIL_', `_PRESERVE_')')
32264790Sbapt
33264790Sbapt# Check for sixth argument to indicate how to deal with tempfails
34264790Sbaptifelse(len(X`'_ARG6_), `1', `define(`_LDAP_ROUTE_MAPTEMP_', `_QUEUE_')',
35264790Sbapt       _ARG6_, `tempfail', `define(`_LDAP_ROUTE_MAPTEMP_', `_TEMPFAIL_')',
36264790Sbapt       _ARG6_, `queue', `define(`_LDAP_ROUTE_MAPTEMP_', `_QUEUE_')')
37264790Sbapt
38264790SbaptLOCAL_CONFIG
39264790Sbapt# LDAP routing maps
40264790SbaptKldapmh ifelse(len(X`'_ARG1_), `1',
41264790Sbapt	       `ldap -1 -T<TMPF> -v mailHost -k (&(objectClass=inetLocalMailRecipient)(mailLocalAddress=%0))',
42264790Sbapt	       `_ARG1_')
43264790Sbapt
44264790SbaptKldapmra ifelse(len(X`'_ARG2_), `1',
45264790Sbapt		`ldap -1 -T<TMPF> -v mailRoutingAddress -k (&(objectClass=inetLocalMailRecipient)(mailLocalAddress=%0))',
46264790Sbapt		`_ARG2_')
47264790Sbapt