xref: /titanic_51/usr/src/cmd/sendmail/cf/m4/cfhead.m4 (revision e9af4bc0b1cc30cea75d6ad4aa2fde97d985e9be)
17c478bd9Sstevel@tonic-gate#
2*e9af4bc0SJohn Beck# Copyright (c) 1998-2004, 2009 Sendmail, Inc. and its suppliers.
37c478bd9Sstevel@tonic-gate#	All rights reserved.
47c478bd9Sstevel@tonic-gate# Copyright (c) 1983, 1995 Eric P. Allman.  All rights reserved.
57c478bd9Sstevel@tonic-gate# Copyright (c) 1988, 1993
67c478bd9Sstevel@tonic-gate#	The Regents of the University of California.  All rights reserved.
77c478bd9Sstevel@tonic-gate#
8445f2479Sjbeck# Copyright 1993, 1997-2006 Sun Microsystems, Inc.  All rights reserved.
97c478bd9Sstevel@tonic-gate# Use is subject to license terms.
107c478bd9Sstevel@tonic-gate#
117c478bd9Sstevel@tonic-gate# By using this file, you agree to the terms and conditions set
127c478bd9Sstevel@tonic-gate# forth in the LICENSE file which can be found at the top level of
137c478bd9Sstevel@tonic-gate# the sendmail distribution.
147c478bd9Sstevel@tonic-gate#
157c478bd9Sstevel@tonic-gate#
167c478bd9Sstevel@tonic-gate
177c478bd9Sstevel@tonic-gate######################################################################
187c478bd9Sstevel@tonic-gate######################################################################
197c478bd9Sstevel@tonic-gate#####
207c478bd9Sstevel@tonic-gate#####		SENDMAIL CONFIGURATION FILE
217c478bd9Sstevel@tonic-gate#####
227c478bd9Sstevel@tonic-gateifdef(`SUN_HIDE_INTERNAL_DETAILS',,
237c478bd9Sstevel@tonic-gateifdef(`__win32__', `dnl', `dnl
247c478bd9Sstevel@tonic-gateifdef(`TEMPFILE', `dnl', `define(`TEMPFILE', maketemp(/tmp/cfXXXXXX))dnl
257c478bd9Sstevel@tonic-gatesyscmd(sh _CF_DIR_`'sh/makeinfo.sh _CF_DIR_ > TEMPFILE)dnl
267c478bd9Sstevel@tonic-gateinclude(TEMPFILE)dnl
277c478bd9Sstevel@tonic-gatesyscmd(rm -f TEMPFILE)dnl')')
287c478bd9Sstevel@tonic-gate#####
297c478bd9Sstevel@tonic-gate)dnl
307c478bd9Sstevel@tonic-gate######################################################################
317c478bd9Sstevel@tonic-gate#####
327c478bd9Sstevel@tonic-gate#####	DO NOT EDIT THIS FILE!  Only edit the source .mc file.
337c478bd9Sstevel@tonic-gate#####
347c478bd9Sstevel@tonic-gate######################################################################
357c478bd9Sstevel@tonic-gate######################################################################
367c478bd9Sstevel@tonic-gate
377c478bd9Sstevel@tonic-gatedivert(-1)
387c478bd9Sstevel@tonic-gate
397c478bd9Sstevel@tonic-gatechangecom()
407c478bd9Sstevel@tonic-gateundefine(`format')
417c478bd9Sstevel@tonic-gateundefine(`hpux')
427c478bd9Sstevel@tonic-gateifdef(`pushdef', `',
437c478bd9Sstevel@tonic-gate	`errprint(`You need a newer version of M4, at least as new as
447c478bd9Sstevel@tonic-gateSystem V or GNU')
457c478bd9Sstevel@tonic-gate	include(NoSuchFile)')
467c478bd9Sstevel@tonic-gatedefine(`PUSHDIVERT', `pushdef(`__D__', divnum)divert($1)')
477c478bd9Sstevel@tonic-gatedefine(`POPDIVERT', `divert(__D__)popdef(`__D__')')
487c478bd9Sstevel@tonic-gatedefine(`OSTYPE',
497c478bd9Sstevel@tonic-gate	`PUSHDIVERT(-1)
507c478bd9Sstevel@tonic-gate	ifdef(`__OSTYPE__', `errprint(`duplicate OSTYPE'($1)
517c478bd9Sstevel@tonic-gate)')
527c478bd9Sstevel@tonic-gate	define(`__OSTYPE__', $1)
537c478bd9Sstevel@tonic-gate	define(`_ARG_', $2)
547c478bd9Sstevel@tonic-gate	include(_CF_DIR_`'ostype/$1.m4)POPDIVERT`'')
557c478bd9Sstevel@tonic-gate## helpful functions
56*e9af4bc0SJohn Beckdefine(`lower', `translit(`$1', `ABCDEFGHIJKLMNOPQRSTUVWXYZ', `abcdefghijklmnopqrstuvwxyz')')
577c478bd9Sstevel@tonic-gatedefine(`strcasecmp', `ifelse(lower($1), lower($2), `1', `0')')
587c478bd9Sstevel@tonic-gate## access to further arguments in FEATURE/HACK
597c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_1_',`$1')
607c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_2_',`$2')
617c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_3_',`$3')
627c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_4_',`$4')
637c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_5_',`$5')
647c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_6_',`$6')
657c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_7_',`$7')
667c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_8_',`$8')
677c478bd9Sstevel@tonic-gatedefine(`_ACC_ARG_9_',`$9')
687c478bd9Sstevel@tonic-gatedefine(`_ARG1_',`_ACC_ARG_1_(_ARGS_)')
697c478bd9Sstevel@tonic-gatedefine(`_ARG2_',`_ACC_ARG_2_(_ARGS_)')
707c478bd9Sstevel@tonic-gatedefine(`_ARG3_',`_ACC_ARG_3_(_ARGS_)')
717c478bd9Sstevel@tonic-gatedefine(`_ARG4_',`_ACC_ARG_4_(_ARGS_)')
727c478bd9Sstevel@tonic-gatedefine(`_ARG5_',`_ACC_ARG_5_(_ARGS_)')
737c478bd9Sstevel@tonic-gatedefine(`_ARG6_',`_ACC_ARG_6_(_ARGS_)')
747c478bd9Sstevel@tonic-gatedefine(`_ARG7_',`_ACC_ARG_7_(_ARGS_)')
757c478bd9Sstevel@tonic-gatedefine(`_ARG8_',`_ACC_ARG_8_(_ARGS_)')
767c478bd9Sstevel@tonic-gatedefine(`_ARG9_',`_ACC_ARG_9_(_ARGS_)')
777c478bd9Sstevel@tonic-gatednl define if not yet defined: if `$1' is not defined it will be `$2'
787c478bd9Sstevel@tonic-gatedefine(`_DEFIFNOT',`ifdef(`$1',`',`define(`$1',`$2')')')
797c478bd9Sstevel@tonic-gatednl ----------------------------------------
807c478bd9Sstevel@tonic-gatednl add a char $2 to a string $1 if it is not there
817c478bd9Sstevel@tonic-gatedefine(`_ADDCHAR_',`define(`_I_',`eval(index(`$1',`$2') >= 0)')`'ifelse(_I_,`1',`$1',`$1$2')')
827c478bd9Sstevel@tonic-gatednl ----
837c478bd9Sstevel@tonic-gatednl delete a char $2 from a string $1 if it is there
847c478bd9Sstevel@tonic-gatedefine(`_DELCHAR_',`define(`_IDX_',`index(`$1',`$2')')`'define(`_I_',`eval(_IDX_ >= 0)')`'ifelse(_I_,`1',`substr(`$1',0,_IDX_)`'substr(`$1',eval(_IDX_+1))',`$1')')
857c478bd9Sstevel@tonic-gatednl ----
867c478bd9Sstevel@tonic-gatednl apply a macro to a whole string by recursion (one char at a time)
877c478bd9Sstevel@tonic-gatednl $1: macro
887c478bd9Sstevel@tonic-gatednl $2: first argument to macro
897c478bd9Sstevel@tonic-gatednl $3: list that is split up into characters
907c478bd9Sstevel@tonic-gatedefine(`_AP_',`ifelse(`$3',`',`$2',`_AP_(`$1',$1(`$2',substr(`$3',0,1)),substr(`$3',1))')')
917c478bd9Sstevel@tonic-gatednl ----
927c478bd9Sstevel@tonic-gatednl MODIFY_MAILER_FLAGS: append tail of $2 to $1_MF_A/D_
937c478bd9Sstevel@tonic-gatednl A if head($2) = +
947c478bd9Sstevel@tonic-gatednl D if head($2) = -
957c478bd9Sstevel@tonic-gatednl $1_MF_ is set otherwise; set _A/D_ to `'
967c478bd9Sstevel@tonic-gatedefine(`MODIFY_MAILER_FLAGS',`define(`_hd_',`substr(`$2',0,1)')define(`_tl_',`substr(`$2',1)')`'ifelse(_hd_,`+',`ifdef($1`'_MF_A_, `define($1`'_MF_A_,$1_MF_A_`'_tl_)', `define($1`'_MF_A_, _tl_)')',_hd_,`-',`ifdef($1`'_MF_D_, `define($1`'_MF_D_,$1_MF_D_`'_tl_)', `define($1`'_MF_D_,_tl_)')',`define($1`'_MF_,`$2')define($1`'_MF_A_,`')define($1`'_MF_D_,`')')')
977c478bd9Sstevel@tonic-gatednl ----
987c478bd9Sstevel@tonic-gatednl actually modify flags:
997c478bd9Sstevel@tonic-gatednl $1: flags (strings) to modify
1007c478bd9Sstevel@tonic-gatednl $2: name of flags (just first part) to modify
1017c478bd9Sstevel@tonic-gatednl WARNING: the order might be important: if someone adds and delete the
1027c478bd9Sstevel@tonic-gatednl same characters, he does not deserve any better, does he?
1037c478bd9Sstevel@tonic-gatednl this could be coded more efficiently... (do not apply the macro if _MF_A/D_ is undefined)
1047c478bd9Sstevel@tonic-gatedefine(`_MODMF_',`ifdef($2`'_MF_,`$2_MF_',`_AP_(`_ADDCHAR_',_AP_(`_DELCHAR_',$1,ifdef($2`'_MF_D_,`$2_MF_D_',`')),ifdef($2`'_MF_A_,`$2_MF_A_',`'))')')
1057c478bd9Sstevel@tonic-gatednl usage:
1067c478bd9Sstevel@tonic-gatednl MODIFY_MAILER_FLAGS(`LOCAL',`+FlaGs')dnl
1077c478bd9Sstevel@tonic-gatednl in MAILER.m4: _MODMF_(LMF,`LOCAL')
1087c478bd9Sstevel@tonic-gatednl ----------------------------------------
1097c478bd9Sstevel@tonic-gatedefine(`MAILER',
1107c478bd9Sstevel@tonic-gate`define(`_M_N_', `ifelse(`$2', `', `$1', `$2')')dnl
1117c478bd9Sstevel@tonic-gateifdef(`_MAILER_DEFINED_', `', `define(`_MAILER_DEFINED_', `1')')dnl
1127c478bd9Sstevel@tonic-gateifdef(_MAILER_`'_M_N_`'_,
1137c478bd9Sstevel@tonic-gate`errprint(`*** ERROR: MAILER('_M_N_`) already included
1147c478bd9Sstevel@tonic-gate')',
1157c478bd9Sstevel@tonic-gate`define(_MAILER_`'_M_N_`'_, `')define(`_ARG_', `$2')define(`_ARGS_', `shift($@)')PUSHDIVERT(7)include(_CF_DIR_`'mailer/$1.m4)POPDIVERT`'')')
1167c478bd9Sstevel@tonic-gatedefine(`DOMAIN', `PUSHDIVERT(-1)define(`_ARG_', `$2')include(_CF_DIR_`'domain/$1.m4)POPDIVERT`'')
1177c478bd9Sstevel@tonic-gatedefine(`FEATURE', `PUSHDIVERT(-1)ifdef(`_MAILER_DEFINED_',`errprint(`*** ERROR: FEATURE() should be before MAILER()
1187c478bd9Sstevel@tonic-gate')')define(`_ARG_', `$2')define(`_ARGS_', `shift($@)')include(_CF_DIR_`'feature/$1.m4)POPDIVERT`'')
1197c478bd9Sstevel@tonic-gatedefine(`HACK', `PUSHDIVERT(-1)define(`_ARG_', `$2')define(`_ARGS_', `shift($@)')include(_CF_DIR_`'hack/$1.m4)POPDIVERT`'')
1207c478bd9Sstevel@tonic-gatedefine(`_DPO_',`')
1217c478bd9Sstevel@tonic-gatedefine(`DAEMON_OPTIONS', `define(`_DPO_', defn(`_DPO_')
1227c478bd9Sstevel@tonic-gateO DaemonPortOptions=`$1')')
1237c478bd9Sstevel@tonic-gatedefine(`_CPO_',`')
1247c478bd9Sstevel@tonic-gatedefine(`CLIENT_OPTIONS', `define(`_CPO_', defn(`_CPO_')
1257c478bd9Sstevel@tonic-gateO ClientPortOptions=`$1')')
1267c478bd9Sstevel@tonic-gatedefine(`_MAIL_FILTERS_', `')
1277c478bd9Sstevel@tonic-gatedefine(`_MAIL_FILTERS_DEF', `')
1287c478bd9Sstevel@tonic-gatedefine(`MAIL_FILTER', `define(`_MAIL_FILTERS_', defn(`_MAIL_FILTERS_')
1297c478bd9Sstevel@tonic-gateX`'$1`, '`$2')
1307c478bd9Sstevel@tonic-gatedefine(`_MAIL_FILTERS_DEF', defn(`_MAIL_FILTERS_DEF')`X')')
1317c478bd9Sstevel@tonic-gatedefine(`INPUT_MAIL_FILTER', `MAIL_FILTER(`$1', `$2')
1327c478bd9Sstevel@tonic-gateifelse(defn(`confINPUT_MAIL_FILTERS')X, `X',
1337c478bd9Sstevel@tonic-gate`define(`confINPUT_MAIL_FILTERS', $1)',
1347c478bd9Sstevel@tonic-gate`define(`confINPUT_MAIL_FILTERS', defn(`confINPUT_MAIL_FILTERS')`, '`$1')')')
1357c478bd9Sstevel@tonic-gatedefine(`_QUEUE_GROUP_', `')
1367c478bd9Sstevel@tonic-gatedefine(`QUEUE_GROUP', `define(`_QUEUE_GROUP_', defn(`_QUEUE_GROUP_')
1377c478bd9Sstevel@tonic-gateQ`'$1`, '`$2')')
1387c478bd9Sstevel@tonic-gatedefine(`CF_LEVEL', `10')dnl
1397c478bd9Sstevel@tonic-gatedefine(`VERSIONID', ``#####  $1  #####'')
1407c478bd9Sstevel@tonic-gatedefine(`LOCAL_RULE_0', `divert(3)')
1417c478bd9Sstevel@tonic-gatednl for UUCP...
1427c478bd9Sstevel@tonic-gatedefine(`LOCAL_UUCP', `divert(4)')
1437c478bd9Sstevel@tonic-gatedefine(`LOCAL_RULE_1',
1447c478bd9Sstevel@tonic-gate`divert(9)dnl
1457c478bd9Sstevel@tonic-gate#######################################
1467c478bd9Sstevel@tonic-gate###  Ruleset 1 -- Sender Rewriting  ###
1477c478bd9Sstevel@tonic-gate#######################################
1487c478bd9Sstevel@tonic-gate
1497c478bd9Sstevel@tonic-gateSsender=1
1507c478bd9Sstevel@tonic-gate')
1517c478bd9Sstevel@tonic-gatedefine(`LOCAL_RULE_2',
1527c478bd9Sstevel@tonic-gate`divert(9)dnl
1537c478bd9Sstevel@tonic-gate##########################################
1547c478bd9Sstevel@tonic-gate###  Ruleset 2 -- Recipient Rewriting  ###
1557c478bd9Sstevel@tonic-gate##########################################
1567c478bd9Sstevel@tonic-gate
1577c478bd9Sstevel@tonic-gateSrecipient=2
1587c478bd9Sstevel@tonic-gate')
1597c478bd9Sstevel@tonic-gatedefine(`LOCAL_RULESETS',
1607c478bd9Sstevel@tonic-gate`divert(9)
1617c478bd9Sstevel@tonic-gate
1627c478bd9Sstevel@tonic-gate')
1637c478bd9Sstevel@tonic-gatedefine(`LOCAL_SRV_FEATURES',
1647c478bd9Sstevel@tonic-gate`define(`_LOCAL_SRV_FEATURES_')
1657c478bd9Sstevel@tonic-gateifdef(`_MAILER_DEFINED_',,`errprint(`*** WARNING: MAILER() should be before LOCAL_SRV_FEATURES
1667c478bd9Sstevel@tonic-gate')')
1677c478bd9Sstevel@tonic-gatedivert(9)
1687c478bd9Sstevel@tonic-gateSLocal_srv_features')
1697c478bd9Sstevel@tonic-gatedefine(`LOCAL_TRY_TLS',
1707c478bd9Sstevel@tonic-gate`define(`_LOCAL_TRY_TLS_')
1717c478bd9Sstevel@tonic-gateifdef(`_MAILER_DEFINED_',,`errprint(`*** WARNING: MAILER() should be before LOCAL_TRY_TLS
1727c478bd9Sstevel@tonic-gate')')
1737c478bd9Sstevel@tonic-gatedivert(9)
1747c478bd9Sstevel@tonic-gateSLocal_try_tls')
1757c478bd9Sstevel@tonic-gatedefine(`LOCAL_TLS_RCPT',
1767c478bd9Sstevel@tonic-gate`define(`_LOCAL_TLS_RCPT_')
1777c478bd9Sstevel@tonic-gateifdef(`_MAILER_DEFINED_',,`errprint(`*** WARNING: MAILER() should be before LOCAL_TLS_RCPT
1787c478bd9Sstevel@tonic-gate')')
1797c478bd9Sstevel@tonic-gatedivert(9)
1807c478bd9Sstevel@tonic-gateSLocal_tls_rcpt')
1817c478bd9Sstevel@tonic-gatedefine(`LOCAL_TLS_CLIENT',
1827c478bd9Sstevel@tonic-gate`define(`_LOCAL_TLS_CLIENT_')
1837c478bd9Sstevel@tonic-gateifdef(`_MAILER_DEFINED_',,`errprint(`*** WARNING: MAILER() should be before LOCAL_TLS_CLIENT
1847c478bd9Sstevel@tonic-gate')')
1857c478bd9Sstevel@tonic-gatedivert(9)
1867c478bd9Sstevel@tonic-gateSLocal_tls_client')
1877c478bd9Sstevel@tonic-gatedefine(`LOCAL_TLS_SERVER',
1887c478bd9Sstevel@tonic-gate`define(`_LOCAL_TLS_SERVER_')
1897c478bd9Sstevel@tonic-gateifdef(`_MAILER_DEFINED_',,`errprint(`*** WARNING: MAILER() should be before LOCAL_TLS_SERVER
1907c478bd9Sstevel@tonic-gate')')
1917c478bd9Sstevel@tonic-gatedivert(9)
1927c478bd9Sstevel@tonic-gateSLocal_tls_server')
1937c478bd9Sstevel@tonic-gatedefine(`LOCAL_RULE_3', `divert(2)')
1947c478bd9Sstevel@tonic-gatedefine(`LOCAL_CONFIG', `divert(6)')
1957c478bd9Sstevel@tonic-gatedefine(`MAILER_DEFINITIONS', `divert(7)')
1967c478bd9Sstevel@tonic-gatedefine(`LOCAL_NET_CONFIG', `define(`_LOCAL_RULES_', 1)divert(1)')
1977c478bd9Sstevel@tonic-gatedefine(`UUCPSMTP', `R DOL(*) < @ $1 .UUCP > DOL(*)	DOL(1) < @ $2 > DOL(2)')
1987c478bd9Sstevel@tonic-gatedefine(`CONCAT', `$1$2$3$4$5$6$7')
1997c478bd9Sstevel@tonic-gatedefine(`DOL', ``$'$1')
2007c478bd9Sstevel@tonic-gatedefine(`SITECONFIG',
2017c478bd9Sstevel@tonic-gate`CONCAT(D, $3, $2)
2027c478bd9Sstevel@tonic-gatedefine(`_CLASS_$3_', `')dnl
2037c478bd9Sstevel@tonic-gateifelse($3, U, C{w}$2 $2.UUCP, `dnl')
2047c478bd9Sstevel@tonic-gatedefine(`SITE', `ifelse(CONCAT($'2`, $3), SU,
2057c478bd9Sstevel@tonic-gate		CONCAT(CY, $'1`),
2067c478bd9Sstevel@tonic-gate		CONCAT(C, $3, $'1`))')
2077c478bd9Sstevel@tonic-gatesinclude(_CF_DIR_`'siteconfig/$1.m4)')
2087c478bd9Sstevel@tonic-gatedefine(`EXPOSED_USER', `PUSHDIVERT(5)C{E}$1
2097c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2107c478bd9Sstevel@tonic-gatedefine(`EXPOSED_USER_FILE', `PUSHDIVERT(5)F{E}$1
2117c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2127c478bd9Sstevel@tonic-gatedefine(`LOCAL_USER', `PUSHDIVERT(5)C{L}$1
2137c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2147c478bd9Sstevel@tonic-gatedefine(`LOCAL_USER_FILE', `PUSHDIVERT(5)F{L}$1
2157c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2167c478bd9Sstevel@tonic-gatedefine(`MASQUERADE_AS', `define(`MASQUERADE_NAME', $1)')
2177c478bd9Sstevel@tonic-gatedefine(`MASQUERADE_DOMAIN', `PUSHDIVERT(5)C{M}$1
2187c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2197c478bd9Sstevel@tonic-gatedefine(`MASQUERADE_EXCEPTION', `PUSHDIVERT(5)C{N}$1
2207c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2217c478bd9Sstevel@tonic-gatedefine(`MASQUERADE_DOMAIN_FILE', `PUSHDIVERT(5)F{M}$1
2227c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2237c478bd9Sstevel@tonic-gatedefine(`MASQUERADE_EXCEPTION_FILE', `PUSHDIVERT(5)F{N}$1
2247c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2257c478bd9Sstevel@tonic-gatedefine(`LOCAL_DOMAIN', `PUSHDIVERT(5)C{w}$1
2267c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2277c478bd9Sstevel@tonic-gatedefine(`CANONIFY_DOMAIN', `PUSHDIVERT(5)C{Canonify}$1
2287c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2297c478bd9Sstevel@tonic-gatedefine(`CANONIFY_DOMAIN_FILE', `PUSHDIVERT(5)F{Canonify}$1
2307c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2317c478bd9Sstevel@tonic-gatedefine(`GENERICS_DOMAIN', `PUSHDIVERT(5)C{G}$1
2327c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2337c478bd9Sstevel@tonic-gatedefine(`GENERICS_DOMAIN_FILE', `PUSHDIVERT(5)F{G}$1
2347c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2357c478bd9Sstevel@tonic-gatedefine(`LDAPROUTE_DOMAIN', `PUSHDIVERT(5)C{LDAPRoute}$1
2367c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2377c478bd9Sstevel@tonic-gatedefine(`LDAPROUTE_DOMAIN_FILE', `PUSHDIVERT(5)F{LDAPRoute}$1
2387c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2397c478bd9Sstevel@tonic-gatedefine(`LDAPROUTE_EQUIVALENT', `PUSHDIVERT(5)C{LDAPRouteEquiv}$1
2407c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2417c478bd9Sstevel@tonic-gatedefine(`LDAPROUTE_EQUIVALENT_FILE', `PUSHDIVERT(5)F{LDAPRouteEquiv}$1
2427c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2437c478bd9Sstevel@tonic-gatedefine(`VIRTUSER_DOMAIN', `PUSHDIVERT(5)C{VirtHost}$1
2447c478bd9Sstevel@tonic-gatedefine(`_VIRTHOSTS_')
2457c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2467c478bd9Sstevel@tonic-gatedefine(`VIRTUSER_DOMAIN_FILE', `PUSHDIVERT(5)F{VirtHost}$1
2477c478bd9Sstevel@tonic-gatedefine(`_VIRTHOSTS_')
2487c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2497c478bd9Sstevel@tonic-gatedefine(`RELAY_DOMAIN', `PUSHDIVERT(5)C{R}$1
2507c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2517c478bd9Sstevel@tonic-gatedefine(`RELAY_DOMAIN_FILE', `PUSHDIVERT(5)F{R}$1
2527c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2537c478bd9Sstevel@tonic-gatedefine(`TRUST_AUTH_MECH', `_DEFIFNOT(`_USE_AUTH_',`1')PUSHDIVERT(5)C{TrustAuthMech}$1
2547c478bd9Sstevel@tonic-gatePOPDIVERT`'dnl`'')
2557c478bd9Sstevel@tonic-gatedefine(`_OPTINS', `ifdef(`$1', `$2$1$3')')
2567c478bd9Sstevel@tonic-gate
2577c478bd9Sstevel@tonic-gate
2587c478bd9Sstevel@tonic-gatem4wrap(`include(_CF_DIR_`m4/proto.m4')')
2597c478bd9Sstevel@tonic-gate
2607c478bd9Sstevel@tonic-gate# default location for files
2617c478bd9Sstevel@tonic-gateifdef(`MAIL_SETTINGS_DIR', , `define(`MAIL_SETTINGS_DIR', `/etc/mail/')')
2627c478bd9Sstevel@tonic-gate
2637c478bd9Sstevel@tonic-gate# set our default hashed database type
2647c478bd9Sstevel@tonic-gatedefine(`DATABASE_MAP_TYPE', `hash')
2657c478bd9Sstevel@tonic-gate
2667c478bd9Sstevel@tonic-gate# set up default values for options
2677c478bd9Sstevel@tonic-gatedefine(`ALIAS_FILE', `MAIL_SETTINGS_DIR`'aliases')
2687c478bd9Sstevel@tonic-gatedefine(`confMAILER_NAME', ``MAILER-DAEMON'')
2697c478bd9Sstevel@tonic-gatedefine(`confFROM_LINE', `From $g $d')
2707c478bd9Sstevel@tonic-gatedefine(`confOPERATORS', `.:%@!^/[]+')
2717c478bd9Sstevel@tonic-gatedefine(`confSMTP_LOGIN_MSG', `$j Sendmail $v/$Z; $b')
2727c478bd9Sstevel@tonic-gatedefine(`_REC_AUTH_', `$.$?{auth_type}(authenticated')
2737c478bd9Sstevel@tonic-gatedefine(`_REC_FULL_AUTH_', `$.$?{auth_type}(user=${auth_authen} $?{auth_author}author=${auth_author} $.mech=${auth_type}')
2747c478bd9Sstevel@tonic-gatedefine(`_REC_HDR_', `$?sfrom $s $.$?_($?s$|from $.$_)')
2757c478bd9Sstevel@tonic-gatedefine(`_REC_END_', `for $u; $|;
2767c478bd9Sstevel@tonic-gate	$.$b')
2777c478bd9Sstevel@tonic-gatedefine(`_REC_TLS_', `(version=${tls_version} cipher=${cipher} bits=${cipher_bits} verify=${verify})$.$?u')
2787c478bd9Sstevel@tonic-gatedefine(`_REC_BY_', `$.by $j ($v/$Z)$?r with $r$. id $i$?{tls_version}')
2797c478bd9Sstevel@tonic-gatedefine(`confRECEIVED_HEADER', `_REC_HDR_
2807c478bd9Sstevel@tonic-gate	_REC_AUTH_$?{auth_ssf} bits=${auth_ssf}$.)
2817c478bd9Sstevel@tonic-gate	_REC_BY_
2827c478bd9Sstevel@tonic-gate	_REC_TLS_
2837c478bd9Sstevel@tonic-gate	_REC_END_')
2847c478bd9Sstevel@tonic-gatedefine(`confSEVEN_BIT_INPUT', `False')
2857c478bd9Sstevel@tonic-gatedefine(`confALIAS_WAIT', `10')
2867c478bd9Sstevel@tonic-gatedefine(`confMIN_FREE_BLOCKS', `100')
2877c478bd9Sstevel@tonic-gatedefine(`confBLANK_SUB', `.')
2887c478bd9Sstevel@tonic-gatedefine(`confCON_EXPENSIVE', `False')
2897c478bd9Sstevel@tonic-gatedefine(`confDELIVERY_MODE', `background')
2907c478bd9Sstevel@tonic-gatedefine(`confTEMP_FILE_MODE', `0600')
2917c478bd9Sstevel@tonic-gatedefine(`confMCI_CACHE_SIZE', `2')
2927c478bd9Sstevel@tonic-gatedefine(`confMCI_CACHE_TIMEOUT', `5m')
2937c478bd9Sstevel@tonic-gatedefine(`confUSE_ERRORS_TO', `False')
2947c478bd9Sstevel@tonic-gatedefine(`confLOG_LEVEL', `9')
2957c478bd9Sstevel@tonic-gatedefine(`confCHECK_ALIASES', `False')
2967c478bd9Sstevel@tonic-gatedefine(`confOLD_STYLE_HEADERS', `True')
2977c478bd9Sstevel@tonic-gatedefine(`confPRIVACY_FLAGS', `authwarnings')
2987c478bd9Sstevel@tonic-gatedefine(`confSAFE_QUEUE', `True')
2997c478bd9Sstevel@tonic-gatedefine(`confTO_QUEUERETURN', `5d')
3007c478bd9Sstevel@tonic-gatedefine(`confTO_QUEUEWARN', `4h')
3017c478bd9Sstevel@tonic-gatedefine(`confTIME_ZONE', `USE_SYSTEM')
3027c478bd9Sstevel@tonic-gatedefine(`confCW_FILE', `MAIL_SETTINGS_DIR`'local-host-names')
3037c478bd9Sstevel@tonic-gatedefine(`confMIME_FORMAT_ERRORS', `True')
3047c478bd9Sstevel@tonic-gatedefine(`confFORWARD_PATH', `$z/.forward.$w:$z/.forward')
3057c478bd9Sstevel@tonic-gatedefine(`confCR_FILE', `-o MAIL_SETTINGS_DIR`'relay-domains')
3067c478bd9Sstevel@tonic-gatedefine(`confMILTER_MACROS_CONNECT', ``j, _, {daemon_name}, {if_name}, {if_addr}'')
3077c478bd9Sstevel@tonic-gatedefine(`confMILTER_MACROS_HELO', ``{tls_version}, {cipher}, {cipher_bits}, {cert_subject}, {cert_issuer}'')
3087c478bd9Sstevel@tonic-gatedefine(`confMILTER_MACROS_ENVFROM', ``i, {auth_type}, {auth_authen}, {auth_ssf}, {auth_author}, {mail_mailer}, {mail_host}, {mail_addr}'')
3097c478bd9Sstevel@tonic-gatedefine(`confMILTER_MACROS_ENVRCPT', ``{rcpt_mailer}, {rcpt_host}, {rcpt_addr}'')
3107c478bd9Sstevel@tonic-gatedefine(`confMILTER_MACROS_EOM', `{msg_id}')
3117c478bd9Sstevel@tonic-gate
3127c478bd9Sstevel@tonic-gate
3137c478bd9Sstevel@tonic-gatedivert(0)dnl
314*e9af4bc0SJohn BeckVERSIONID(`$Id: cfhead.m4,v 8.120 2009/01/23 22:39:21 ca Exp $')
315