summaryrefslogtreecommitdiffstats
path: root/usr.sbin/sendmail/cf/m4/proto.m4
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1997-01-27 07:37:00 +0000
committerpeter <peter@FreeBSD.org>1997-01-27 07:37:00 +0000
commit134f8fd9fc36c24fc03822a8eb5c47c0f825117a (patch)
treed0aee1db15e106c7e9da86c36185fe2357abaeb4 /usr.sbin/sendmail/cf/m4/proto.m4
parentfe7a1e47bd429b92884cb10fd00713b54d052423 (diff)
downloadFreeBSD-src-134f8fd9fc36c24fc03822a8eb5c47c0f825117a.zip
FreeBSD-src-134f8fd9fc36c24fc03822a8eb5c47c0f825117a.tar.gz
Import sendmail 8.8.5. See RELEASE_NOTES for changes.
Obtained from: ftp.sendmail.org:/pub/sendmail
Diffstat (limited to 'usr.sbin/sendmail/cf/m4/proto.m4')
-rw-r--r--usr.sbin/sendmail/cf/m4/proto.m443
1 files changed, 32 insertions, 11 deletions
diff --git a/usr.sbin/sendmail/cf/m4/proto.m4 b/usr.sbin/sendmail/cf/m4/proto.m4
index 676aa35..fc09fe0 100644
--- a/usr.sbin/sendmail/cf/m4/proto.m4
+++ b/usr.sbin/sendmail/cf/m4/proto.m4
@@ -34,7 +34,7 @@ divert(-1)
#
divert(0)
-VERSIONID(`@(#)proto.m4 8.136 (Berkeley) 11/24/96')
+VERSIONID(`@(#)proto.m4 8.139 (Berkeley) 12/31/96')
MAILER(local)dnl
@@ -171,17 +171,18 @@ DR`'ifdef(`LOCAL_RELAY', LOCAL_RELAY)
# who gets all local email traffic ($R has precedence for unqualified names)
DH`'ifdef(`MAIL_HUB', MAIL_HUB)
-# class L: names that should be delivered locally, even if we have a relay
+# dequoting map
+Kdequote dequote
+
+divert(0)dnl # end of nullclient diversion
# class E: names that should be exposed as from this host, even if we masquerade
+ifdef(`_NULL_CLIENT_ONLY_', `#',
+`# class L: names that should be delivered locally, even if we have a relay
# class M: domains that should be converted to $M
#CL root
-CE root
+')CE root
undivert(5)dnl
-# dequoting map
-Kdequote dequote
-
-divert(0)dnl # end of nullclient diversion
# who I masquerade as (null for no masquerading) (see also $=M)
DM`'ifdef(`MASQUERADE_NAME', MASQUERADE_NAME)
@@ -685,7 +686,7 @@ define(`X', ifdef(`VIRTUSER_TABLE', `', `#'))dnl
X`'R$+ < @ $=w . > $: < $(virtuser $1 @ $2 $@ $1 $: @ $) > $1 < @ $2 . >
X`'R< @ > $+ < @ $+ . > $: < $(virtuser @ $2 $@ $1 $: @ $) > $1 < @ $2 . >
X`'R< @ > $+ $: $1
-X`'R< error : $- $+ > $* $#error $@ $1 $: $2
+X`'R< error : $- $+ > $* $#error $@ $( dequote $1 $) $: $2
X`'R< $+ > $+ < @ $+ > $: $>97 $1
undefine(`X')dnl
@@ -798,6 +799,8 @@ R< > $+ + $* $#_LOCAL_ $@ $2 $: $1
R< > $+ $: < $H > $1 try hub
R< > $+ $: < $R > $1 try relay
R< > $+ $@ $1 nope, give up
+R< local : $* > $* $: $>95 < local : $1 > $2 no host extension
+R< error : $* > $* $: $>95 < error : $1 > $2 no host extension
R< $- : $+ > $+ $: $>95 < $1 : $2 > $3 < @ $2 >
R< $+ > $+ $@ $>95 < $1 > $2 < @ $1 >
@@ -821,15 +824,33 @@ undefine(`X')dnl
S95
R< > $* $@ $1 strip off null relay
-R< error : $- $+ > $* $#error $@ $1 $: $2 special case errors
-R< local : > $* < @ $* > $#local $@ $1@$2 $: $1 no host: use old user
-R< local : $+ > $* <@ $* . > $* $#local $@ $2@$3 $: $1 special case local
+R< error : $- $+ > $* $#error $@ $( dequote $1 $) $: $2
+R< local : $* > $* $>CanonLocal < $1 > $2
R< $- : $+ @ $+ > $*<$*>$* $# $1 $@ $3 $: $2<@$3> use literal user
R< $- : $+ > $* $# $1 $@ $2 $: $3 try qualified mailer
R< $=w > $* $@ $2 delete local host
R< $+ > $* $#_RELAY_ $@ $1 $: $2 use unqualified mailer
###################################################################
+### Ruleset CanonLocal -- canonify local: syntax ###
+###################################################################
+
+SCanonLocal
+# strip trailing dot from any host name that may appear
+R< $* > $* < @ $* . > $: < $1 > $2 < @ $3 >
+
+# handle local: syntax -- use old user, either with or without host
+R< > $* < @ $* > $* $#local $@ $1@$2 $: $1
+R< > $+ $#local $@ $1 $: $1
+
+# handle local:user@host syntax -- ignore host part
+R< $+ @ $+ > $* $: < $1 > $3
+
+# handle local:user syntax
+R< $+ > $* <@ $* > $* $#local $@ $2@$3 $: $1
+R< $+ > $* $#local $@ $2 $: $1
+
+###################################################################
### Ruleset 93 -- convert header names to masqueraded form ###
###################################################################
OpenPOWER on IntegriCloud