v08i071: Smail, release 2.3, Part05/05

sources-request at mirror.UUCP sources-request at mirror.UUCP
Wed Feb 18 11:44:43 AEST 1987


Submitted by:  Larry Auton <lda at clyde.att.com>
Mod.sources: Volume 8, Issue 71
Archive-name: smail2/Part05

[  Anyone for writing the .cf file into EASE?  --r$  ]

#! /bin/sh
# This is a shell archive.  Remove anything before this line,
# then unpack it by saving it in a file and typing "sh file".
# If all goes well, you will see the message "End of shell archive."
# Contents:  src/template.cf
# Wrapped by rs at mirror on Mon Feb  9 17:10:13 1987
PATH=/bin:/usr/bin:/usr/ucb; export PATH
echo shar: extracting "'src/template.cf'" '(8397 characters)'
if test -f 'src/template.cf' ; then 
  echo shar: will not over-write existing file "'src/template.cf'"
else
sed 's/^X//' >src/template.cf <<'@//E*O*F src/template.cf//'
X############################################################
X#
X#	SENDMAIL CONFIGURATION FILE
X#
X#	supports internet style addressing
X#	over UUCP and ethernet links.
X#
X#	A product of the UUCP Project.
X#
X############################################################
X
X
X############################################################
X#
X#  Local configuration options - HINTS
X#
X# Host name and domain name macros.
X#
X#	Dw sets $w
X#	DD sets $D
X#	CD sets $=D
X#
X# $D and $=D list all domains in which this host sits.
X# $D goes into outbound addresses, i.e. "user@$w.$D".
X# $A is another domain for which this host is 'authoritative'
X# it will will be turned into $D.
X
XCF_HOST
XCF_DOMAIN
XCF_AUTHORITY
XCF_DCLASS
X
X# Preemptive ether connections.  We prefer these connections 
X# over both designated transport mechanisms and the general depository.
X# You can add more classes (here and in S0).
X
X# /etc/hosts.smtp might be a link to /etc/hosts
X#
XCF_SMTP
X
X# Mock top-level domain names.  These name designate a transport mechanism
X# and appear internally only, set in S3, used in S0, and removed in S4 and
X# (possibly) the ruleset for the particular mailer.  
X
XCTETHER UUX
X
X# Relay host.  Used at the end of S0 as the general depository for 
X# addresses which didn't resolve locally.  
X
XDRrelay
X
X#
X#  End Local configuration options
X#
X############################################################
X
X############################################################
X#
X#	General configuration information
X#
X############################################################
X
XDVsmail2.2/CF_DATE
X
X##########################
X#     Special macros     #
X##########################
X
X# official hostname
XDj$w.$D
X# my name
XDnMAILER-DAEMON
X# UNIX header format
XDlFrom $g  $d
X# delimiter (operator) characters
XDo.:%@!^=/[]
X# format of a total name
XDq$g$?x ($x)$.
X# SMTP login message
XDe$j Sendmail $v/$V ready at $b
X
X
X###################
X#     Options     #
X###################
X
X# location of alias file
XOA/usr/lib/aliases
X# default delivery mode (deliver in background)
XOdbackground
X# (don't) connect to "expensive" mailers
X#Oc
X# temporary file mode
XOF0644
X# default GID
XOg1
X# location of help file
XOH/usr/lib/sendmail.hf
X# log level
XOL9
X# default messages to old style
XOo
X# queue directory
XOQ/usr/spool/mqueue
X# read timeout -- violates protocols
XOr2h
X# status file
XOS/usr/lib/sendmail.st
X# queue up everything before starting transmission
XOs
X# default timeout interval
XOT3d
X# time zone names (V6 only)
XOtPST,PDT
X# default UID
XOu1
X# wizard's password
XOWvoidpasswords
X
X###############################
X#     Message precedences     #
X###############################
X
XPfirst-class=0
XPspecial-delivery=100
XPjunk=-100
X
X#########################
X#     Trusted users     #
X#########################
X
XTroot
XTdaemon
XTuucp
XTnetwork
X
X#############################
X#     Format of headers     #
X#############################
X
X#H?P?Return-Path: <$g>
XHReceived: $?sfrom $s 
X	$.by $j ($v/$V)
X	id $i; $b
XH?D?Resent-Date: $a
XH?D?Date: $a
XH?F?Resent-From: $q
XH?F?From: $q
XH?x?Full-Name: $x
XHSubject:
X# HPosted-Date: $a
X# H?l?Received-Date: $b
XH?M?Resent-Message-Id: <$t.$i@$j>
XH?M?Message-Id: <$t.$i@$j>
X
X############################################################
X#
X#		REWRITING RULES
X#
X
X
X###########################
X#			  #
X#  Name Canonicalization  #
X#			  #
X###########################
XS3
X
X# basic textual canonicalization
XR<>			$@@				turn into magic token
XR$*<$+>$*		$2				basic RFC821/822 parsing
XR$+ at $+		$1@$2				"at" -> "@" for RFC 822
XR$*<$*>$*		$1$2$3				in case recursive
X
X# handle route-addr <@a, at b, at c:user at d> 
XR@$+,$+			@$1:$2				change all "," to ":"
XR@$+:$+			$@<@$1>:$2			handle <route-addr>
XR$+:$*;@$+		$@$1:$2;@$3			list syntax
X
X# Rewrite address into a domain-based address.  Any special mock domain names 
X# (like UUX) should be defined on the CT line and removed (if necessary) 
X# in S4.  You can use them in S0 for designated transport mechanisms.
X
X# Delimiters with precedence over @.  Add yours here.
X
X# The @ delimiter.  Leave this alone.
XR$+@$+			$:$1<@$2>			focus on domain
XR$+<$+@$+>		$1$2<@$3>			move gaze right
XR$+<@$+>		$@$1<@$2>			already canonical
X
X# Delimiters with precedence below @.  Add yours here.
XR$+^$+			$1!$2				convert ^ to !
XR$-!$+			$@$2<@$1.UUX>			resolve uucp names
XR$+.!$+			$@$2<@$1>			domain.!host
XR$+!$+			$@$2<@$1>			domain!host
X
X# % is a low precedence @.
XR$*%$*			$@$>3$1@$2			%->@ and retry
X
X############################################################
X#
X#    		RULESET ZERO PREAMBLE
X#
X############################################################
X
XS0
X
X# first make canonical
XR$*<$*>$*		$1$2$3				defocus
XR$+			$:$>3$1				make canonical
X
X# handle special cases.....
XR@			$#local$:MAILER-DAEMON		handle <> form
XR$*<@[$+]>$*		$#ether$@[$2]$:$1@[$2]$3	numeric internet spec
X
X# strip local stuff
XR$*<@$-.$w.$D>$*	$1<@$2>$3			thishost.mydom
XCF_GATEWAYR$*<@$-.$D>$*	$1<@$2>$3			mydom
XR$*<@$-.$w.$=D>$*	$1<@$2>$4			thishost.anydom
XR$*<@$-.$w.$A>$*	$1<@$2>$3			thishost.anotherdom
XR$*<@$-.$A>$*		$1<@$2>$3			anotherdom
XR$*<@$-.$w.$=T>$*	$1<@$2>$4			thishost.mockdom
XCF_GATEWAYR$*<$*$w>$*	$1<$2>$3			thishost
XR$*<$*.>$*		$1<$2>$3			drop trailing dot
XR<@>:$+			$@$>0$1				strip null route, retry
XR$+<@>			$@$>0$1				strip null addr, retry
X
X
X###############################################
X#    Machine dependent part of ruleset zero   #
X###############################################
X
X# Preemption: for a host on a known link turn the domain spec into a
X# mock domain indicating the link.  One set of these rules for each of 
X# the F classes listed in the local configuration options.
X
XR$*<$*$=E.$D>$*			$:$1<$2$3.ETHER>$4	etherhost.mydomain
XR$*<$*$=E.$=D>$*		$:$1<$2$3.ETHER>$5	etherhost.anydomain
XR$*<$*$=E.$A>$*			$:$1<$2$3.ETHER>$4	etherhost.anotherdomain
XR$*<$*$=E.$=T>$*		$:$1<$2$3.ETHER>$5	etherhost.mock-domain
XR$*<$*$=E>$*			$:$1<$2$3.ETHER>$4	etherhost
X
X# Designated delivery: use the indicated transport mechanism.  One of
X# these rules for each of the mock domains defined in $=T.  You can
X# remove these if you just want general disposition.  HINTS.
X
X# Designated delivery:
XR$*<@$=U.UUX>$*		$#uux$@$2$:$1$3			known uucphost
XR$*<@$=E$+.ETHER>$*	$#ether$@$2$:$1@$2$4		known etherhost
XR$*<@$+.ETHER>$*	$#ether$@$2$:$1@$2$3		etherhost
X
X# throw out mock domain name now
XR$*<$*.$=T>$*		$1<$2>$4
X
X# General disposition of remote mail (comment out all but one).  You
X# might add to this list, if you have other "smarter" mailers.  HINTS.
X
XR$*<@$->:$+		$#uux$@$2$:$1$3			forward to $2
XR$*<@$*>$*		$#uux$@$2$:$1$3			hand to uucp
X#R$*<@$*>$*		$#uux$@$R$:$1@$2$3		hand to uucp relay
X#R$*<@$*>$*		$#ether$@$R$:$1@$2$3		hand to ether relay
X#R$*<$*>$*		$#error$:unknown address $1$2$3	don't hand anywhere
X
X# local delivery
XR$+			$#local$:$1			user
X
X############################################################
X#
X# 		Local and Program Mailer specification
X#
X############################################################
X
XCF_SVMAILMlocal, P=CF_LOCALMAIL, F=lsDFMhumSU, S=10, R=20, A=rmail $u
XCF_BSMAILMlocal, P=CF_LOCALMAIL, F=rlsDFMmn, S=10, R=20, A=mail -d $u
XMprog,	P=/bin/sh,   F=lsDFMe,   S=10, R=20, A=sh -c $u
X
XS10
XR@			MAILER-DAEMON	errors to mailer-daemon
XCF_HIDDENHOSTSR$+<@$+.$j>$*		$1<@$j>$3	hide anydom.$j under $j
X
XS20
X
X############################################################
X#
X#    		UUCP Mailer specification
X#
X############################################################
X
XMuux,	P=/bin/smail, F=sDFMhum, S=14, R=24, M=100000,
X	A=smail -vH$j $h!$u
X
XS14
XR$+<@$=E>		$1			user at etherhost -> user
XR$*<@$+>$*		$@$1<@$2>$3		already ok
XCF_HIDDENHOSTSR$+<@$+.$j>$*		$1<@$j>$3		hide anydom.$j under $j
XR$+			$@$1<@$j>		add our full address
X
XS24
X
X############################################################
X#
X#    		SMTP ethernet mailer
X#
X############################################################
X
XMether,	P=[IPC], F=msDFMuCXP, S=11, R=21, A=IPC $h
X
XS11
XR$*<@$+>$*		$@$1<@$2>$3		already ok
XR$+			$@$1<@$w>		add our hostname
X
XS21
X
X#################################
X#  Final Output Post-rewriting  #
X#################################
X
X# This rewrites the internal $=T mock domains into their external form.
X# The default is to replace the mock domain name with $D.
X# The last two lines are stock.
X
XS4
XR@			$@				handle <> error addr
XR$+<@$-.UUX>		$2!$1				u at host.UUX => host!u
XR$*<$*$=T>$*		$:$1<$2$D>$4			change local info
XR$*<$+>$*		$1$2$3				defocus
XR@$+:$+:$+		$@@$1,$2:$3			<route-addr> canonical
@//E*O*F src/template.cf//
if test 8397 -ne "`wc -c <'src/template.cf'`"; then
    echo shar: error transmitting "'src/template.cf'" '(should have been 8397 characters)'
fi
fi # end of overwriting check
echo shar: "End of shell archive."
exit 0



More information about the Mod.sources mailing list