BSD 4_1c_2 release
[unix-history] / usr / src / usr.lib / sendmail / cf / monet.3.5
############################################################
############################################################
#####
##### SENDMAIL CONFIGURATION FILE
#####
##### @(#)monet.mc 3.2 10/7/82
#####
############################################################
############################################################
############################################################
### local info
############################################################
# internet hostname
DHUCBMONET
CHucbmonet monet
#################################################
#
# General configuration information
#
# @(#)csbase.m4 3.9 2/16/83
#
#################################################
######################
# General Macros #
######################
# our arpanet gateway
DABerkeley
CABerkeley UCB ucbc70 c70 UCB-C70 u UCB-VAX ucbvax
# local domain names
DDBERKELEY
CDBERKELEY UCB ucbc70 c70 ucb-c70 u UCB-VAX ucbvax
# major relay host
DRUCBVAX
CRucbvax vax k
# known SMTP/ethernet hosts (this domain only) -- only $R need be complete
CSucbarpa arpa
CSucbcad cad cad-a
CSucbcalder calder
CSucbdali dali
CSucbdegas degas
# CSucbear ear
CSucbernie ernie
# CSucbesvax esvax
# CSucbingres ingres
CSucbkim kim
CSucbmatisse matisse
CSucbmedea medea
CSucbmiro miro
CSucbmonet monet
# CSucboz oz
CSucbic ic ucbic-ec ic-ec cad-b cad-ic
CSucbicw icw ucbicw-ec icw-ec cad-c cad-icw
CSucbvax
############################################################
#
# General configuration information
#
# This information is basically just "boiler-plate"; it must be
# there, but is essentially constant.
#
# Information in this file should be independent of location --
# i.e., although there are some policy decisions made, they are
# not specific to Berkeley per se.
#
# @(#)base.m4 3.43 2/16/83
#
############################################################
# @(#)version.m4 3.5 2/17/83
DV3.5
##########################
### Special macros ###
##########################
# my name
DnMAILER-DAEMON
# UNIX header format
DlFrom $g $d
# delimiter (operator) characters
Do.:%@!^=/[]
# format of a total name
Dq$g$?x ($x)$.
# my official hostname
Dj$H.ARPA
# SMTP login message
De$j Sendmail $v/$V ready at $b
###################
### Options ###
###################
# location of alias file
OA/usr/lib/aliases
# default delivery mode (deliver in background)
Odbackground
# (don't) connect to "expensive" mailers
#Oc
# temporary file mode
OF0644
# default GID
Og1
# location of help file
OH/usr/lib/sendmail.hf
# log level
OL9
# default messages to old style
Oo
# queue directory
OQ/usr/spool/mqueue
# read timeout -- violates protocols
Or2h
# status file
OS/usr/lib/sendmail.st
# queue up everything before starting transmission
Os
# default timeout interval
OT3d
# time zone names (V6 only)
OtPST,PDT
# default UID
Ou1
# wizard's password
OWa/FjIfuGKXyc2
###############################
### Message precedences ###
###############################
Pfirst-class=0
Pspecial-delivery=100
Pjunk=-100
#########################
### Trusted users ###
#########################
Troot
Tdaemon
Tuucp
Teric
Tnetwork
#############################
### Format of headers ###
#############################
H?D?Date: $a
H?F?From: $q
H?x?Full-Name: $x
HSubject:
H?P?Return-Path: <$g>
# HPosted-Date: $a
# H?l?Received-Date: $b
H?M?Message-Id: <$t.$p@$j>
HReceived: $?sfrom $s $.by $j ($v/$V)
id $i; $b
###########################
### Rewriting rules ###
###########################
# rules marked with "*" are removed or different when 819 becomed effective
################################
# Sender Field Pre-rewriting #
################################
S1
R@ $@ handle <> error addr
R@$+ $@@$1 handle route-addr
R$+@$+@$=R $>3$1@$2 u@h@gateway -> u@h
R$-!$+@$=R $>3$1!$2 h!u@relay -> h!u
###################################
# Recipient Field Pre-rewriting #
###################################
S2
#################################
# Final Output Post-rewriting #
#################################
S4
# externalize local domain info
R$+@$*LOCAL $1@$2$D.ARPA convert local domain
# turn user@e@d@c@b@a back into @a,@b,@c,@d:user@e form
R$+@$+@$+ $:@$3:$1@$2 @d@c@b@a:u@e
R@$+@$+:$+ $:@$2:@$1:$3 @c@b@a:@d:u@e
R@$+@$+:@$+:$+ @$2:@$1,@$3:$4 @a:@b,@c,@d:u@e
R@$+:@$+:$+ @$1,@$2:$3 @a,@b,@c,@d:u@e
###########################
# Name Canonicalization #
###########################
S3
# handle "from:<>" special case
R<> $@@ turn into magic token
# basic textual canonicalization
R$*<$+>$* $2 basic RFC821/822 parsing
R$+ at $+ $1@$2 "at" -> "@" for RFC 822
# make sure <@a,@b,@c:user@d> syntax is canonical
R@$+,$+ @$1:$2 change all "," to ":"
R@$+:$+:$+ @$1,$2:$3 all but last back to ","
# convert <@a,@b,@c:user@d> syntax into user@d@c@b@a
R@$+:$+ $2,@$1 move path to RHS
R$+,@$+,@$+,@$+ $1,@$3@$2,@$4 inside out convert
R$+,@$+,@$+ $1@$3@$2 final twist
R$+,@$+ $1@$2 for u@b,@a case
# identify local domain on end of address
R$+@$+ $:$>6$1@$2 localize name
# now see if it is reasonably canonical
#R$+@$-.$+ $@$1@$2.$3 handle user@domain
# delete multiple host specs and extra net info -- dangerous business here
R$-:$-:$+ $2:$3 drop multiple old-style
R$+@$=H.LOCAL $1@$2 canonical form
R$-:$+@LOCAL $1:$2 drop @UCB on berknet
R$-:$+@$=H $1:$2 drop @local on berknet
R$-:$*;@$+ $@$1:$2;@$3 try to handle lists
R$-:$+@$+ $2@$3 drop forwarding host
R$-!$+@LOCAL $1!$2 drop @UCB on uucp
R$-!$+@$=H $1!$2 drop @local on uucp
R$+@$+@LOCAL $1@$2 drop @UCB on arpanet
R$+@$+@$=H $1@$2 drop @local on arpanet
R$+ $:$>8$1 host dependent cleanup
# the heart of canonicalization....
# (there should be a .LOCAL on the RHS of the next three lines)
R$-:$+ $2@$1 host:user
R$-.$- $2@$1 host.user
R$-.$+@LOCAL $2@$1 strip local arpa name
# now resolve some things
R$+@$+ $@$1@$2 reasonably canonical
R$+^$+ $1!$2 convert ^ to !
R$-!$+ $@$2@$1.UUCP resolve uucp names
# anything left is local
#########################################
### Strip local info from addresses ###
### (This ruleset is recursive) ###
#########################################
S9
R$+ $:$>3$1 make canonical
R$+@$*$=H.LOCAL $1@$2 user@thishost.LOCAL
R$+@$*$=H.ARPA $1@$2 user@thishost.ARPA
R$+@$*$=H.UUCP $1@$2 user@thishost.UUCP
R$+@$*$=H $1@$2 user@thishost
R$+@$+. $1@$2 for subhost.thishost
R$+@ $>9$1 strip null trash
#######################
# Rewriting rules #
#######################
##### special local conversions
S6
R$+@$*$=D $1@$2LOCAL convert local domain
R$+@$*$=D.ARPA $1@$2LOCAL
R$+@$+.UUCP.LOCAL $1@$2.UUCP make UUCP top level
R$+@$+.UUCP.ARPA $1@$2.UUCP make UUCP top level
R$+@$=C.LOCAL $1@$2.CC adjust CC hosts (ucbvax)
R$+@$=C $1@$2.CC adjust CC hosts (ucbvax)
R$+@$+.CC.LOCAL $1@$2.CC adjust CC domain
############################################################
############################################################
#####
##### Local and Program Mailer specification
#####
##### @(#)localm.m4 3.4 2/3/83
#####
############################################################
############################################################
Mlocal, P=/bin/mail, F=rlsDFMmn, S=10, R=20, A=mail -d $u
Mprog, P=/bin/csh, F=lsDFMe, S=10, R=20, A=csh -fc $u
S10
############################################################
############################################################
#####
##### Ethernet Mailer specification
#####
##### @(#)etherm.m4 3.4 2/17/83
#####
############################################################
############################################################
Mether, P=[IPC], F=msDFMueCX, S=11, R=21, A=IPC $h
S11
R$+@$+ $@$1@$2 already ok
R$+ $@$1@$H tack on our hostname
S21
############################################################
############################################################
#####
##### BASIC ETHERNET RULES
#####
##### @(#)ether.m4 3.8 1/8/83
#####
############################################################
############################################################
############################################################
############################################################
#####
##### RULESET ZERO PREAMBLE
#####
##### The beginning of ruleset zero is constant through all
##### configurations.
#####
##### @(#)zerobase.m4 3.2 1/15/83
#####
############################################################
############################################################
S0
R@ $#local$:root handle <> form
R$+@[$+] $#tcp$@[$2]$:$1@[$2] numeric internet spec
R$+@LOCAL $1@$R domain gateway
# turn addresses in other formats into local format
R$+@$*$=S.$=D $1@$2$3 user@etherhost.Berkeley
R$+@$+ $:$>9$1@$2 strip local info
################################################
### Machine dependent part of ruleset zero ###
################################################
# resolve names that can go via the ethernet
R$+@$*$=S $#ether$@$3$:$1@$2$3 user@etherhost
# other non-local names will be kicked upstairs
R$+@$+ $#ether$@$R$:$1@$2 user@some.where
# remaining names must be local
R$+ $#local$:$1 everything else