uucp.m4 revision 42575
1157642SpsPUSHDIVERT(-1)
2265917Sdavidcs#
3157642Sps# Copyright (c) 1998 Sendmail, Inc.  All rights reserved.
4157642Sps# Copyright (c) 1983 Eric P. Allman.  All rights reserved.
5157642Sps# Copyright (c) 1988, 1993
6157642Sps#	The Regents of the University of California.  All rights reserved.
7157642Sps#
8157642Sps# By using this file, you agree to the terms and conditions set
9157642Sps# forth in the LICENSE file which can be found at the top level of
10157642Sps# the sendmail distribution.
11157642Sps#
12157642Sps#
13157642Sps
14157642Spsifdef(`UUCP_MAILER_PATH',, `define(`UUCP_MAILER_PATH', /usr/bin/uux)')
15157642Spsifdef(`UUCP_MAILER_ARGS',, `define(`UUCP_MAILER_ARGS', `uux - -r -a$g -gC $h!rmail ($u)')')
16157642Spsifdef(`UUCP_MAILER_FLAGS',, `define(`UUCP_MAILER_FLAGS', `')')
17157642Spsifdef(`UUCP_MAILER_MAX',,
18157642Sps	`define(`UUCP_MAILER_MAX',
19157642Sps		`ifdef(`UUCP_MAX_SIZE', `UUCP_MAX_SIZE', 100000)')')
20157642SpsPOPDIVERT
21157642Sps#####################################
22157642Sps###   UUCP Mailer specification   ###
23157642Sps#####################################
24157642Sps
25157642SpsVERSIONID(`@(#)uucp.m4	8.30 (Berkeley) 5/19/1998')
26157642Sps
27157642Sps#
28157642Sps#  There are innumerable variations on the UUCP mailer.  It really
29157642Sps#  is rather absurd.
30265917Sdavidcs#
31157642Sps
32157642Sps# old UUCP mailer (two names)
33218529SdavidchMuucp,		P=UUCP_MAILER_PATH, F=CONCAT(DFMhuUd, UUCP_MAILER_FLAGS), S=12, R=22/42, M=UUCP_MAILER_MAX,
34218529Sdavidch		_OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
35157642Sps		A=UUCP_MAILER_ARGS
36157642SpsMuucp-old,	P=UUCP_MAILER_PATH, F=CONCAT(DFMhuUd, UUCP_MAILER_FLAGS), S=12, R=22/42, M=UUCP_MAILER_MAX,
37218529Sdavidch		_OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
38218529Sdavidch		A=UUCP_MAILER_ARGS
39218529Sdavidch
40218529Sdavidch# smart UUCP mailer (handles multiple addresses) (two names)
41218529SdavidchMsuucp,		P=UUCP_MAILER_PATH, F=CONCAT(mDFMhuUd, UUCP_MAILER_FLAGS), S=12, R=22/42, M=UUCP_MAILER_MAX,
42218529Sdavidch		_OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
43218529Sdavidch		A=UUCP_MAILER_ARGS
44218529SdavidchMuucp-new,	P=UUCP_MAILER_PATH, F=CONCAT(mDFMhuUd, UUCP_MAILER_FLAGS), S=12, R=22/42, M=UUCP_MAILER_MAX,
45218529Sdavidch		_OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
46218529Sdavidch		A=UUCP_MAILER_ARGS
47218529Sdavidch
48218529Sdavidchifdef(`_MAILER_smtp_',
49218529Sdavidch`# domain-ized UUCP mailer
50218529SdavidchMuucp-dom,	P=UUCP_MAILER_PATH, F=CONCAT(mDFMhud, UUCP_MAILER_FLAGS), S=52/31, R=ifdef(`_ALL_MASQUERADE_', `21/31', `21'), M=UUCP_MAILER_MAX,
51218529Sdavidch		_OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
52218529Sdavidch		A=UUCP_MAILER_ARGS
53218529Sdavidch
54218529Sdavidch# domain-ized UUCP mailer with UUCP-style sender envelope
55218529SdavidchMuucp-uudom,	P=UUCP_MAILER_PATH, F=CONCAT(mDFMhud, UUCP_MAILER_FLAGS), S=72/31, R=ifdef(`_ALL_MASQUERADE_', `21/31', `21'), M=UUCP_MAILER_MAX,
56251142Smarius		_OPTINS(`UUCP_MAILER_CHARSET', `C=', `, ')T=X-UUCP/X-UUCP/X-Unix,
57218529Sdavidch		A=UUCP_MAILER_ARGS')
58218529Sdavidch
59218529Sdavidch
60218529Sdavidch#
61218529Sdavidch#  envelope and header sender rewriting
62218529Sdavidch#
63218529SdavidchS12
64218529Sdavidch
65218529Sdavidch# handle error address as a special case
66218529SdavidchR<@>				$n			errors to mailer-daemon
67218529Sdavidch
68218529Sdavidch# list:; syntax should disappear
69218529SdavidchR:; <@>				$@
70218529Sdavidch
71218529SdavidchR$* < @ $* . > $*		$1 < @ $2 > $3		strip trailing dots
72218529SdavidchR$* < @ $=w >			$1			strip local name
73218529SdavidchR<@ $- . UUCP > : $+		$1 ! $2			convert to UUCP format
74218529SdavidchR<@ $+ > : $+			$1 ! $2			convert to UUCP format
75218529SdavidchR$* < @ $- . UUCP >		$2 ! $1			convert to UUCP format
76218529SdavidchR$* < @ $+ >			$2 ! $1			convert to UUCP format
77218529SdavidchR$&h ! $+ ! $+			$@ $1 ! $2		$h!...!user => ...!user
78218529SdavidchR$&h ! $+			$@ $&h ! $1		$h!user => $h!user
79218529SdavidchR$+				$: $U ! $1		prepend our name
80218529SdavidchR! $+				$: $k ! $1		in case $U undefined
81218529Sdavidch
82218529Sdavidch#
83218529Sdavidch#  envelope recipient rewriting
84218529Sdavidch#
85218529SdavidchS22
86218529Sdavidch
87218529Sdavidch# list:; should disappear
88218529SdavidchR:; <@>				$@
89218529Sdavidch
90218529SdavidchR$* < @ $* . > $*		$1 < @ $2 > $3		strip trailing dots
91218529SdavidchR$* < @ $=w >			$1			strip local name
92218529SdavidchR<@ $- . UUCP > : $+		$1 ! $2			convert to UUCP format
93218529SdavidchR<@ $+ > : $+			$1 ! $2			convert to UUCP format
94218529SdavidchR$* < @ $- . UUCP >		$2 ! $1			convert to UUCP format
95218529SdavidchR$* < @ $+ >			$2 ! $1			convert to UUCP format
96218529Sdavidch
97218529Sdavidch#
98218529Sdavidch#  header recipient rewriting
99218529Sdavidch#
100218529SdavidchS42
101218529Sdavidch
102218529Sdavidch# list:; syntax should disappear
103218529SdavidchR:; <@>				$@
104218529Sdavidch
105218529SdavidchR$* < @ $* . > $*		$1 < @ $2 > $3		strip trailing dots
106218529SdavidchR$* < @ $=w >			$1			strip local name
107218529SdavidchR<@ $- . UUCP > : $+		$1 ! $2			convert to UUCP format
108218529SdavidchR<@ $+ > : $+			$1 ! $2			convert to UUCP format
109218529SdavidchR$* < @ $- . UUCP >		$2 ! $1			convert to UUCP format
110218529SdavidchR$* < @ $+ >			$2 ! $1			convert to UUCP format
111218529SdavidchR$&h ! $+ ! $+			$@ $1 ! $2		$h!...!user => ...!user
112218529SdavidchR$&h ! $+			$@ $&h ! $1		$h!user => $h!user
113218529SdavidchR$+				$: $U ! $1		prepend our name
114218529SdavidchR! $+				$: $k ! $1		in case $U undefined
115218529Sdavidch
116218529Sdavidch
117218529Sdavidchifdef(`_MAILER_smtp_',
118218529Sdavidch`#
119218529Sdavidch#  envelope sender rewriting for uucp-dom mailer
120218529Sdavidch#
121218529SdavidchS52
122218529Sdavidch
123218529Sdavidch# handle error address as a special case
124218529SdavidchR<@>				$n			errors to mailer-daemon
125218529Sdavidch
126218529Sdavidch# pass everything to standard SMTP mailer rewriting
127218529SdavidchR$*				$@ $>11 $1
128218529Sdavidch
129218529Sdavidch#
130218529Sdavidch#  envelope sender rewriting for uucp-uudom mailer
131218529Sdavidch#
132218529SdavidchS72
133218529Sdavidch
134218529Sdavidch# handle error address as a special case
135218529SdavidchR<@>				$n			errors to mailer-daemon
136218529Sdavidch
137218529Sdavidch# do standard SMTP mailer rewriting
138218529SdavidchR$*				$: $>11 $1
139218529Sdavidch
140218529SdavidchR$* < @ $* . > $*		$1 < @ $2 > $3		strip trailing dots
141218529SdavidchR<@ $- . UUCP > : $+		$@ $1 ! $2		convert to UUCP format
142218529SdavidchR<@ $+ > : $+			$@ $1 ! $2		convert to UUCP format
143218529SdavidchR$* < @ $- . UUCP >		$@ $2 ! $1		convert to UUCP format
144218529SdavidchR$* < @ $+ >			$@ $2 ! $1		convert to UUCP format')
145218529Sdavidch
146218529Sdavidch
147218529SdavidchPUSHDIVERT(4)
148218529Sdavidch# resolve locally connected UUCP links
149218529SdavidchR$* < @ $=Z . UUCP. > $*	$#uucp-uudom $@ $2 $: $1 < @ $2 .UUCP. > $3
150218529SdavidchR$* < @ $=Y . UUCP. > $*	$#uucp-new $@ $2 $: $1 < @ $2 .UUCP. > $3
151218529SdavidchR$* < @ $=U . UUCP. > $*	$#uucp-old $@ $2 $: $1 < @ $2 .UUCP. > $3
152218529SdavidchPOPDIVERT
153218529Sdavidch