uucp.m4 revision 64562
1PUSHDIVERT(-1)
2#
3# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers.
4#	All rights reserved.
5# Copyright (c) 1983 Eric P. Allman.  All rights reserved.
6# Copyright (c) 1988, 1993
7#	The Regents of the University of California.  All rights reserved.
8#
9# By using this file, you agree to the terms and conditions set
10# forth in the LICENSE file which can be found at the top level of
11# the sendmail distribution.
12#
13#
14ifdef(`_MAILER_smtp_', `',
15	`errprint(`*** MAILER(`smtp') must appear before MAILER(`uucp')')')dnl
16
17ifdef(`UUCP_MAILER_PATH',, `define(`UUCP_MAILER_PATH', /usr/bin/uux)')
18ifdef(`UUCP_MAILER_ARGS',, `define(`UUCP_MAILER_ARGS', `uux - -r -a$g -gC $h!rmail ($u)')')
19_DEFIFNOT(`UUCP_MAILER_FLAGS', `')
20ifdef(`UUCP_MAILER_MAX',,
21	`define(`UUCP_MAILER_MAX',
22		`ifdef(`UUCP_MAX_SIZE', `UUCP_MAX_SIZE', 100000)')')
23POPDIVERT
24#####################################
25###   UUCP Mailer specification   ###
26#####################################
27
28VERSIONID(`$Id: uucp.m4,v 8.38 1999/10/18 04:57:55 gshapiro Exp $')
29
30#
31#  envelope and header sender rewriting
32#
33SFromU=12
34
35# handle error address as a special case
36R<@>				$n			errors to mailer-daemon
37
38# list:; syntax should disappear
39R:; <@>				$@
40
41R$* < @ $* . > $*		$1 < @ $2 > $3		strip trailing dots
42R$* < @ $=w >			$1			strip local name
43R<@ $- . UUCP > : $+		$1 ! $2			convert to UUCP format
44R<@ $+ > : $+			$1 ! $2			convert to UUCP format
45R$* < @ $- . UUCP >		$2 ! $1			convert to UUCP format
46R$* < @ $+ >			$2 ! $1			convert to UUCP format
47R$&h ! $+ ! $+			$@ $1 ! $2		$h!...!user => ...!user
48R$&h ! $+			$@ $&h ! $1		$h!user => $h!user
49R$+				$: $U ! $1		prepend our name
50R! $+				$: $k ! $1		in case $U undefined
51
52#
53#  envelope recipient rewriting
54#
55SEnvToU=22
56
57# list:; should disappear
58R:; <@>				$@
59
60R$* < @ $* . > $*		$1 < @ $2 > $3		strip trailing dots
61R$* < @ $=w >			$1			strip local name
62R<@ $- . UUCP > : $+		$1 ! $2			convert to UUCP format
63R<@ $+ > : $+			$1 ! $2			convert to UUCP format
64R$* < @ $- . UUCP >		$2 ! $1			convert to UUCP format
65R$* < @ $+ >			$2 ! $1			convert to UUCP format
66
67#
68#  header recipient rewriting
69#
70SHdrToU=42
71
72# list:; syntax should disappear
73R:; <@>				$@
74
75R$* < @ $* . > $*		$1 < @ $2 > $3		strip trailing dots
76R$* < @ $=w >			$1			strip local name
77R<@ $- . UUCP > : $+		$1 ! $2			convert to UUCP format
78R<@ $+ > : $+			$1 ! $2			convert to UUCP format
79R$* < @ $- . UUCP >		$2 ! $1			convert to UUCP format
80R$* < @ $+ >			$2 ! $1			convert to UUCP format
81R$&h ! $+ ! $+			$@ $1 ! $2		$h!...!user => ...!user
82R$&h ! $+			$@ $&h ! $1		$h!user => $h!user
83R$+				$: $U ! $1		prepend our name
84R! $+				$: $k ! $1		in case $U undefined
85
86
87ifdef(`_MAILER_smtp_',
88`#
89#  envelope sender rewriting for uucp-dom mailer
90#
91SEnvFromUD=52
92
93# handle error address as a special case
94R<@>				$n			errors to mailer-daemon
95
96# pass everything to standard SMTP mailer rewriting
97R$*				$@ $>EnvFromSMTP $1
98
99#
100#  envelope sender rewriting for uucp-uudom mailer
101#
102SEnvFromUUD=72
103
104# handle error address as a special case
105R<@>				$n			errors to mailer-daemon
106
107# do standard SMTP mailer rewriting
108R$*				$: $>EnvFromSMTP $1
109
110R$* < @ $* . > $*		$1 < @ $2 > $3		strip trailing dots
111R<@ $- . UUCP > : $+		$@ $1 ! $2		convert to UUCP format
112R<@ $+ > : $+			$@ $1 ! $2		convert to UUCP format
113R$* < @ $- . UUCP >		$@ $2 ! $1		convert to UUCP format
114R$* < @ $+ >			$@ $2 ! $1		convert to UUCP format')
115
116
117PUSHDIVERT(4)
118# resolve locally connected UUCP links
119R$* < @ $=Z . UUCP. > $*	$#uucp-uudom $@ $2 $: $1 < @ $2 .UUCP. > $3
120R$* < @ $=Y . UUCP. > $*	$#uucp-new $@ $2 $: $1 < @ $2 .UUCP. > $3
121R$* < @ $=U . UUCP. > $*	$#uucp-old $@ $2 $: $1 < @ $2 .UUCP. > $3
122POPDIVERT
123
124#
125#  There are innumerable variations on the UUCP mailer.  It really
126#  is rather absurd.
127#
128
129# old UUCP mailer (two names)
130Muucp,		P=UUCP_MAILER_PATH, F=_MODMF_(CONCAT(`DFMhuUd', UUCP_MAILER_FLAGS), `UUCP'), S=FromU, R=EnvToU/HdrToU,
131		M=UUCP_MAILER_MAX, _OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
132		A=UUCP_MAILER_ARGS
133Muucp-old,	P=UUCP_MAILER_PATH, F=_MODMF_(CONCAT(`DFMhuUd', UUCP_MAILER_FLAGS), `UUCP'), S=FromU, R=EnvToU/HdrToU,
134		M=UUCP_MAILER_MAX, _OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
135		A=UUCP_MAILER_ARGS
136
137# smart UUCP mailer (handles multiple addresses) (two names)
138Msuucp,		P=UUCP_MAILER_PATH, F=_MODMF_(CONCAT(`mDFMhuUd', UUCP_MAILER_FLAGS), `UUCP'), S=FromU, R=EnvToU/HdrToU,
139		 M=UUCP_MAILER_MAX, _OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
140		A=UUCP_MAILER_ARGS
141Muucp-new,	P=UUCP_MAILER_PATH, F=_MODMF_(CONCAT(`mDFMhuUd', UUCP_MAILER_FLAGS), `UUCP'), S=FromU, R=EnvToU/HdrToU,
142		M=UUCP_MAILER_MAX, _OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
143		A=UUCP_MAILER_ARGS
144
145ifdef(`_MAILER_smtp_',
146`# domain-ized UUCP mailer
147Muucp-dom,	P=UUCP_MAILER_PATH, F=_MODMF_(CONCAT(`mDFMhud', UUCP_MAILER_FLAGS), `UUCP'), S=EnvFromUD/HdrFromSMTP, R=ifdef(`_ALL_MASQUERADE_', `EnvToSMTP/HdrFromSMTP', `EnvToSMTP'),
148		M=UUCP_MAILER_MAX, _OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
149		A=UUCP_MAILER_ARGS
150
151# domain-ized UUCP mailer with UUCP-style sender envelope
152Muucp-uudom,	P=UUCP_MAILER_PATH, F=_MODMF_(CONCAT(`mDFMhud', UUCP_MAILER_FLAGS), `UUCP'), S=EnvFromUUD/HdrFromSMTP, R=ifdef(`_ALL_MASQUERADE_', `EnvToSMTP/HdrFromSMTP', `EnvToSMTP'),
153		M=UUCP_MAILER_MAX, _OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
154		A=UUCP_MAILER_ARGS')
155
156
157