1*7c478bd9Sstevel@tonic-gatePUSHDIVERT(-1) 2*7c478bd9Sstevel@tonic-gate# 3*7c478bd9Sstevel@tonic-gate# Copyright (c) 1998-2000, 2004 Sendmail, Inc. and its suppliers. 4*7c478bd9Sstevel@tonic-gate# All rights reserved. 5*7c478bd9Sstevel@tonic-gate# Copyright (c) 1983 Eric P. Allman. All rights reserved. 6*7c478bd9Sstevel@tonic-gate# Copyright (c) 1988, 1993 7*7c478bd9Sstevel@tonic-gate# The Regents of the University of California. All rights reserved. 8*7c478bd9Sstevel@tonic-gate# 9*7c478bd9Sstevel@tonic-gate# By using this file, you agree to the terms and conditions set 10*7c478bd9Sstevel@tonic-gate# forth in the LICENSE file which can be found at the top level of 11*7c478bd9Sstevel@tonic-gate# the sendmail distribution. 12*7c478bd9Sstevel@tonic-gate# 13*7c478bd9Sstevel@tonic-gate# ident "%Z%%M% %I% %E% SMI" 14*7c478bd9Sstevel@tonic-gate# 15*7c478bd9Sstevel@tonic-gate_DEFIFNOT(`_DEF_LOCAL_MAILER_FLAGS', `lsDFMAw5:/|@q') 16*7c478bd9Sstevel@tonic-gate_DEFIFNOT(`LOCAL_MAILER_FLAGS', `Prmn9') 17*7c478bd9Sstevel@tonic-gateifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /bin/mail)') 18*7c478bd9Sstevel@tonic-gateifdef(`LOCAL_MAILER_ARGS',, `define(`LOCAL_MAILER_ARGS', `mail -d $u')') 19*7c478bd9Sstevel@tonic-gateifdef(`LOCAL_MAILER_DSN_DIAGNOSTIC_CODE',, `define(`LOCAL_MAILER_DSN_DIAGNOSTIC_CODE', `X-Unix')') 20*7c478bd9Sstevel@tonic-gate_DEFIFNOT(`_DEF_LOCAL_SHELL_FLAGS', `lsDFMoq') 21*7c478bd9Sstevel@tonic-gate_DEFIFNOT(`LOCAL_SHELL_FLAGS', `eu9') 22*7c478bd9Sstevel@tonic-gateifdef(`LOCAL_SHELL_PATH',, `define(`LOCAL_SHELL_PATH', /bin/sh)') 23*7c478bd9Sstevel@tonic-gateifdef(`LOCAL_SHELL_ARGS',, `define(`LOCAL_SHELL_ARGS', `sh -c $u')') 24*7c478bd9Sstevel@tonic-gateifdef(`LOCAL_SHELL_DIR',, `define(`LOCAL_SHELL_DIR', `$z:/')') 25*7c478bd9Sstevel@tonic-gatedefine(`LOCAL_RWR', `ifdef(`_LOCAL_LMTP_', 26*7c478bd9Sstevel@tonic-gate`S=EnvFromSMTP/HdrFromL, R=EnvToL/HdrToL', 27*7c478bd9Sstevel@tonic-gate`S=EnvFromL/HdrFromL, R=EnvToL/HdrToL')') 28*7c478bd9Sstevel@tonic-gatedefine(`_LOCAL_QGRP', `ifelse(defn(`LOCAL_MAILER_QGRP'),`',`', ` Q=LOCAL_MAILER_QGRP,')')dnl 29*7c478bd9Sstevel@tonic-gatedefine(`_PROG_QGRP', `ifelse(defn(`LOCAL_PROG_QGRP'),`',`', ` Q=LOCAL_PROG_QGRP,')')dnl 30*7c478bd9Sstevel@tonic-gatePOPDIVERT 31*7c478bd9Sstevel@tonic-gate 32*7c478bd9Sstevel@tonic-gate################################################## 33*7c478bd9Sstevel@tonic-gate### Local and Program Mailer specification ### 34*7c478bd9Sstevel@tonic-gate################################################## 35*7c478bd9Sstevel@tonic-gate 36*7c478bd9Sstevel@tonic-gateVERSIONID(`$Id: local.m4,v 8.59 2004/11/23 00:37:25 ca Exp $') 37*7c478bd9Sstevel@tonic-gate 38*7c478bd9Sstevel@tonic-gate# 39*7c478bd9Sstevel@tonic-gate# Envelope sender rewriting 40*7c478bd9Sstevel@tonic-gate# 41*7c478bd9Sstevel@tonic-gateSEnvFromL 42*7c478bd9Sstevel@tonic-gateR<@> $n errors to mailer-daemon 43*7c478bd9Sstevel@tonic-gateR@ <@ $*> $n temporarily bypass Sun bogosity 44*7c478bd9Sstevel@tonic-gateR$+ $: $>AddDomain $1 add local domain if needed 45*7c478bd9Sstevel@tonic-gateifdef(`_LOCAL_NO_MASQUERADE_', `dnl', `dnl 46*7c478bd9Sstevel@tonic-gateR$* $: $>MasqEnv $1 do masquerading') 47*7c478bd9Sstevel@tonic-gate 48*7c478bd9Sstevel@tonic-gate# 49*7c478bd9Sstevel@tonic-gate# Envelope recipient rewriting 50*7c478bd9Sstevel@tonic-gate# 51*7c478bd9Sstevel@tonic-gateSEnvToL 52*7c478bd9Sstevel@tonic-gateR$+ < @ $* > $: $1 strip host part 53*7c478bd9Sstevel@tonic-gateifdef(`confUSERDB_SPEC', `dnl', `dnl 54*7c478bd9Sstevel@tonic-gateR$+ + $* $: < $&{addr_type} > $1 + $2 mark with addr type 55*7c478bd9Sstevel@tonic-gateR<e s> $+ + $* $: $1 remove +detail for sender 56*7c478bd9Sstevel@tonic-gateR< $* > $+ $: $2 else remove mark') 57*7c478bd9Sstevel@tonic-gate 58*7c478bd9Sstevel@tonic-gate# 59*7c478bd9Sstevel@tonic-gate# Header sender rewriting 60*7c478bd9Sstevel@tonic-gate# 61*7c478bd9Sstevel@tonic-gateSHdrFromL 62*7c478bd9Sstevel@tonic-gateR<@> $n errors to mailer-daemon 63*7c478bd9Sstevel@tonic-gateR@ <@ $*> $n temporarily bypass Sun bogosity 64*7c478bd9Sstevel@tonic-gateR$+ $: $>AddDomain $1 add local domain if needed 65*7c478bd9Sstevel@tonic-gateifdef(`_LOCAL_NO_MASQUERADE_', `dnl', `dnl 66*7c478bd9Sstevel@tonic-gateR$* $: $>MasqHdr $1 do masquerading') 67*7c478bd9Sstevel@tonic-gate 68*7c478bd9Sstevel@tonic-gate# 69*7c478bd9Sstevel@tonic-gate# Header recipient rewriting 70*7c478bd9Sstevel@tonic-gate# 71*7c478bd9Sstevel@tonic-gateSHdrToL 72*7c478bd9Sstevel@tonic-gateR$+ $: $>AddDomain $1 add local domain if needed 73*7c478bd9Sstevel@tonic-gateifdef(`_ALL_MASQUERADE_', `dnl 74*7c478bd9Sstevel@tonic-gateifdef(`_LOCAL_NO_MASQUERADE_', `dnl', `dnl 75*7c478bd9Sstevel@tonic-gateR$* $: $>MasqHdr $1 do all-masquerading')', 76*7c478bd9Sstevel@tonic-gate`R$* < @ *LOCAL* > $* $: $1 < @ $j . > $2') 77*7c478bd9Sstevel@tonic-gate 78*7c478bd9Sstevel@tonic-gate# 79*7c478bd9Sstevel@tonic-gate# Common code to add local domain name (only if always-add-domain) 80*7c478bd9Sstevel@tonic-gate# 81*7c478bd9Sstevel@tonic-gateSAddDomain 82*7c478bd9Sstevel@tonic-gateifdef(`_ALWAYS_ADD_DOMAIN_', `dnl 83*7c478bd9Sstevel@tonic-gateR$* < @ $* > $* $@ $1 < @ $2 > $3 already fully qualified 84*7c478bd9Sstevel@tonic-gateifelse(len(X`'_ALWAYS_ADD_DOMAIN_),`1',` 85*7c478bd9Sstevel@tonic-gateR$+ $@ $1 < @ *LOCAL* > add local qualification', 86*7c478bd9Sstevel@tonic-gate`R$+ $@ $1 < @ _ALWAYS_ADD_DOMAIN_ > add qualification')', 87*7c478bd9Sstevel@tonic-gate`dnl') 88*7c478bd9Sstevel@tonic-gate 89*7c478bd9Sstevel@tonic-gateMlocal, P=LOCAL_MAILER_PATH, F=_MODMF_(CONCAT(_DEF_LOCAL_MAILER_FLAGS, LOCAL_MAILER_FLAGS), `LOCAL'), LOCAL_RWR,_OPTINS(`LOCAL_MAILER_EOL', ` E=', `, ') 90*7c478bd9Sstevel@tonic-gate _OPTINS(`LOCAL_MAILER_MAX', `M=', `, ')_OPTINS(`LOCAL_MAILER_MAXMSGS', `m=', `, ')_OPTINS(`LOCAL_MAILER_MAXRCPTS', `r=', `, ')_OPTINS(`LOCAL_MAILER_CHARSET', `C=', `, ')T=DNS/RFC822/LOCAL_MAILER_DSN_DIAGNOSTIC_CODE,_LOCAL_QGRP 91*7c478bd9Sstevel@tonic-gate A=LOCAL_MAILER_ARGS 92*7c478bd9Sstevel@tonic-gateMprog, P=LOCAL_SHELL_PATH, F=_MODMF_(CONCAT(_DEF_LOCAL_SHELL_FLAGS, LOCAL_SHELL_FLAGS), `SHELL'), S=EnvFromL/HdrFromL, R=EnvToL/HdrToL, D=LOCAL_SHELL_DIR, 93*7c478bd9Sstevel@tonic-gate _OPTINS(`LOCAL_MAILER_MAX', `M=', `, ')T=X-Unix/X-Unix/X-Unix,_PROG_QGRP 94*7c478bd9Sstevel@tonic-gate A=LOCAL_SHELL_ARGS 95