SCCS-vsn: usr.sbin/sendmail/cf/README 8.30
SCCS-vsn: usr.sbin/sendmail/cf/mailer/smtp.m4 8.16
SCCS-vsn: usr.sbin/sendmail/cf/feature/nullclient.m4 8.4
SCCS-vsn: usr.sbin/sendmail/cf/ostype/osf1.m4 8.2
SCCS-vsn: usr.sbin/sendmail/cf/ostype/ultrix4.m4 8.2
SCCS-vsn: usr.sbin/sendmail/cf/m4/cf.m4 8.5
SCCS-vsn: usr.sbin/sendmail/cf/m4/proto.m4 8.49
Eric Allman <eric@CS.Berkeley.EDU>
Eric Allman <eric@CS.Berkeley.EDU>
- @(#)README 8.29 (Berkeley) %G%
+ @(#)README 8.30 (Berkeley) %G%
This document describes the sendmail configuration files being used
This document describes the sendmail configuration files being used
-at Berkeley. These use features in the new (R8) sendmail, and although
-there is an ``OLDSENDMAIL'' mode, they haven't really been tested on
-old versions of sendmail and cannot be expected to work well.
+at Berkeley. These use features in the new (R8) sendmail; they will
+not work on other versions.
These configuration files are probably not as general as previous
versions, and don't handle as many of the weird cases automagically.
These configuration files are probably not as general as previous
versions, and don't handle as many of the weird cases automagically.
#
# %sccs.include.redist.sh%
#
#
# %sccs.include.redist.sh%
#
-ifdef(`SMTP_MAILER_FLAGS',,
- `define(`SMTP_MAILER_FLAGS',
- `ifdef(`_OLD_SENDMAIL_', `L', `')')')
+ifdef(`SMTP_MAILER_FLAGS',, `define(`SMTP_MAILER_FLAGS', `')')
define(_NULL_CLIENT_ONLY_, `1')
ifelse(_ARG_, `', `errprint(`Feature "nullclient" requires argument')',
`define(`MAIL_HUB', _ARG_)')
define(_NULL_CLIENT_ONLY_, `1')
ifelse(_ARG_, `', `errprint(`Feature "nullclient" requires argument')',
`define(`MAIL_HUB', _ARG_)')
-VERSIONID(`@(#)nullclient.m4 8.3 (Berkeley) %G%')
+VERSIONID(`@(#)nullclient.m4 8.4 (Berkeley) %G%')
PUSHDIVERT(7)
############################################
PUSHDIVERT(7)
############################################
define(`DOMAIN', `PUSHDIVERT(-1)define(`_ARG_', $2)include(../domain/$1.m4)POPDIVERT`'')
define(`FEATURE', `PUSHDIVERT(-1)define(`_ARG_', $2)include(../feature/$1.m4)POPDIVERT`'')
define(`HACK', `PUSHDIVERT(-1)define(`_ARG_', $2)include(../hack/$1.m4)POPDIVERT`'')
define(`DOMAIN', `PUSHDIVERT(-1)define(`_ARG_', $2)include(../domain/$1.m4)POPDIVERT`'')
define(`FEATURE', `PUSHDIVERT(-1)define(`_ARG_', $2)include(../feature/$1.m4)POPDIVERT`'')
define(`HACK', `PUSHDIVERT(-1)define(`_ARG_', $2)include(../hack/$1.m4)POPDIVERT`'')
-define(`OLDSENDMAIL', `define(`_OLD_SENDMAIL_', `')')
define(`VERSIONID', ``##### $1 #####'')
define(`LOCAL_RULE_0', `divert(3)')
define(`LOCAL_RULE_1',
define(`VERSIONID', ``##### $1 #####'')
define(`LOCAL_RULE_0', `divert(3)')
define(`LOCAL_RULE_1',
define(`confTRY_NULL_MX_LIST', `False')
divert(0)dnl
define(`confTRY_NULL_MX_LIST', `False')
divert(0)dnl
-VERSIONID(`@(#)cf.m4 8.4 (Berkeley) %G%')
+VERSIONID(`@(#)cf.m4 8.5 (Berkeley) %G%')
-VERSIONID(`@(#)proto.m4 8.48 (Berkeley) %G%')
+VERSIONID(`@(#)proto.m4 8.49 (Berkeley) %G%')
-ifdef(`_OLD_SENDMAIL_',
-`define(`_SET_95_', 5)dnl
-define(`_SET_96_', 6)dnl
-define(`_SET_97_', 7)dnl
-define(`_SET_98_', 8)dnl
-define(`confDOMAIN_NAME',
- `ifdef(`NEED_DOMAIN', `$w.$d', `$w')')dnl',
-`# level 5 config file format
+# level 5 config file format
-define(`_SET_95_', 95)dnl
-define(`_SET_96_', 96)dnl
-define(`_SET_97_', 97)dnl
-define(`_SET_98_', 98)dnl')
ifdef(`confSMTP_MAILER',, `define(`confSMTP_MAILER', `smtp')')dnl
ifdef(`confLOCAL_MAILER',, `define(`confLOCAL_MAILER', `local')')dnl
ifdef(`confRELAY_MAILER',,
ifdef(`confSMTP_MAILER',, `define(`confSMTP_MAILER', `smtp')')dnl
ifdef(`confLOCAL_MAILER',, `define(`confLOCAL_MAILER', `local')')dnl
ifdef(`confRELAY_MAILER',,
# a class with just dot (for identifying canonical names)
C..
# a class with just dot (for identifying canonical names)
C..
-ifdef(`_OLD_SENDMAIL_', `dnl',
-`# dequoting map
-Kdequote dequote')
+# dequoting map
+Kdequote dequote
Do`'confOPERATORS
# format of a total name
Do`'confOPERATORS
# format of a total name
-Dq`'ifdef(`confFROM_HEADER', confFROM_HEADER,
- ifdef(`_OLD_SENDMAIL_', `$g$?x ($x)$.', `$?x$x <$g>$|$g$.'))
+Dq`'ifdef(`confFROM_HEADER', confFROM_HEADER, $g$?x ($x)$.', `$?x$x <$g>$|$g$.)
include(`../m4/version.m4')
###############
include(`../m4/version.m4')
###############
R@ $+ , $+ @ $1 : $2 change all "," to ":"
# localize and dispose of route-based addresses
R@ $+ , $+ @ $1 : $2 change all "," to ":"
# localize and dispose of route-based addresses
-R@ $+ : $+ $@ $>_SET_96_ < @$1 > : $2 handle <route-addr>
+R@ $+ : $+ $@ $>96 < @$1 > : $2 handle <route-addr>
# find focus for list syntax
# find focus for list syntax
-R $+ : $* ; @ $+ $@ $>_SET_96_ $1 : $2 ; < @ $3 > list syntax
+R $+ : $* ; @ $+ $@ $>96 $1 : $2 ; < @ $3 > list syntax
R $+ : $* ; $@ $1 : $2; list syntax
# find focus for @ syntax addresses
R$+ @ $+ $: $1 < @ $2 > focus on domain
R$+ < $+ @ $+ > $1 $2 < @ $3 > move gaze right
R $+ : $* ; $@ $1 : $2; list syntax
# find focus for @ syntax addresses
R$+ @ $+ $: $1 < @ $2 > focus on domain
R$+ < $+ @ $+ > $1 $2 < @ $3 > move gaze right
-R$+ < @ $+ > $@ $>_SET_96_ $1 < @ $2 > already canonical
+R$+ < @ $+ > $@ $>96 $1 < @ $2 > already canonical
# do some sanity checking
R$* < @ $* : $* > $* $1 < @ $2 $3 > $4 nix colons in addrs
ifdef(`_NO_UUCP_', `dnl',
`# convert old-style addresses to a domain-based address
# do some sanity checking
R$* < @ $* : $* > $* $1 < @ $2 $3 > $4 nix colons in addrs
ifdef(`_NO_UUCP_', `dnl',
`# convert old-style addresses to a domain-based address
-R$- ! $+ $@ $>_SET_96_ $2 < @ $1 .UUCP > resolve uucp names
-R$+ . $- ! $+ $@ $>_SET_96_ $3 < @ $1 . $2 > domain uucps
-R$+ ! $+ $@ $>_SET_96_ $2 < @ $1 .UUCP > uucp subdomains')
+R$- ! $+ $@ $>96 $2 < @ $1 .UUCP > resolve uucp names
+R$+ . $- ! $+ $@ $>96 $3 < @ $1 . $2 > domain uucps
+R$+ ! $+ $@ $>96 $2 < @ $1 .UUCP > uucp subdomains')
# if we have % signs, take the rightmost one
R$* % $* $1 @ $2 First make them all @s.
R$* @ $* @ $* $1 % $2 @ $3 Undo all but the last.
# if we have % signs, take the rightmost one
R$* % $* $1 @ $2 First make them all @s.
R$* @ $* @ $* $1 % $2 @ $3 Undo all but the last.
-R$* @ $* $@ $>_SET_96_ $1 < @ $2 > Insert < > and finish
+R$* @ $* $@ $>96 $1 < @ $2 > Insert < > and finish
# else we must be a local name
################################################
# else we must be a local name
################################################
-### Ruleset _SET_96_ -- bottom half of ruleset 3 ###
+### Ruleset 96 -- bottom half of ruleset 3 ###
################################################
# At this point, everything should be in a "local_part<@domain>extra" format.
################################################
# At this point, everything should be in a "local_part<@domain>extra" format.
# handle special cases for local names
R$* < @ localhost > $* $: $1 < @ $j . > $2 no domain at all
# handle special cases for local names
R$* < @ localhost > $* $: $1 < @ $j . > $2 no domain at all
# try UUCP traffic as a local address
R$* < @ $+ . UUCP > $* $: $1 < @ $[ $2 $] . UUCP . > $3
# try UUCP traffic as a local address
R$* < @ $+ . UUCP > $* $: $1 < @ $[ $2 $] . UUCP . > $3
-ifdef(`_OLD_SENDMAIL_',
-`R$* < @ $+ . $+ . UUCP . > $* $@ $1 < @ $2 . $3 . > $4',
-`R$* < @ $+ . . UUCP . > $* $@ $1 < @ $2 . > $3')')
+R$* < @ $+ . . UUCP . > $* $@ $1 < @ $2 . > $3')
')
ifdef(`_NO_CANONIFY_', `dnl',
`# pass to name server to make hostname canonical
')
ifdef(`_NO_CANONIFY_', `dnl',
`# pass to name server to make hostname canonical
##############################################################
##############################################################
-### Ruleset _SET_97_ -- recanonicalize and call ruleset zero ###
+### Ruleset 97 -- recanonicalize and call ruleset zero ###
### (used for recursive calls) ###
##############################################################
### (used for recursive calls) ###
##############################################################
R$* $: $>3 $1
R$* $@ $>0 $1
R$* $: $>3 $1
R$* $@ $>0 $1
ifdef(`_MAILER_smtp_',
`# handle numeric address spec
ifdef(`_MAILER_smtp_',
`# handle numeric address spec
-R$* < @ [ $+ ] > $* $: $>_SET_98_ $1 < @ [ $2 ] > $3 numeric internet spec
+R$* < @ [ $+ ] > $* $: $>98 $1 < @ [ $2 ] > $3 numeric internet spec
R$* < @ [ $+ ] > $* $#_SMTP_ $@ [$2] $: $1 < @ [$2] > $3 still numeric: send',
`dnl')
# now delete the local info -- note $=O to find characters that cause forwarding
R$* < @ [ $+ ] > $* $#_SMTP_ $@ [$2] $: $1 < @ [$2] > $3 still numeric: send',
`dnl')
# now delete the local info -- note $=O to find characters that cause forwarding
-R$* < @ > $* $@ $>_SET_97_ $1 user@ => user
-R< @ $=w . > : $* $@ $>_SET_97_ $2 @here:... -> ...
-R$* $=O $* < @ $=w . > $@ $>_SET_97_ $1 $2 $3 ...@here -> ...
+R$* < @ > $* $@ $>97 $1 user@ => user
+R< @ $=w . > : $* $@ $>97 $2 @here:... -> ...
+R$* $=O $* < @ $=w . > $@ $>97 $1 $2 $3 ...@here -> ...
# short circuit local delivery so forwarded email works
R$* < @ $=w . > $: < $R @ $H > $1 < @ $2 . > if both relay & hub ...
# short circuit local delivery so forwarded email works
R$* < @ $=w . > $: < $R @ $H > $1 < @ $2 . > if both relay & hub ...
`# figure out what should stay in our local mail system
R$* < @ $* > $* $#smtp $@ $2 $: $1 @ $2 $3 user@host.domain')')
# pass names that still have a host to a smarthost (if defined)
`# figure out what should stay in our local mail system
R$* < @ $* > $* $#smtp $@ $2 $: $1 @ $2 $3 user@host.domain')')
# pass names that still have a host to a smarthost (if defined)
-R$* < @ $* > $* $: $>_SET_95_ < $S > $1 < @ $2 > $3 glue on smarthost name
+R$* < @ $* > $* $: $>95 < $S > $1 < @ $2 > $3 glue on smarthost name
# deal with other remote names
ifdef(`_MAILER_smtp_',
`R$* < @$* > $* $#_SMTP_ $@ $2 $: $1 < @ $2 > $3 user@host.domain',
`R$* < @$* > $* $#error $@NOHOST $: Unrecognized host name $2')
# deal with other remote names
ifdef(`_MAILER_smtp_',
`R$* < @$* > $* $#_SMTP_ $@ $2 $: $1 < @ $2 > $3 user@host.domain',
`R$* < @$* > $* $#error $@NOHOST $: Unrecognized host name $2')
-ifdef(`_OLD_SENDMAIL_',
-`# forward remaining names to local relay, if any
-R$=L $#_LOCAL_ $: $1 special local names
-R$+ $: $>_SET_95_ < $R > $1 try relay
-R$+ $: $>_SET_95_ < $H > $1 try hub
-R$+ $#_LOCAL_ $: $1 no relay or hub: local',
-
-`# if this is quoted, strip the quotes and try again
+# if this is quoted, strip the quotes and try again
R$+ $: $(dequote $1 $) strip quotes
R$+ $: $(dequote $1 $) strip quotes
-R$+ $=O $+ $@ $>_SET_97_ $1 $2 $3 try again
+R$+ $=O $+ $@ $>97 $1 $2 $3 try again
# handle locally delivered names
R$=L $: $>_SET_95_ < $H > $1 special local names
# handle locally delivered names
R$=L $: $>_SET_95_ < $H > $1 special local names
`dnl')
###################################################################
`dnl')
###################################################################
-### Ruleset _SET_95_ -- canonify mailer:host syntax to triple ###
+### Ruleset 95 -- canonify mailer:host syntax to triple ###
###################################################################
###################################################################
R< > $* $@ $1 strip off null relay
R< $- : $+ > $* $# $1 $@ $2 $: $3 try qualified mailer
R< $=w > $* $@ $2 delete local host
R< $+ > $* $#_RELAY_ $@ $1 $: $2 use unqualified mailer
###################################################################
R< > $* $@ $1 strip off null relay
R< $- : $+ > $* $# $1 $@ $2 $: $3 try qualified mailer
R< $=w > $* $@ $2 delete local host
R< $+ > $* $#_RELAY_ $@ $1 $: $2 use unqualified mailer
###################################################################
-### Ruleset _SET_98_ -- local part of ruleset zero (can be null) ###
+### Ruleset 98 -- local part of ruleset zero (can be null) ###
###################################################################
###################################################################
undivert(3)dnl
#\f
######################################################################
undivert(3)dnl
#\f
######################################################################
#
# %sccs.include.redist.sh%
#
#
# %sccs.include.redist.sh%
#
-ifdef(`SMTP_MAILER_FLAGS',,
- `define(`SMTP_MAILER_FLAGS',
- `ifdef(`_OLD_SENDMAIL_', `L', `')')')
+ifdef(`SMTP_MAILER_FLAGS',, `define(`SMTP_MAILER_FLAGS', `')')
POPDIVERT
#####################################
### SMTP Mailer specification ###
#####################################
POPDIVERT
#####################################
### SMTP Mailer specification ###
#####################################
-VERSIONID(`@(#)smtp.m4 8.15 (Berkeley) %G%')
+VERSIONID(`@(#)smtp.m4 8.16 (Berkeley) %G%')
Msmtp, P=[IPC], F=CONCAT(mDFMuX, SMTP_MAILER_FLAGS), S=11/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), E=\r\n,
Msmtp, P=[IPC], F=CONCAT(mDFMuX, SMTP_MAILER_FLAGS), S=11/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), E=\r\n,
- ifdef(`_OLD_SENDMAIL_',, `L=990, ')ifdef(`SMTP_MAILER_MAX', `M=SMTP_MAILER_MAX, ')A=IPC $h
+ L=990, ifdef(`SMTP_MAILER_MAX', `M=SMTP_MAILER_MAX, ')A=IPC $h
Mesmtp, P=[IPC], F=CONCAT(mDFMuXa, SMTP_MAILER_FLAGS), S=11/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), E=\r\n,
Mesmtp, P=[IPC], F=CONCAT(mDFMuXa, SMTP_MAILER_FLAGS), S=11/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), E=\r\n,
- ifdef(`_OLD_SENDMAIL_',, `L=990, ')ifdef(`SMTP_MAILER_MAX', `M=SMTP_MAILER_MAX, ')A=IPC $h
+ L=990, ifdef(`SMTP_MAILER_MAX', `M=SMTP_MAILER_MAX, ')A=IPC $h
Mrelay, P=[IPC], F=CONCAT(mDFMuXa, SMTP_MAILER_FLAGS), S=11/31, R=61, E=\r\n,
Mrelay, P=[IPC], F=CONCAT(mDFMuXa, SMTP_MAILER_FLAGS), S=11/31, R=61, E=\r\n,
- ifdef(`_OLD_SENDMAIL_',, `L=2040, ')A=IPC $h
#
# envelope sender and masquerading recipient rewriting
#
# envelope sender and masquerading recipient rewriting
-VERSIONID(`@(#)osf1.m4 8.1 (Berkeley) %G%')
-ifdef(`_OLD_SENDMAIL_', `define(`NEED_DOMAIN', `')')dnl
+VERSIONID(`@(#)osf1.m4 8.2 (Berkeley) %G%')
define(`ALIAS_FILE', /usr/adm/sendmail/aliases)dnl
define(`STATUS_FILE', /usr/adm/sendmail/sendmail.st)dnl
define(`HELP_FILE', /usr/share/lib/sendmail.hf)dnl
define(`ALIAS_FILE', /usr/adm/sendmail/aliases)dnl
define(`STATUS_FILE', /usr/adm/sendmail/sendmail.st)dnl
define(`HELP_FILE', /usr/share/lib/sendmail.hf)dnl
-VERSIONID(`@(#)ultrix4.m4 8.1 (Berkeley) %G%')
-ifdef(`_OLD_SENDMAIL_', `define(`NEED_DOMAIN', `')')dnl
+VERSIONID(`@(#)ultrix4.m4 8.2 (Berkeley) %G%')