Annotation of cci/usr/src/usr.lib/sendmail/cf/arpaproto.cf, revision 1.1

1.1     ! root        1: ############################################################
        !             2: ############################################################
        !             3: #####
        !             4: #####          SENDMAIL CONFIGURATION FILE
        !             5: #####
        !             6: #####  Prototype for Arpanet (TCP) only sites.  Modify this
        !             7: #####  file as appropriate for your configuration.
        !             8: #####
        !             9: #####          @(#)arpaproto.mc        4.1             7/25/83
        !            10: #####
        !            11: ############################################################
        !            12: ############################################################
        !            13: 
        !            14: 
        !            15: 
        !            16: ############################################################
        !            17: ###    local info
        !            18: ############################################################
        !            19: 
        !            20: # internet hostname
        !            21: DA$w
        !            22: 
        !            23: # domain
        !            24: DDARPA
        !            25: CDARPA
        !            26: 
        !            27: # official hostname
        !            28: Dj$w.$D
        !            29: 
        !            30: ############################################################
        !            31: #
        !            32: #      General configuration information
        !            33: #
        !            34: #      This information is basically just "boiler-plate"; it must be
        !            35: #      there, but is essentially constant.
        !            36: #
        !            37: #      Information in this file should be independent of location --
        !            38: #      i.e., although there are some policy decisions made, they are
        !            39: #      not specific to Berkeley per se.
        !            40: #
        !            41: #              @(#)base.m4     4.3             8/30/83
        !            42: #
        !            43: ############################################################
        !            44: 
        !            45: #      @(#)version.m4  4.7             8/31/83
        !            46: 
        !            47: DV4.7
        !            48: 
        !            49: 
        !            50: ##########################
        !            51: ###   Special macros   ###
        !            52: ##########################
        !            53: 
        !            54: # my name
        !            55: DnMAILER-DAEMON
        !            56: # UNIX header format
        !            57: DlFrom $g  $d
        !            58: # delimiter (operator) characters
        !            59: Do.:%@!^=/[]
        !            60: # format of a total name
        !            61: Dq$g$?x ($x)$.
        !            62: # SMTP login message
        !            63: De$j Sendmail $v/$V ready at $b
        !            64: 
        !            65: # forwarding host -- redefine this if you can't talk to the relay directly
        !            66: DF$R
        !            67: 
        !            68: ###################
        !            69: ###   Options   ###
        !            70: ###################
        !            71: 
        !            72: # location of alias file
        !            73: OA/usr/lib/aliases
        !            74: # default delivery mode (deliver in background)
        !            75: Odbackground
        !            76: # (don't) connect to "expensive" mailers
        !            77: #Oc
        !            78: # temporary file mode
        !            79: OF0644
        !            80: # default GID
        !            81: Og1
        !            82: # location of help file
        !            83: OH/usr/lib/sendmail.hf
        !            84: # log level
        !            85: OL9
        !            86: # default messages to old style
        !            87: Oo
        !            88: # queue directory
        !            89: OQ/usr/spool/mqueue
        !            90: # read timeout -- violates protocols
        !            91: Or2h
        !            92: # status file
        !            93: OS/usr/lib/sendmail.st
        !            94: # queue up everything before starting transmission
        !            95: Os
        !            96: # default timeout interval
        !            97: OT3d
        !            98: # time zone names (V6 only)
        !            99: OtPST,PDT
        !           100: # default UID
        !           101: Ou1
        !           102: # wizard's password
        !           103: OWa/FjIfuGKXyc2
        !           104: 
        !           105: ###############################
        !           106: ###   Message precedences   ###
        !           107: ###############################
        !           108: 
        !           109: Pfirst-class=0
        !           110: Pspecial-delivery=100
        !           111: Pjunk=-100
        !           112: 
        !           113: #########################
        !           114: ###   Trusted users   ###
        !           115: #########################
        !           116: 
        !           117: Troot
        !           118: Tdaemon
        !           119: Tuucp
        !           120: Teric
        !           121: Tnetwork
        !           122: 
        !           123: #############################
        !           124: ###   Format of headers   ###
        !           125: #############################
        !           126: 
        !           127: H?P?Return-Path: <$g>
        !           128: HReceived: $?sfrom $s $.by $j ($v/$V)
        !           129:        id $i; $b
        !           130: H?D?Resent-Date: $a
        !           131: H?D?Date: $a
        !           132: H?F?Resent-From: $q
        !           133: H?F?From: $q
        !           134: H?x?Full-Name: $x
        !           135: HSubject:
        !           136: # HPosted-Date: $a
        !           137: # H?l?Received-Date: $b
        !           138: H?M?Resent-Message-Id: <$t.$i@$j>
        !           139: H?M?Message-Id: <$t.$i@$j>
        !           140: 
        !           141: ###########################
        !           142: ###   Rewriting rules   ###
        !           143: ###########################
        !           144: 
        !           145: 
        !           146: ################################
        !           147: #  Sender Field Pre-rewriting  #
        !           148: ################################
        !           149: S1
        !           150: #R$*<$*>$*             $1$2$3                          defocus
        !           151: 
        !           152: ###################################
        !           153: #  Recipient Field Pre-rewriting  #
        !           154: ###################################
        !           155: S2
        !           156: #R$*<$*>$*             $1$2$3                          defocus
        !           157: 
        !           158: #################################
        !           159: #  Final Output Post-rewriting  #
        !           160: #################################
        !           161: S4
        !           162: 
        !           163: R@                     $@                              handle <> error addr
        !           164: 
        !           165: # externalize local domain info
        !           166: R$*<$*LOCAL>$*         $1<$2$D>$3                      change local info
        !           167: R$*<$+>$*              $1$2$3                          defocus
        !           168: R@$+:$+:$+             $@@$1,$2:$3                     <route-addr> canonical
        !           169: 
        !           170: # UUCP must always be presented in old form
        !           171: R$+@$-.UUCP            $2!$1                           [email protected] => h!u
        !           172: 
        !           173: # delete duplicate local names -- mostly for arpaproto.mc
        !           174: R$+%$=w@$=w            $1@$3                           u%UCB@UCB => u@UCB
        !           175: R$+%$=w@$=w.ARPA       $1@$3.ARPA                      u%UCB@UCB => u@UCB
        !           176: 
        !           177: ###########################
        !           178: #  Name Canonicalization  #
        !           179: ###########################
        !           180: S3
        !           181: 
        !           182: # handle "from:<>" special case
        !           183: R<>                    $@@                             turn into magic token
        !           184: 
        !           185: # basic textual canonicalization
        !           186: R$*<$+>$*              $2                              basic RFC821/822 parsing
        !           187: R$+ at $+              $1@$2                           "at" -> "@" for RFC 822
        !           188: R$*<$*>$*              $1$2$3                          in case recursive
        !           189: 
        !           190: # make sure <@a,@b,@c:user@d> syntax is easy to parse -- undone later
        !           191: R@$+,$+                        @$1:$2                          change all "," to ":"
        !           192: 
        !           193: # localize and dispose of domain-based addresses
        !           194: R@$+:$+                        $@$>6<@$1>:$2                   handle <route-addr>
        !           195: 
        !           196: # more miscellaneous cleanup
        !           197: R$+                    $:$>8$1                         host dependent cleanup
        !           198: R$+:$*;@$+             $@$1:$2;@$3                     list syntax
        !           199: R$+@$+                 $:$1<@$2>                       focus on domain
        !           200: R$+<$+@$+>             $1$2<@$3>                       move gaze right
        !           201: R$+<@$+>               $@$>6$1<@$2>                    already canonical
        !           202: 
        !           203: # convert old-style addresses to a domain-based address
        !           204: R$+%$+                 $@$>6$1<@$2>                    user%host
        !           205: R$-:$+                 $@$>6$2<@$1>                    host:user
        !           206: R$-.$+                 $@$>6$2<@$1>                    host.user
        !           207: R$+^$+                 $1!$2                           convert ^ to !
        !           208: R$-!$+                 $@$>6$2<@$1.UUCP>               resolve uucp names
        !           209: R$-=$+                 $@$>6$2<@$1.BITNET>             resolve bitnet names
        !           210: 
        !           211: 
        !           212: ############################################################
        !           213: ############################################################
        !           214: #####
        !           215: #####          RULESET ZERO PREAMBLE
        !           216: #####
        !           217: #####  The beginning of ruleset zero is constant through all
        !           218: #####  configurations.
        !           219: #####
        !           220: #####          @(#)zerobase.m4 4.1             7/25/83
        !           221: #####
        !           222: ############################################################
        !           223: ############################################################
        !           224: 
        !           225: S0
        !           226: 
        !           227: # first make canonical
        !           228: R$*<$*>$*              $1$2$3                          defocus
        !           229: R$+                    $:$>3$1                         make canonical
        !           230: 
        !           231: # handle special cases.....
        !           232: R@                     $#local$:MAILER-DAEMON          handle <> form
        !           233: R$*<@[$+]>$*           $#tcp$@[$2]$:$1@[$2]$3          numeric internet spec
        !           234: 
        !           235: # arrange for local names to be fully qualified
        !           236: R$*<$*$=S>$*           $1<$2$3.LOCAL>$4                user@etherhost
        !           237: R$*<$*$=Z>$*           $1<$2$3.LOCAL>$4                user@berkhost
        !           238: R$*<$+.ARPA.LOCAL>$*   $1<$2.ARPA>$3                   because ARPA is a host
        !           239: 
        !           240: # now delete the local info
        !           241: R$*<$*$=w.LOCAL>$*     $1<$2>$4                        thishost.LOCAL
        !           242: R$*<$*$=w.ARPA>$*      $1<$2>$4                        thishost.ARPA
        !           243: R$*<$*$=w.UUCP>$*      $1<$2>$4                        thishost.UUCP
        !           244: R$*<$*$=w>$*           $1<$2>$4                        thishost
        !           245: R$*<$*.>$*             $1<$2>$3                        drop trailing dot
        !           246: R<@>:$*                        $@$>0$1                         retry after route strip
        !           247: R$*<@>                 $@$>0$1                         strip null trash & retry
        !           248: 
        !           249: # forward around hosts with communication problems
        !           250: R$*<@$=F.LOCAL>$*      $#ether$@$F$:$1<@$2.LOCAL>$3    reroute message
        !           251: 
        !           252: ##################################
        !           253: #  End of ruleset zero preamble  #
        !           254: ##################################
        !           255: 
        !           256: 
        !           257: ###############################################
        !           258: ###  Machine dependent part of rulset zero  ###
        !           259: ###############################################
        !           260: 
        !           261: # resolve names we can handle locally
        !           262: R$*<@$*$-.ARPA>$*      $#tcp$@$3$:$1<@$2$3.ARPA>$4     [email protected]
        !           263: R$*<@$*$->$*           $#tcp$@$3$:$1<@$2$3>$4          [email protected]
        !           264: 
        !           265: # everything else must be a local name
        !           266: R$+                    $#local$:$1                     local names
        !           267: 
        !           268: ############################################################
        !           269: ############################################################
        !           270: #####
        !           271: #####          Local and Program Mailer specification
        !           272: #####
        !           273: #####          @(#)localm.m4   4.1             7/25/83
        !           274: #####
        !           275: ############################################################
        !           276: ############################################################
        !           277: 
        !           278: Mlocal,        P=/bin/mail, F=rlsDFMmn, S=10, R=20, A=mail -d $u
        !           279: Mprog, P=/bin/sh,   F=lsDFMe,   S=10, R=20, A=sh -c $u
        !           280: 
        !           281: S10
        !           282: R@                     MAILER-DAEMON                   errors to mailer-daemon
        !           283: 
        !           284: ############################################################
        !           285: ############################################################
        !           286: #####
        !           287: #####          Arpanet TCP Mailer specification
        !           288: #####
        !           289: #####          @(#)tcpm.m4     4.1             7/25/83
        !           290: #####
        !           291: ############################################################
        !           292: ############################################################
        !           293: 
        !           294: Mtcp,  P=[IPC], F=msDFMueXL, S=14, R=14, A=IPC $h, E=\r\n
        !           295: 
        !           296: S14
        !           297: 
        !           298: # pass <route-addr>'s through
        !           299: R<@$+>$*               $@<@$1>$2                       resolve <route-addr>
        !           300: 
        !           301: # map colons to dots everywhere.....
        !           302: R$*:$*                 $1.$2                           map colons to dots
        !           303: 
        !           304: # handle the simple case....
        !           305: R$+<@$-.ARPA>          $@$1<@$2.ARPA>                  [email protected]
        !           306: 
        !           307: # fully qualify computer center names so the rest works nicely
        !           308: R$+<@$+.CC>            $1<@$2.CC.LOCAL>                [email protected]
        !           309: 
        !           310: # output local hosts in user%host@Berkeley syntax
        !           311: R$+<@LOCAL>            $@$1<@$A>                       local names
        !           312: R$+<@$+.LOCAL>         $@$1%$2<@$A>                    local hosts
        !           313: R$+<@$*$=S>            $@$1%$2$3<@$A>
        !           314: R$+<@$*$=Z>            $@$1%$2$3<@$A>
        !           315: 
        !           316: # handle other external cases
        !           317: R$+<@$->               $@$1<@$2>                       no .ARPA on simple names
        !           318: R$+<@$+.$-.ARPA>       $@$1%$2<@$3.ARPA>               approximate something
        !           319: R$+<@[$+]>             $@$1<@[$2]>                     already ok
        !           320: 
        !           321: # convert remaining addresses to old format and externalize appropriately
        !           322: R$+                    $:$>5$1                         => old format
        !           323: R$-:$+                 $@$1.$2<@$A>                    convert berk hosts
        !           324: R$+<@$+>               $@$1%$2<@$A>                    pessmize
        !           325: R$+                    $:$1%$w<@$A>                    tack on our hostname
        !           326: R$+%$=R<@$=A>          $1<@$3>                         strip unneeded relay
        !           327: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.