############################################################ ############################################################ ##### ##### SENDMAIL CONFIGURATION FILE ##### ##### @(#)monet.mc 4.1 7/25/83 ##### ############################################################ ############################################################ ############################################################ ### local info ############################################################ # internet hostname Cwucbmonet monet ################################################# # # General configuration information # # @(#)csbase.m4 4.3 8/21/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 # my official hostname Dj$w.ARPA # known SMTP/ethernet hosts (this domain only) -- only $R need be complete CSucbarpa arpa CSucbbach bach ucbstatvax statvax CSucbbrahms brahms mathstat CSucbcad cad cad-a CSucbcalder calder CSucbcartan cartan CSucbcory cory ucbokeeffe okeeffe CSucbdali dali CSucbdegas degas # CSucbear ear CSucbernie ernie CSucbesvax esvax CSucbic ic ucbic-ec ic-ec cad-b cad-ic CSucbicw icw ucbicw-ec icw-ec cad-c cad-icw CSucbingres ingres CSucbkim kim CSucbmatisse matisse CSucbmedea medea CSucbmerlin merlin CSucbmiro miro CSucbmonet monet CSucboz oz CSucbvax CSucbweyl weyl # known top-level domains CTLOCAL ARPA UUCP BITNET CC ############################################################ # # 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 4.3 8/30/83 # ############################################################ # @(#)version.m4 4.7 8/31/83 DV4.7 ########################## ### 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)$. # SMTP login message De$j Sendmail $v/$V ready at $b # forwarding host -- redefine this if you can't talk to the relay directly DF$R ################### ### 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?P?Return-Path: <$g> HReceived: $?sfrom $s $.by $j ($v/$V) id $i; $b H?D?Resent-Date: $a H?D?Date: $a H?F?Resent-From: $q H?F?From: $q H?x?Full-Name: $x HSubject: # HPosted-Date: $a # H?l?Received-Date: $b H?M?Resent-Message-Id: <$t.$i@$j> H?M?Message-Id: <$t.$i@$j> ########################### ### Rewriting rules ### ########################### ################################ # Sender Field Pre-rewriting # ################################ S1 #R$*<$*>$* $1$2$3 defocus ################################### # Recipient Field Pre-rewriting # ################################### S2 #R$*<$*>$* $1$2$3 defocus ################################# # Final Output Post-rewriting # ################################# S4 R@ $@ handle <> error addr # externalize local domain info R$*<$*LOCAL>$* $1<$2$D>$3 change local info R$*<$+>$* $1$2$3 defocus R@$+:$+:$+ $@@$1,$2:$3 <route-addr> canonical # UUCP must always be presented in old form R$+@$-.UUCP $2!$1 u@h.UUCP => h!u # delete duplicate local names -- mostly for arpaproto.mc R$+%$=w@$=w $1@$3 u%UCB@UCB => u@UCB R$+%$=w@$=w.ARPA $1@$3.ARPA u%UCB@UCB => u@UCB ########################### # 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 R$*<$*>$* $1$2$3 in case recursive # make sure <@a,@b,@c:user@d> syntax is easy to parse -- undone later R@$+,$+ @$1:$2 change all "," to ":" # localize and dispose of domain-based addresses R@$+:$+ $@$>6<@$1>:$2 handle <route-addr> # more miscellaneous cleanup R$+ $:$>8$1 host dependent cleanup R$+:$*;@$+ $@$1:$2;@$3 list syntax R$+@$+ $:$1<@$2> focus on domain R$+<$+@$+> $1$2<@$3> move gaze right R$+<@$+> $@$>6$1<@$2> already canonical # convert old-style addresses to a domain-based address R$+%$+ $@$>6$1<@$2> user%host R$-:$+ $@$>6$2<@$1> host:user R$-.$+ $@$>6$2<@$1> host.user R$+^$+ $1!$2 convert ^ to ! R$-!$+ $@$>6$2<@$1.UUCP> resolve uucp names R$-=$+ $@$>6$2<@$1.BITNET> resolve bitnet names ####################### # Rewriting rules # ####################### ##### special local conversions S6 R$*<@$*$=D>$* $1<@$2LOCAL>$4 convert local domain R$*<@$*$=D.ARPA>$* $1<@$2LOCAL>$4 R$+%$+<@LOCAL> $1<@$2.LOCAL> hack for % syntax R$*<@$+.$=T.$=T>$* $1<@$2.$3>$5 make UUCP top level R$*<@$+.$=T.$=T>$* $1<@$2.$3>$5 make UUCP top level R$*<@$*$=C.$=T>$* $1<@$2$3>$5 adjust CC hosts (ucbvax) R$*<@$*$=C>$* $1<@$2$3.CC>$4 adjust CC hosts (ucbvax) ############################################################ ############################################################ ##### ##### Local and Program Mailer specification ##### ##### @(#)localm.m4 4.1 7/25/83 ##### ############################################################ ############################################################ Mlocal, P=/bin/mail, F=rlsDFMmn, S=10, R=20, A=mail -d $u Mprog, P=/bin/sh, F=lsDFMe, S=10, R=20, A=sh -c $u S10 R@ MAILER-DAEMON errors to mailer-daemon ############################################################ ############################################################ ##### ##### Ethernet Mailer specification ##### ##### @(#)etherm.m4 4.1 7/25/83 ##### ############################################################ ############################################################ Mether, P=[IPC], F=msDFMueCX, S=11, R=21, A=IPC $h S11 R$*<@$+>$* $@$1<@$2>$3 already ok R$+ $@$1<@$w> tack on our hostname S21 ############################################################ ############################################################ ##### ##### BASIC ETHERNET RULES ##### ##### @(#)ether.m4 4.1 7/25/83 ##### ############################################################ ############################################################ ############################################################ ############################################################ ##### ##### RULESET ZERO PREAMBLE ##### ##### The beginning of ruleset zero is constant through all ##### configurations. ##### ##### @(#)zerobase.m4 4.1 7/25/83 ##### ############################################################ ############################################################ S0 # first make canonical R$*<$*>$* $1$2$3 defocus R$+ $:$>3$1 make canonical # handle special cases..... R@ $#local$:MAILER-DAEMON handle <> form R$*<@[$+]>$* $#tcp$@[$2]$:$1@[$2]$3 numeric internet spec # arrange for local names to be fully qualified R$*<$*$=S>$* $1<$2$3.LOCAL>$4 user@etherhost R$*<$*$=Z>$* $1<$2$3.LOCAL>$4 user@berkhost R$*<$+.ARPA.LOCAL>$* $1<$2.ARPA>$3 because ARPA is a host # now delete the local info R$*<$*$=w.LOCAL>$* $1<$2>$4 thishost.LOCAL R$*<$*$=w.ARPA>$* $1<$2>$4 thishost.ARPA R$*<$*$=w.UUCP>$* $1<$2>$4 thishost.UUCP R$*<$*$=w>$* $1<$2>$4 thishost R$*<$*.>$* $1<$2>$3 drop trailing dot R<@>:$* $@$>0$1 retry after route strip R$*<@> $@$>0$1 strip null trash & retry # forward around hosts with communication problems R$*<@$=F.LOCAL>$* $#ether$@$F$:$1<@$2.LOCAL>$3 reroute message ################################## # End of ruleset zero preamble # ################################## ################################################ ### Machine dependent part of ruleset zero ### ################################################ # resolve names that can go via the ethernet R$*<@$*$=S.LOCAL>$* $#ether$@$3$:$1<@$2$3.$D>$4 user@etherhost # other non-local names will be kicked upstairs R$*<@$+>$* $#ether$@$F$:$1<@$2>$3 user@some.where # remaining names must be local R$+ $#local$:$1 everything else