|
|
DataMuseum.dkPresents historical artifacts from the history of: RC9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: @ T s
Length: 10658 (0x29a2)
Types: TextFile
Notes: @(#)sendmail.rci 13.2 (RC International) 91/11/08
Names: »sendmail.cf«
└─⟦50656ff4a⟧ Bits:30010538 TX 3.1 Coldstart
└─⟦bbf173f5c⟧ »0004«
└─⟦this⟧ »./usr/lib/sendmail.cf«
############################################################ # # SENDMAIL CONFIGURATION FILE # # supports internet style addressing # over UUCP and ethernet links. # # This configuration file is based on the smail configuration # file from the UUCP project. It's intended purpose is to be # a default, simple minded configuration file for those sites # that have not yet set up smail, and it's cohorts. # # @(#)sendmail.rci 13.2 (RC International) 91/11/08 #ident @(#)default.cf 1.1 - 87/07/08 #ident @(#)sendmail.rci 1.4 - 90/11/28 # ############################################################ ############################################################ # # Local configuration options - HINTS # # Host name and domain name macros. # # Dw sets $w # DD sets $D # CD sets $=D # # This configuration file uses the uname default, unless otherwise modified. # $D and $=D list all domains in which this host sits. # $D goes into outbound addresses, i.e. "user@$w.$D". # it will will be turned into $D. # HOSTNAME needs to be modified for each site (if there is no ethernet). # If another hostname is wanted you can define $w here DwHOSTNAME # my hostnames, you can add any aliases here CwHOSTNAME # The domain your gate-way owns (administrates) DDlocal CD local uucp # Relay host. Used at the end of S0 as the general depository for # addresses which didn't resolve locally. # R is used as the ethernet relay host DRrelay # Preemptive ether connections. We prefer these connections # over both designated transport mechanisms and the general depository. # You can add more classes (here and in S0). # /etc/hosts.smtp The list of host sites using smtp (tcp/ip-ethernet) # FE/etc/hosts.smtp %s # /etc/hosts.imc.smtp The list of host sites using smtp (imc-ethernet) # FI/etc/hosts.imc.smtp %s # /usr/lib/uucp/Systems The list of host sites connected directly via uucp # FU/usr/lib/uucp/Systems %s # Mock top-level domain names. These names designate a transport mechanism # and appear internally only, set in S3, used in S0, and removed in S4 and # (possibly) the ruleset for the particular mailer. # NOT USED CT ETHER UUX IMC # # End Local configuration options # ############################################################ ############################################################ # # General configuration information # ############################################################ DV13.2 ########################## # Special macros # ########################## # official hostname Dj$w.$D # 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 ################### # Options # ################### # location of alias file OA/usr/lib/aliases # Blank substitution character for unquoted spaces in addresses OB. # (don't) connect to "expensive" mailers #Oc # default delivery mode (deliver in background) Odbackground # Error dispose modes (Print, Quit, Mailback, Write(mail), mail-Exit-ok Oewrite # 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 OWvoidpasswords ############################### # Message precedences # ############################### Pfirst-class=0 Pspecial-delivery=100 Pjunk=-100 ######################### # Trusted users # ######################### Troot Tdaemon Tuucp Tnuucp Tnetwork Tftsfts # I don't like this, could make a VOID return address ############################# # Format of headers # ############################# #H?P?Return-Path: <$g> H?R?Received: $?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 # ########################### # # # Name Canonicalization # # # ########################### S3 # basic textual canonicalization R<> $@@ turn into magic token R$*<$+>$* $2 basic RFC821/822 parsing R$+ at $+ $1@$2 "at" -> "@" for RFC 822 R$*<$*>$* $1$2$3 in case recursive # handle route-addr <@a,@b,@c:user@d> R@$+,$+ @$1:$2 change all "," to ":" R@$+:$+ $@<@$1>:$2 handle <route-addr> R$+:$*;@$+ $@$1:$2;@$3 list syntax # Rewrite address into a domain-based address. Any special mock domain names # (like UUX) should be defined on the CT line and removed (if necessary) # in S4. You can use them in S0 for designated transport mechanisms. # Delimiters with precedence over @. Add yours here. # The @ delimiter. Leave this alone. R$+@$+ $:$1<@$2> focus on domain R$+<$+@$+> $1$2<@$3> move gaze right R$+<@$+> $@$1<@$2> already canonical # Delimiters with precedence below @. Add yours here. R$+^$+ $1!$2 convert ^ to ! #R$-!$+ $@$2<@$1.UUX> resolve uucp names R$-!$+ $@$2<@$1> resolve uucp names R$+.!$+ $@$2<@$1> domain.!host R$+!$+ $@$2<@$1> domain!host # % is a low precedence @. R$*%$* $1@$2 %->@ R$*@$* $@$>3$1@$2 and retry ############################################################ # # RULESET ZERO PREAMBLE # ############################################################ S0 # first make canonical R$*<$*>$* $1$2$3 defocus R$+ $:$>3$1 make canonical # handle special cases..... R@ $#local$:MAILER-DAEMON handle <> form R$*<@[$+]>$* $#ether$@[$2]$:$1@[$2]$3 numeric internet spec # throw out mock domain (just to be safe) R$*<$*.$=T>$* $1<$2>$4 # convert local stuff R$*<@$*$=w.$D>$* $: $1<@$2$j>$4 thishost.mydom R$*<@$*$=w.$=D>$* $: $1<@$2$j>$5 thishost.anydom R$*<@$*$=w>$* $: $1<@$2$j>$4 thishost # check local R$+<@$j>$* $@$>0$1$2 strip null addr, retry R$+<@>$* $@$>0$1$2 strip null addr, retry # check route R<@$j>:$+ $@$>0$1 strip null route, retry R<@>:$+ $@$>0$1 strip null route, retry ############################################### # Machine dependent part of ruleset zero # ############################################### # Designate delivery: # for a host on a known link use the indicated transport mechanism. # One set of these rules for each of the F classes # listed in the local configuration options. # First try Ether Net Connections [tcp/ip] (fast, cheap and secure) R$*<$*$=E.$j>$* $#ether $@$3 $:$1$2$3$4 etherhost.mydomain R$*<$*$=E.$D>$* $#ether $@$3 $:$1$2$3$4 etherhost.mydomain R$*<$*$=E.$=D>$* $#ether $@$3 $:$1$2$3$5 etherhost.anydomain R$*<$*$=E>$* $#ether $@$3 $:$1$2$3$4 etherhost # Then IMC Connections (fast, cheap and not secure at all) R$*<$*$=I.$j>$* $#imc $@$3 $:$1$2$3$4 imchost.mydomain R$*<$*$=I.$D>$* $#imc $@$3 $:$1$2$3$4 imchost.mydomain R$*<$*$=I.$=D>$* $#imc $@$3 $:$1$2$3$5 imchost.anydomain R$*<$*$=I>$* $#imc $@$3 $:$1$2$3$4 imchost # Well, well, stuck to uucp (slow, expensive but secure) # Try a uucpdomain (.DOMAIN) R$*<$*.$=U.$j>$* $#smail $@$3 $:$1$2.$3$4 uucpdomain.mydomain R$*<$*.$=U.$D>$* $#smail $@$3 $:$1$2.$3$4 uucpdomain.mydomain R$*<$*.$=U.$=D>$* $#smail $@$3 $:$1$2.$3$5 uucpdomain.anydomain R$*<$*.$=U>$* $#smail $@$3 $:$1$2.$3$4 uucpdomain # No domain # Try a uucphost (HOST) R$*<$*$=U.$j>$* $#smail $@$3 $:$1$4 uucphost.mydomain R$*<$*$=U.$D>$* $#smail $@$3 $:$1$4 uucphost.mydomain R$*<$*$=U.$=D>$* $#smail $@$3 $:$1$5 uucphost.anydomain R$*<$*$=U>$* $#smail $@$3 $:$1$4 uucphost # Unknown, What do we do now? # In our domain? R$*<@$+.$j>$* $#error $: Host $2 not known, can't send to $1@$2.$j$3 R$*<$+.$j>$* $#error $: Host $2 not known, can't send to $1$2.$j$3 # See if relay (R) is a known host # is R defined, try it else return to sender R$*<@$*>$* $?R $:$R ? $1@$2$3 $| $#error $:You have no relay, can't send to $1@$2$3 $. # Are we trying a relay R$=E ? $* $#ether $@$R $:$2 hand to ehter relay R$=I ? $* $#imc $@$R $:$2 hand to imc relay R$=U ? $* $#smail $@$R $:$2 hand to uucp relay R$+ ? $* $#error $:Your relay, $R, is not known, can't send to $2 # relay not defined (and not needed) # local delivery R$+ $#local $:$1 user ############################################################ # # Local and Program Mailer specification # ############################################################ 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 #R$+<@$+.$j>$* $1<@$j>$3 hide anydom.$j under $j S20 ############################################################ # # UUCP Mailer specification # ############################################################ #Muux, P=/usr/bin/uux, F=sDFMuU, S=14, R=23, M=100000, # A=uux - $h!rmail ($u) Msmail, P=/bin/smail, F=sDFMumR, S=14, R=24, M=100000, A=smail -rH$D -h$D $h!$u S14 R$+<@$=E> $1 user@etherhost -> user R$*<@$+$j>$* $@$1<@$2$j>$3 already ok R$*<@$+$=w>$* $@$1<@$2$j>$4 add our domain R$*<@$+>$* $@$1<@$2>$3 already ok #R$+<@$+.$j>$* $1<@$j>$3 hide anydom.$j under $j R$+ $@$1<@$j> add our full address S24 R$*@$* $1%$2 @ to % for smail ############################################################ # # SMTP ethernet mailer # ############################################################ Mether, P=[IPC], F=msDFMuCXP, S=11, R=21, A=IPC $h S11 R$*<@$+>$* $@$1<@$2>$3 already ok R$+ $@$1<@$w> add our hostname S21 ############################################################ # # SMTP imc mailer # ############################################################ Mimc, P=/usr/lib/imcp, F=msDFMuCXPRI, S=11, R=21, A=imcp -tEML -h$h S11 R$*<@$+$j>$* $@$1<@$2$j>$3 already ok R$*<@$+$=w>$* $@$1<@$2$j>$4 add our domain R$*<@$+>$* $@$1<@$2>$3 already ok R$+ $@$1<@$j> add our hostname S21 ################################# # Final Output Post-rewriting # ################################# # This rewrites the internal $=T mock domains into their external form. # The default is to replace the mock domain name with $D. # The last two lines are stock. S4 R@ $@ handle <> error addr R$+<@$-.UUX> $2!$1 u@host.UUX => host!u R$*<$*$=T>$* $:$1<$2$D>$4 change local info R$*<$+>$* $1$2$3 defocus R@$+:$+:$+ $@@$1,$2:$3 <route-addr> canonical