151226SericPUSHDIVERT(-1)
251226Seric#
351226Seric# Copyright (c) 1983 Eric P. Allman
462501Sbostic# Copyright (c) 1988, 1993
562501Sbostic#	The Regents of the University of California.  All rights reserved.
651226Seric#
751226Seric# %sccs.include.redist.sh%
851226Seric#
958088Seric
1058088Sericifdef(`UUCP_MAILER_PATH',, `define(`UUCP_MAILER_PATH', /usr/bin/uux)')
1163755Sericifdef(`UUCP_MAILER_ARGS',, `define(`UUCP_MAILER_ARGS', `uux - -r -z -a$f -gC $h!rmail ($u)')')
1259765Sericifdef(`UUCP_MAILER_FLAGS',, `define(`UUCP_MAILER_FLAGS', `')')
1363790Sericifdef(`UUCP_MAX_SIZE',, `define(`UUCP_MAX_SIZE', 100000)')
1451226SericPOPDIVERT
1551226Seric#####################################
1651226Seric###   UUCP Mailer specification   ###
1751226Seric#####################################
1851226Seric
19*65184SericVERSIONID(`@(#)uucp.m4	8.10 (Berkeley) 12/20/93')
2051226Seric
2165083Seric#
2265083Seric#  There are innumerable variations on the UUCP mailer.  It really
2365083Seric#  is rather absurd.
2465083Seric#
2565083Seric
2665083Seric# old UUCP mailer (two names)
2763790SericMuucp,		P=UUCP_MAILER_PATH, F=CONCAT(DFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE,
2863755Seric		A=UUCP_MAILER_ARGS
2965083SericMuucp-old,	P=UUCP_MAILER_PATH, F=CONCAT(DFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE,
3065083Seric		A=UUCP_MAILER_ARGS
3151226Seric
3265083Seric# smart UUCP mailer (handles multiple addresses) (two names)
3363790SericMsuucp,		P=UUCP_MAILER_PATH, F=CONCAT(mDFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE,
3463755Seric		A=UUCP_MAILER_ARGS
3565083SericMuucp-new,	P=UUCP_MAILER_PATH, F=CONCAT(mDFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE,
3665083Seric		A=UUCP_MAILER_ARGS
3751226Seric
3863790Sericifdef(`_MAILER_smtp_',
3963790Seric`# domain-ized UUCP mailer
4064804SericMuucp-dom,	P=UUCP_MAILER_PATH, F=CONCAT(mDFMhu, UUCP_MAILER_FLAGS), S=52/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), M=UUCP_MAX_SIZE,
4165083Seric		A=UUCP_MAILER_ARGS
4265083Seric
4365083Seric# domain-ized UUCP mailer with UUCP-style sender envelope
4465083SericMuucp-uudom,	P=UUCP_MAILER_PATH, F=CONCAT(mDFMhu, UUCP_MAILER_FLAGS), S=72/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), M=UUCP_MAX_SIZE,
4563790Seric		A=UUCP_MAILER_ARGS')
4663790Seric
4763790Seric
4864804Seric#
4964804Seric#  envelope and header sender rewriting
5064804Seric#
5151226SericS12
5251226Seric
5358117Seric# handle error address as a special case
5458500SericR<@>				$n			errors to mailer-daemon
5558117Seric
5663759Seric# do not qualify list:; syntax
5758500SericR$* :; <@>			$@ $1 :;
5854018Seric
5958797SericR$* < @ $* . >			$1 < @ $2 >		strip trailing dots
6064973SericR$* < @ $=w >			$1			strip local name
6151245SericR$* < @ $- . UUCP >		$2 ! $1			convert to UUCP format
6251245SericR$* < @ $+ >			$2 ! $1			convert to UUCP format
6363755SericR$+				$: $U ! $1		prepend our name
64*65184SericR! $+				$: $k ! $1		in case $U undefined
6551259Seric
6664804Seric#
6764804Seric#  envelope and header recipient rewriting
6864804Seric#
6958023SericS22
7058023Seric
7158023Seric# don't touch list:; syntax
7264930SericR$* :; <@>			$@ $1 :;
7358023Seric
7458797SericR$* < @ $* . >			$1 < @ $2 >		strip trailing dots
7558758SericR$* < @ $j >			$1			strip local name
7658023SericR$* < @ $- . UUCP >		$2 ! $1			convert to UUCP format
7758023SericR$* < @ $+ >			$2 ! $1			convert to UUCP format
7858023Seric
7964804Seric
8065083Sericifdef(`_MAILER_smtp_',
8165083Seric`#
8264804Seric#  envelope sender rewriting for uucp-dom mailer
8364804Seric#
8464804SericS52
8564804Seric
8664804Seric# handle error address as a special case
8764804SericR<@>				$n			errors to mailer-daemon
8864804Seric
8964804Seric# pass everything to standard SMTP mailer rewriting
9064804SericR$*				$@ $>11 $1
9164804Seric
9265083Seric#
9365083Seric#  envelope sender rewriting for uucp-uudom mailer
9465083Seric#
9565083SericS72
9664804Seric
9765083SericR$+				$: $>12 $1		uucp-ify
98*65184SericR$=w ! $+			$2			prepare for following
99*65184SericR$-.$+ ! $+			$@ $1.$2 ! $3		already got domain
100*65184SericR$+				$: $M ! $1		prepend masquerade name
101*65184SericR! $+				$: $j ! $1		in case $M undefined')
10265083Seric
10365083Seric
10451259SericPUSHDIVERT(4)
10551259Seric# resolve locally connected UUCP links
10664973SericR< @ $=Z . UUCP. > : $+		$#uucp-dom $@ $1 $: $2	@host.UUCP: ...
10764973SericR$+ < @ $=Z . UUCP. >		$#uucp-dom $@ $2 $: $1	user@host.UUCP
10865083SericR< @ $=Y . UUCP. > : $+		$#uucp-new $@ $1 $: $2	@host.UUCP: ...
10965083SericR$+ < @ $=Y . UUCP. >		$#uucp-new $@ $2 $: $1	user@host.UUCP
11065083SericR< @ $=U . UUCP. > : $+		$#uucp-old $@ $1 $: $2	@host.UUCP: ...
11165083SericR$+ < @ $=U . UUCP. >		$#uucp-old $@ $2 $: $1	user@host.UUCP
11251259SericPOPDIVERT
113