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

1.1     ! root        1: ############################################################
        !             2: ############################################################
        !             3: #####
        !             4: #####          SENDMAIL CONFIGURATION FILE
        !             5: #####
        !             6: #####  This one is the big daddy.  There is no "upstairs"
        !             7: #####  to bounce a message to -- except perhaps the arpanet.
        !             8: #####
        !             9: #####          @(#)ucbvax.mc   4.5             8/31/83
        !            10: #####
        !            11: ############################################################
        !            12: ############################################################
        !            13: 
        !            14: 
        !            15: 
        !            16: ############################################################
        !            17: ###    local info
        !            18: ############################################################
        !            19: 
        !            20: # internet hostname
        !            21: Cwucbvax vax k UCB-VAX Berkeley UCB-C70 UCB LOCAL
        !            22: 
        !            23: # override SMTP hostname to match Arpanet name
        !            24: DjUCB-VAX.ARPA
        !            25: 
        !            26: # uucp hostnames
        !            27: DUucbvax
        !            28: CUucbvax ernie
        !            29: 
        !            30: # berknet hostname
        !            31: DBUCBVAX
        !            32: 
        !            33: # UUCP connections on ucbcad
        !            34: DVucbcad
        !            35: CVboulder
        !            36: CVcaddyvax caddyva
        !            37: CVlblh
        !            38: CVmasscomp masscom
        !            39: CVmhb5a
        !            40: CVmi-cec
        !            41: CVtekcad
        !            42: CVjupiter
        !            43: 
        !            44: # second alternate UUCP connection and hosts
        !            45: #DWucbarpa
        !            46: #CWsun
        !            47: 
        !            48: # known computer center hosts and gateway
        !            49: ############################################################
        !            50: ############################################################
        !            51: #####
        !            52: #####  KNOWN COMPUTER CENTER HOSTNAMES
        !            53: #####
        !            54: #####          @(#)cchosts.m4  4.1             7/25/83
        !            55: #####
        !            56: ############################################################
        !            57: ############################################################
        !            58: 
        !            59: 
        !            60: DCUCBJADE
        !            61: CCucbcfo-a cfo-a A
        !            62: CCucbcfo-b cfo-b B
        !            63: CCucbcfo-c cfo-c C
        !            64: CCucbcfo-d cfo-d D
        !            65: CCucbcfo-e cfo-e E
        !            66: CCucbcfo-f cfo-f F
        !            67: CCucbcfo-g cfo-g G populi ucbpopuli
        !            68: CCucbcfo-h cfo-h H ucbjade jade
        !            69: CCucbcfo-q cfo-q Q ucbruby ruby
        !            70: CCucbsrc Src S
        !            71: CCucbcfo-2 cfo-2 2 ucbtopaz topaz
        !            72: CCucbcfo-3 cfo-3 3 ucbcoral coral
        !            73: CCucbcfo-4 cfo-4 4 ucbamber amber
        !            74: CCucbcfo-5 cfo-5 5 ucbivory ivory
        !            75: CCucbcfo-6 cfo-6 6 ucblapis lapis
        !            76: 
        !            77: 
        !            78: # we have full sendmail support here
        !            79: Oa
        !            80: 
        !            81: #################################################
        !            82: #
        !            83: #      General configuration information
        !            84: #
        !            85: #      @(#)csbase.m4   4.3             8/21/83
        !            86: #
        !            87: #################################################
        !            88: 
        !            89: ######################
        !            90: #   General Macros   #
        !            91: ######################
        !            92: 
        !            93: # our arpanet gateway
        !            94: DABerkeley
        !            95: CABerkeley UCB ucbc70 c70 UCB-C70 u UCB-VAX ucbvax
        !            96: 
        !            97: # local domain names
        !            98: DDBERKELEY
        !            99: CDBERKELEY UCB ucbc70 c70 ucb-c70 u UCB-VAX ucbvax
        !           100: 
        !           101: # major relay host
        !           102: DRUCBVAX
        !           103: CRucbvax vax k
        !           104: 
        !           105: # my official hostname
        !           106: Dj$w.ARPA
        !           107: 
        !           108: # known SMTP/ethernet hosts (this domain only) -- only $R need be complete
        !           109: CSucbarpa arpa
        !           110: CSucbbach bach ucbstatvax statvax
        !           111: CSucbbrahms brahms mathstat
        !           112: CSucbcad cad cad-a
        !           113: CSucbcalder calder
        !           114: CSucbcartan cartan
        !           115: CSucbcory cory ucbokeeffe okeeffe
        !           116: CSucbdali dali
        !           117: CSucbdegas degas
        !           118: # CSucbear ear
        !           119: CSucbernie ernie
        !           120: CSucbesvax esvax
        !           121: CSucbic ic ucbic-ec ic-ec cad-b cad-ic
        !           122: CSucbicw icw ucbicw-ec icw-ec cad-c cad-icw
        !           123: CSucbingres ingres
        !           124: CSucbkim kim
        !           125: CSucbmatisse matisse
        !           126: CSucbmedea medea
        !           127: CSucbmerlin merlin
        !           128: CSucbmiro miro
        !           129: CSucbmonet monet
        !           130: CSucboz oz
        !           131: CSucbvax
        !           132: CSucbweyl weyl
        !           133: 
        !           134: # known top-level domains
        !           135: CTLOCAL ARPA UUCP BITNET CC
        !           136: 
        !           137: ############################################################
        !           138: #
        !           139: #      General configuration information
        !           140: #
        !           141: #      This information is basically just "boiler-plate"; it must be
        !           142: #      there, but is essentially constant.
        !           143: #
        !           144: #      Information in this file should be independent of location --
        !           145: #      i.e., although there are some policy decisions made, they are
        !           146: #      not specific to Berkeley per se.
        !           147: #
        !           148: #              @(#)base.m4     4.3             8/30/83
        !           149: #
        !           150: ############################################################
        !           151: 
        !           152: #      @(#)version.m4  4.7             8/31/83
        !           153: 
        !           154: DV4.7
        !           155: 
        !           156: 
        !           157: ##########################
        !           158: ###   Special macros   ###
        !           159: ##########################
        !           160: 
        !           161: # my name
        !           162: DnMAILER-DAEMON
        !           163: # UNIX header format
        !           164: DlFrom $g  $d
        !           165: # delimiter (operator) characters
        !           166: Do.:%@!^=/[]
        !           167: # format of a total name
        !           168: Dq$g$?x ($x)$.
        !           169: # SMTP login message
        !           170: De$j Sendmail $v/$V ready at $b
        !           171: 
        !           172: # forwarding host -- redefine this if you can't talk to the relay directly
        !           173: DF$R
        !           174: 
        !           175: ###################
        !           176: ###   Options   ###
        !           177: ###################
        !           178: 
        !           179: # location of alias file
        !           180: OA/usr/lib/aliases
        !           181: # default delivery mode (deliver in background)
        !           182: Odbackground
        !           183: # (don't) connect to "expensive" mailers
        !           184: #Oc
        !           185: # temporary file mode
        !           186: OF0644
        !           187: # default GID
        !           188: Og1
        !           189: # location of help file
        !           190: OH/usr/lib/sendmail.hf
        !           191: # log level
        !           192: OL9
        !           193: # default messages to old style
        !           194: Oo
        !           195: # queue directory
        !           196: OQ/usr/spool/mqueue
        !           197: # read timeout -- violates protocols
        !           198: Or2h
        !           199: # status file
        !           200: OS/usr/lib/sendmail.st
        !           201: # queue up everything before starting transmission
        !           202: Os
        !           203: # default timeout interval
        !           204: OT3d
        !           205: # time zone names (V6 only)
        !           206: OtPST,PDT
        !           207: # default UID
        !           208: Ou1
        !           209: # wizard's password
        !           210: OWa/FjIfuGKXyc2
        !           211: 
        !           212: ###############################
        !           213: ###   Message precedences   ###
        !           214: ###############################
        !           215: 
        !           216: Pfirst-class=0
        !           217: Pspecial-delivery=100
        !           218: Pjunk=-100
        !           219: 
        !           220: #########################
        !           221: ###   Trusted users   ###
        !           222: #########################
        !           223: 
        !           224: Troot
        !           225: Tdaemon
        !           226: Tuucp
        !           227: Teric
        !           228: Tnetwork
        !           229: 
        !           230: #############################
        !           231: ###   Format of headers   ###
        !           232: #############################
        !           233: 
        !           234: H?P?Return-Path: <$g>
        !           235: HReceived: $?sfrom $s $.by $j ($v/$V)
        !           236:        id $i; $b
        !           237: H?D?Resent-Date: $a
        !           238: H?D?Date: $a
        !           239: H?F?Resent-From: $q
        !           240: H?F?From: $q
        !           241: H?x?Full-Name: $x
        !           242: HSubject:
        !           243: # HPosted-Date: $a
        !           244: # H?l?Received-Date: $b
        !           245: H?M?Resent-Message-Id: <$t.$i@$j>
        !           246: H?M?Message-Id: <$t.$i@$j>
        !           247: 
        !           248: ###########################
        !           249: ###   Rewriting rules   ###
        !           250: ###########################
        !           251: 
        !           252: 
        !           253: ################################
        !           254: #  Sender Field Pre-rewriting  #
        !           255: ################################
        !           256: S1
        !           257: #R$*<$*>$*             $1$2$3                          defocus
        !           258: 
        !           259: ###################################
        !           260: #  Recipient Field Pre-rewriting  #
        !           261: ###################################
        !           262: S2
        !           263: #R$*<$*>$*             $1$2$3                          defocus
        !           264: 
        !           265: #################################
        !           266: #  Final Output Post-rewriting  #
        !           267: #################################
        !           268: S4
        !           269: 
        !           270: R@                     $@                              handle <> error addr
        !           271: 
        !           272: # externalize local domain info
        !           273: R$*<$*LOCAL>$*         $1<$2$D>$3                      change local info
        !           274: R$*<$+>$*              $1$2$3                          defocus
        !           275: R@$+:$+:$+             $@@$1,$2:$3                     <route-addr> canonical
        !           276: 
        !           277: # UUCP must always be presented in old form
        !           278: R$+@$-.UUCP            $2!$1                           [email protected] => h!u
        !           279: 
        !           280: # delete duplicate local names -- mostly for arpaproto.mc
        !           281: R$+%$=w@$=w            $1@$3                           u%UCB@UCB => u@UCB
        !           282: R$+%$=w@$=w.ARPA       $1@$3.ARPA                      u%UCB@UCB => u@UCB
        !           283: 
        !           284: ###########################
        !           285: #  Name Canonicalization  #
        !           286: ###########################
        !           287: S3
        !           288: 
        !           289: # handle "from:<>" special case
        !           290: R<>                    $@@                             turn into magic token
        !           291: 
        !           292: # basic textual canonicalization
        !           293: R$*<$+>$*              $2                              basic RFC821/822 parsing
        !           294: R$+ at $+              $1@$2                           "at" -> "@" for RFC 822
        !           295: R$*<$*>$*              $1$2$3                          in case recursive
        !           296: 
        !           297: # make sure <@a,@b,@c:user@d> syntax is easy to parse -- undone later
        !           298: R@$+,$+                        @$1:$2                          change all "," to ":"
        !           299: 
        !           300: # localize and dispose of domain-based addresses
        !           301: R@$+:$+                        $@$>6<@$1>:$2                   handle <route-addr>
        !           302: 
        !           303: # more miscellaneous cleanup
        !           304: R$+                    $:$>8$1                         host dependent cleanup
        !           305: R$+:$*;@$+             $@$1:$2;@$3                     list syntax
        !           306: R$+@$+                 $:$1<@$2>                       focus on domain
        !           307: R$+<$+@$+>             $1$2<@$3>                       move gaze right
        !           308: R$+<@$+>               $@$>6$1<@$2>                    already canonical
        !           309: 
        !           310: # convert old-style addresses to a domain-based address
        !           311: R$+%$+                 $@$>6$1<@$2>                    user%host
        !           312: R$-:$+                 $@$>6$2<@$1>                    host:user
        !           313: R$-.$+                 $@$>6$2<@$1>                    host.user
        !           314: R$+^$+                 $1!$2                           convert ^ to !
        !           315: R$-!$+                 $@$>6$2<@$1.UUCP>               resolve uucp names
        !           316: R$-=$+                 $@$>6$2<@$1.BITNET>             resolve bitnet names
        !           317: 
        !           318: 
        !           319: #######################
        !           320: #   Rewriting rules   #
        !           321: #######################
        !           322: 
        !           323: ##### special local conversions
        !           324: S6
        !           325: R$*<@$*$=D>$*          $1<@$2LOCAL>$4                  convert local domain
        !           326: R$*<@$*$=D.ARPA>$*     $1<@$2LOCAL>$4
        !           327: R$+%$+<@LOCAL>         $1<@$2.LOCAL>                   hack for % syntax
        !           328: R$*<@$+.$=T.$=T>$*     $1<@$2.$3>$5                    make UUCP top level
        !           329: R$*<@$+.$=T.$=T>$*     $1<@$2.$3>$5                    make UUCP top level
        !           330: R$*<@$*$=C.$=T>$*      $1<@$2$3>$5                     adjust CC hosts (ucbvax)
        !           331: R$*<@$*$=C>$*          $1<@$2$3.CC>$4                  adjust CC hosts (ucbvax)
        !           332: 
        !           333: ############################################################
        !           334: ############################################################
        !           335: #####
        !           336: #####          Local and Program Mailer specification
        !           337: #####
        !           338: #####          @(#)localm.m4   4.1             7/25/83
        !           339: #####
        !           340: ############################################################
        !           341: ############################################################
        !           342: 
        !           343: Mlocal,        P=/bin/mail, F=rlsDFMmn, S=10, R=20, A=mail -d $u
        !           344: Mprog, P=/bin/sh,   F=lsDFMe,   S=10, R=20, A=sh -c $u
        !           345: 
        !           346: S10
        !           347: R@                     MAILER-DAEMON                   errors to mailer-daemon
        !           348: 
        !           349: ############################################################
        !           350: ############################################################
        !           351: #####
        !           352: #####          Ethernet Mailer specification
        !           353: #####
        !           354: #####          @(#)etherm.m4   4.1             7/25/83
        !           355: #####
        !           356: ############################################################
        !           357: ############################################################
        !           358: 
        !           359: Mether,        P=[IPC], F=msDFMueCX, S=11, R=21, A=IPC $h
        !           360: 
        !           361: S11
        !           362: R$*<@$+>$*             $@$1<@$2>$3                     already ok
        !           363: R$+                    $@$1<@$w>                       tack on our hostname
        !           364: 
        !           365: S21
        !           366: 
        !           367: 
        !           368: 
        !           369: # names of NCP hosts
        !           370: ########################################################################
        !           371: #
        !           372: #              List of NCP-only sites
        !           373: #
        !           374: #      When NCP goes away, so should this file.
        !           375: #
        !           376: #              @(#)ncphosts.m4 4.1             7/25/83
        !           377: #
        !           378: ########################################################################
        !           379: 
        !           380: # NCP gateway
        !           381: DNUDEL-RELAY
        !           382: 
        !           383: # list of NCP-only hosts
        !           384: 
        !           385: # Cutoff date  1 Feb 83
        !           386: CNnusc-npt
        !           387: CNmartin mmc
        !           388: 
        !           389: # Cutoff date 15 Feb 83
        !           390: CNafsc-sd afsd
        !           391: 
        !           392: # Cutoff date  1 Mar 83
        !           393: CNwharton-10 wharton
        !           394: CNudel-tcp
        !           395: 
        !           396: # Cutoff date  1 Apr 83
        !           397: CNcmu-cs-b cmu-10b cmub
        !           398: CNsri-nsc11 nsc11 dnsri
        !           399: CNcmu-cs-a cmu-10a cmua
        !           400: 
        !           401: # Cutoff date Unknown
        !           402: CNs1-gateway
        !           403: 
        !           404: 
        !           405: ############################################################
        !           406: ############################################################
        !           407: #####
        !           408: #####          RULESET ZERO PREAMBLE
        !           409: #####
        !           410: #####  The beginning of ruleset zero is constant through all
        !           411: #####  configurations.
        !           412: #####
        !           413: #####          @(#)zerobase.m4 4.1             7/25/83
        !           414: #####
        !           415: ############################################################
        !           416: ############################################################
        !           417: 
        !           418: S0
        !           419: 
        !           420: # first make canonical
        !           421: R$*<$*>$*              $1$2$3                          defocus
        !           422: R$+                    $:$>3$1                         make canonical
        !           423: 
        !           424: # handle special cases.....
        !           425: R@                     $#local$:MAILER-DAEMON          handle <> form
        !           426: R$*<@[$+]>$*           $#tcp$@[$2]$:$1@[$2]$3          numeric internet spec
        !           427: 
        !           428: # arrange for local names to be fully qualified
        !           429: R$*<$*$=S>$*           $1<$2$3.LOCAL>$4                user@etherhost
        !           430: R$*<$*$=Z>$*           $1<$2$3.LOCAL>$4                user@berkhost
        !           431: R$*<$+.ARPA.LOCAL>$*   $1<$2.ARPA>$3                   because ARPA is a host
        !           432: 
        !           433: # now delete the local info
        !           434: R$*<$*$=w.LOCAL>$*     $1<$2>$4                        thishost.LOCAL
        !           435: R$*<$*$=w.ARPA>$*      $1<$2>$4                        thishost.ARPA
        !           436: R$*<$*$=w.UUCP>$*      $1<$2>$4                        thishost.UUCP
        !           437: R$*<$*$=w>$*           $1<$2>$4                        thishost
        !           438: R$*<$*.>$*             $1<$2>$3                        drop trailing dot
        !           439: R<@>:$*                        $@$>0$1                         retry after route strip
        !           440: R$*<@>                 $@$>0$1                         strip null trash & retry
        !           441: 
        !           442: # forward around hosts with communication problems
        !           443: R$*<@$=F.LOCAL>$*      $#ether$@$F$:$1<@$2.LOCAL>$3    reroute message
        !           444: 
        !           445: ##################################
        !           446: #  End of ruleset zero preamble  #
        !           447: ##################################
        !           448: 
        !           449: 
        !           450: ################################################
        !           451: ###  Machine dependent part of ruleset zero  ###
        !           452: ################################################
        !           453: 
        !           454: # forward NCP mail through udel-relay
        !           455: R$+<@$=N>              $#tcp$@$N$:$1.$2<@$N>           user.host@UDEL-RELAY
        !           456: R$+<@$=N.ARPA>         $#tcp$@$N$:$1.$2<@$N>           user.host@UDEL-RELAY
        !           457: 
        !           458: # resolve explicitly arpanet names (to avoid with machine name "arpa" below)
        !           459: R$*<@$*$-.ARPA>$*      $#tcp$@$3$:$1<@$2$3.ARPA>$4     [email protected]
        !           460: 
        !           461: # resolve names that can go via the ethernet
        !           462: R$*<@$*$=S>$*          $#ether$@$3$:$1<@$2$3>$4        user@etherhost
        !           463: 
        !           464: # resolve berknet names
        !           465: R<@$=Z>:$+             $#berk$@$1$:$2                  @berkhost: ...
        !           466: R$+<@$=Z>              $#berk$@$2$:$1                  user@berknethost
        !           467: 
        !           468: # resolve names destined for the computer center
        !           469: R$*<@$+.CC>$*          $#ether$@$C$:$1<@$2.CC>$3       [email protected]
        !           470: R$*<@$+.BITNET>$*      $#ether$@$C$:$1<@$2.BITNET>$3   [email protected]
        !           471: 
        !           472: # resolve nonlocal UUCP links
        !           473: R$*<@$*$=V.UUCP>$*     $#ether$@$V$:$1<@$2$3.UUCP>$4   [email protected]
        !           474: R$*<@$*$=W.UUCP>$*     $#ether$@$W$:$1<@$2$3.UUCP>$4   [email protected]
        !           475: 
        !           476: # resolve local UUCP links (all others)
        !           477: R<@$+.$-.UUCP>:$+      $#uucp$@$2$:@$1.$2.UUCP:$3      @host.domain.UUCP: ...
        !           478: R<@$-.UUCP>:$+         $#uucp$@$1$:$2                  @host.UUCP: ...
        !           479: R$+<@$+.$-.UUCP>       $#uucp$@$3$:$1@$2.$3.UUCP       [email protected]
        !           480: R$+<@$-.UUCP>          $#uucp$@$2$:$1                  [email protected]
        !           481: 
        !           482: # resolve mmdf hack
        !           483: R$+<@UDel-Test>                $#ether$@ucbarpa$:$1@Udel-Test  user.host@UDel-Relay
        !           484: 
        !           485: # other non-local names will be kicked upstairs
        !           486: R$*<@$*$->$*           $#tcp$@$3$:$1<@$2$3>$4          user@host
        !           487: 
        !           488: # remaining names must be local
        !           489: R$+                    $#local$:$1                     everything else
        !           490: 
        !           491: ########################################
        !           492: ###  Host dependent address cleanup  ###
        !           493: ########################################
        !           494: 
        !           495: S8
        !           496: R$*$=U!$+@$+           $3@$4                           drop uucp forward
        !           497: 
        !           498: 
        !           499: ############################################################
        !           500: ############################################################
        !           501: #####
        !           502: #####          Berknet Mailer specification
        !           503: #####
        !           504: #####          @(#)berkm.m4    4.1             7/25/83
        !           505: #####
        !           506: ############################################################
        !           507: ############################################################
        !           508: 
        !           509: ############################################################
        !           510: ############################################################
        !           511: #####
        !           512: #####          Provide Backward Compatibility
        !           513: #####
        !           514: #####          @(#)compat.m4   4.2             8/30/83
        !           515: #####
        !           516: ############################################################
        !           517: ############################################################
        !           518: 
        !           519: 
        !           520: 
        !           521: ############################################################
        !           522: ############################################################
        !           523: #####
        !           524: #####          Berknet Host List
        !           525: #####
        !           526: #####          @(#)berkhosts.m4        4.2             8/6/83
        !           527: #####
        !           528: ############################################################
        !           529: ############################################################
        !           530: 
        !           531: # A-H, Q, and S are in the computer center domain
        !           532: CZI Ing70 ucberl70 erl70
        !           533: CZJ IngVAX Ingres ucbingres
        !           534: CZK ucbvax vax
        !           535: CZM medea ucbmedea image
        !           536: CZN Kim ucbkim
        !           537: CZO ESVAX ucbesvax
        !           538: CZR ARPAVAX arpa ucbarpa
        !           539: CZT MathStat ucbmathstat
        !           540: CZV CSVAX Ernie ucbernie
        !           541: CZX onyx ucbonyx
        !           542: CZZ EECS40 EARVAX ucbear ear
        !           543: 
        !           544: 
        !           545: #####################################################
        !           546: #  General code to convert back to old style names  #
        !           547: #####################################################
        !           548: S5
        !           549: 
        !           550: R$+<@$-.LOCAL>         $2:$1                           [email protected] => h:u
        !           551: R$+<@$-.CC>            $2:$1                           [email protected] => h:u
        !           552: R$+<@$=Z>              $@$2:$1                         u@bhost => h:u
        !           553: R$+<@$=C>              $@$2:$1                         u@cchost => h:u
        !           554: R$+<@$-.UUCP>          $2!$1                           [email protected] => host!u
        !           555: R$+@$+.ARPA            $1@$2                           [email protected] => u@host
        !           556: 
        !           557: 
        !           558: Mberk, P=/usr/net/bin/sendberkmail, F=fsDFMC, S=12, R=22, M=100000,
        !           559:        A=sendberkmail -m $h -h $c -t $u
        !           560: 
        !           561: S12
        !           562: R$+                    $:$>5$1                         convert to old style
        !           563: R$-:$+                 $@$1:$2                         old berknet as is
        !           564: R$+<@$+>               $@$1<@$2>                       don't modify arpanet
        !           565: R$-!$+                 $@$1!$2                         don't modify uucp
        !           566: R$+                    $@$B:$1                         make others relative
        !           567: 
        !           568: S22
        !           569: R$+                    $:$>5$1                         convert to old style
        !           570: 
        !           571: ############################################################
        !           572: ############################################################
        !           573: #####
        !           574: #####          UUCP Mailer specification
        !           575: #####
        !           576: #####          @(#)uucpm.m4    4.2             8/30/83
        !           577: #####
        !           578: ############################################################
        !           579: ############################################################
        !           580: 
        !           581: 
        !           582: 
        !           583: Muucp, P=/usr/bin/uux, F=sDFMhuU, S=13, R=23, M=100000,
        !           584:        A=uux - -r $h!rmail ($u)
        !           585: 
        !           586: S13
        !           587: R$+                    $:$>5$1                         convert to old style
        !           588: R$=w!$+                        $2                              strip local name
        !           589: R$*<@$=S>$*            $1<@$2.Berkeley.ARPA>$3         resolve abbreviations
        !           590: R$*<@$=Z>$*            $1<@$2.Berkeley.ARPA>$3         resolve abbreviations
        !           591: R$*<@$->$*             $1<@$2.ARPA>$3                  resolve abbreviations
        !           592: R$+                    $:$U!$1                         stick on our host name
        !           593: R$=w!$=R:$+            $:$1!$3                         ucbvax!ucbvax:xxx
        !           594: 
        !           595: S23
        !           596: R$+                    $:$>5$1                         convert to old style
        !           597: R$*<@$=S>$*            $1<@$2.Berkeley.ARPA>$3         resolve abbreviations
        !           598: R$*<@$=Z>$*            $1<@$2.Berkeley.ARPA>$3         resolve abbreviations
        !           599: R$*<@$->$*             $1<@$2.ARPA>$3                  resolve abbreviations
        !           600: 
        !           601: ############################################################
        !           602: ############################################################
        !           603: #####
        !           604: #####          Arpanet TCP Mailer specification
        !           605: #####
        !           606: #####          @(#)tcpm.m4     4.1             7/25/83
        !           607: #####
        !           608: ############################################################
        !           609: ############################################################
        !           610: 
        !           611: Mtcp,  P=[IPC], F=msDFMueXL, S=14, R=14, A=IPC $h, E=\r\n
        !           612: 
        !           613: S14
        !           614: 
        !           615: # pass <route-addr>'s through
        !           616: R<@$+>$*               $@<@$1>$2                       resolve <route-addr>
        !           617: 
        !           618: # map colons to dots everywhere.....
        !           619: R$*:$*                 $1.$2                           map colons to dots
        !           620: 
        !           621: # handle the simple case....
        !           622: R$+<@$-.ARPA>          $@$1<@$2.ARPA>                  [email protected]
        !           623: 
        !           624: # fully qualify computer center names so the rest works nicely
        !           625: R$+<@$+.CC>            $1<@$2.CC.LOCAL>                [email protected]
        !           626: 
        !           627: # output local hosts in user%host@Berkeley syntax
        !           628: R$+<@LOCAL>            $@$1<@$A>                       local names
        !           629: R$+<@$+.LOCAL>         $@$1%$2<@$A>                    local hosts
        !           630: R$+<@$*$=S>            $@$1%$2$3<@$A>
        !           631: R$+<@$*$=Z>            $@$1%$2$3<@$A>
        !           632: 
        !           633: # handle other external cases
        !           634: R$+<@$->               $@$1<@$2>                       no .ARPA on simple names
        !           635: R$+<@$+.$-.ARPA>       $@$1%$2<@$3.ARPA>               approximate something
        !           636: R$+<@[$+]>             $@$1<@[$2]>                     already ok
        !           637: 
        !           638: # convert remaining addresses to old format and externalize appropriately
        !           639: R$+                    $:$>5$1                         => old format
        !           640: R$-:$+                 $@$1.$2<@$A>                    convert berk hosts
        !           641: R$+<@$+>               $@$1%$2<@$A>                    pessmize
        !           642: R$+                    $:$1%$w<@$A>                    tack on our hostname
        !           643: R$+%$=R<@$=A>          $1<@$3>                         strip unneeded relay
        !           644: 

unix.superglobalmegacorp.com

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