xref: /freebsd/contrib/sendmail/cf/feature/access_db.m4 (revision ee7b0571c2c18bdec848ed2044223cc88db29bd8)
1c2aa98e2SPeter Wemmdivert(-1)
2c2aa98e2SPeter Wemm#
35dd76dd0SGregory Neil Shapiro# Copyright (c) 1998-2002, 2004, 2006 Proofpoint, Inc. and its suppliers.
406f25ae9SGregory Neil Shapiro#	All rights reserved.
5c2aa98e2SPeter Wemm#
6c2aa98e2SPeter Wemm# By using this file, you agree to the terms and conditions set
7c2aa98e2SPeter Wemm# forth in the LICENSE file which can be found at the top level of
8c2aa98e2SPeter Wemm# the sendmail distribution.
9c2aa98e2SPeter Wemm#
10c2aa98e2SPeter Wemm#
11c2aa98e2SPeter Wemm
12c2aa98e2SPeter Wemmdivert(0)
13*4313cc83SGregory Neil ShapiroVERSIONID(`$Id: access_db.m4,v 8.28 2013-11-22 20:51:11 ca Exp $')
14c2aa98e2SPeter Wemmdivert(-1)
15c2aa98e2SPeter Wemm
1606f25ae9SGregory Neil Shapirodefine(`_ACCESS_TABLE_', `')
1706f25ae9SGregory Neil Shapirodefine(`_TAG_DELIM_', `:')dnl should be in OperatorChars
1840266059SGregory Neil Shapiroifelse(lower(_ARG2_),`skip',`define(`_ACCESS_SKIP_', `1')')
1940266059SGregory Neil Shapiroifelse(lower(_ARG2_),`lookupdotdomain',`define(`_LOOKUPDOTDOMAIN_', `1')')
20d0cef73dSGregory Neil Shapiroifelse(lower(_ARG2_),`relaytofulladdress',`define(`_RELAY_FULL_ADDR_', `1')')
2140266059SGregory Neil Shapiroifelse(lower(_ARG3_),`skip',`define(`_ACCESS_SKIP_', `1')')
2240266059SGregory Neil Shapiroifelse(lower(_ARG3_),`lookupdotdomain',`define(`_LOOKUPDOTDOMAIN_', `1')')
23d0cef73dSGregory Neil Shapiroifelse(lower(_ARG3_),`relaytofulladdress',`define(`_RELAY_FULL_ADDR_', `1')')
24d0cef73dSGregory Neil Shapiroifelse(lower(_ARG4_),`skip',`define(`_ACCESS_SKIP_', `1')')
25d0cef73dSGregory Neil Shapiroifelse(lower(_ARG4_),`lookupdotdomain',`define(`_LOOKUPDOTDOMAIN_', `1')')
26d0cef73dSGregory Neil Shapiroifelse(lower(_ARG4_),`relaytofulladdress',`define(`_RELAY_FULL_ADDR_', `1')')
2740266059SGregory Neil Shapirodefine(`_ATMPF_', `<TMPF>')dnl
2840266059SGregory Neil Shapirodnl check whether arg contains -T`'_ATMPF_
29605302a5SGregory Neil Shapirodnl unless it is a sequence map
3040266059SGregory Neil Shapiroifelse(defn(`_ARG_'), `', `',
3140266059SGregory Neil Shapiro  defn(`_ARG_'), `LDAP', `',
32605302a5SGregory Neil Shapiro  `ifelse(index(_ARG_, `sequence '), `0', `',
3340266059SGregory Neil Shapiro    `ifelse(index(_ARG_, _ATMPF_), `-1',
3440266059SGregory Neil Shapiro      `errprint(`*** WARNING: missing -T'_ATMPF_` in argument of FEATURE(`access_db',' defn(`_ARG_')`)
3540266059SGregory Neil Shapiro')
3640266059SGregory Neil Shapiro      define(`_ABP_', index(_ARG_, ` '))
3740266059SGregory Neil Shapiro      define(`_NARG_', `substr(_ARG_, 0, _ABP_) -T'_ATMPF_` substr(_ARG_, _ABP_)')
38605302a5SGregory Neil Shapiro      ')
39605302a5SGregory Neil Shapiro    ')
40605302a5SGregory Neil Shapiro  ')
41e92d3f3fSGregory Neil Shapiroifdef(`_GREET_PAUSE_',
42e92d3f3fSGregory Neil Shapiro	`errprint(`*** WARNING: FEATURE(`greet_pause') before FEATURE(`access_db')
43e92d3f3fSGregory Neil Shapiro	greet_pause will not use access_db!')')
4406f25ae9SGregory Neil Shapiro
4506f25ae9SGregory Neil ShapiroLOCAL_CONFIG
4606f25ae9SGregory Neil Shapiro# Access list database (for spam stomping)
4740266059SGregory Neil ShapiroKaccess ifelse(defn(`_ARG_'), `', DATABASE_MAP_TYPE -T`'_ATMPF_ MAIL_SETTINGS_DIR`access',
48e92d3f3fSGregory Neil Shapiro	       defn(`_ARG_'), `LDAP', `ldap -T`'_ATMPF_ -1 -v sendmailMTAMapValue,sendmailMTAMapSearch:FILTER:sendmailMTAMapObject,sendmailMTAMapURL:URL:sendmailMTAMapObject -k (&(objectClass=sendmailMTAMapObject)(|(sendmailMTACluster=${sendmailMTACluster})(sendmailMTAHost=$j))(sendmailMTAMapName=access)(sendmailMTAKey=%0))',
4940266059SGregory Neil Shapiro	       defn(`_NARG_'), `', `_ARG_', `_NARG_')
50