Annotation of 43BSD/usr.lib/sendmail/cf.named/nstcpm.m4, revision 1.1.1.1

1.1       root        1: divert(10)
                      2: #
                      3: #  Sendmail
                      4: #  Copyright (c) 1983  Eric P. Allman
                      5: #  Berkeley, California
                      6: #
                      7: #  Copyright (c) 1983 Regents of the University of California.
                      8: #  All rights reserved.  The Berkeley software License Agreement
                      9: #  specifies the terms and conditions for redistribution.
                     10: #
                     11: #      @(#)nstcpm.m4   1.12 (Berkeley) 5/1/86
                     12: #
                     13: divert(0)
                     14: ############################################################
                     15: ############################################################
                     16: #####
                     17: #####          Arpanet TCP Mailer specification
                     18: #####
                     19: #####  Messages processed by this specification are assumed to leave
                     20: #####  the local domain -- hence, they must be canonical according to
                     21: #####  RFC822 etc.
                     22: #####
                     23: #####  This mailer is to be used with the Berkeley Name Server.
                     24: #####
                     25: ############################################################
                     26: ############################################################
                     27: 
                     28: Mtcp,  P=[IPC], F=mDFMueXLC, S=14, R=24, A=IPC $h, E=\r\n
                     29: 
                     30: S14
                     31: 
                     32: # pass <route-addr>'s through
                     33: R<@$+>$*               $@<@$[$1$]>$2                   resolve <route-addr>
                     34: 
                     35: # map colons to dots everywhere.....
                     36: R$*:$*                 $1.$2                           map colons to dots
                     37: 
                     38: # handle the simple case....
                     39: R$+<@$-.ARPA>          $@$1<@$[$2.ARPA$]>              [email protected]
                     40: 
                     41: # fully qualify computer center names so the rest works nicely
                     42: R$+<@$=C>              $1<@$2.$D>              [email protected]
                     43: 
                     44: # output local host in [email protected] syntax
                     45: R$+<@LOCAL>            $:$1<@$w>                               this host
                     46: R$+<@$->               $:$1<@$[$2$]>                   check for local domain
                     47: R$+<@$~N.berkeley.edu> $@$1%$2<@$A>                    for non-nic-reg local hosts
                     48: R$+<@$~N.LOCAL>                $@$1%$2<@$A>                    for non-nic-registered sites
                     49: R$+<@$+.LOCAL>         $@$1<@$2.$D>                    nic-reg local hosts
                     50: R$+<@$=w>              $@$1<@$w.$D>                    user@this_host.berkeley.edu
                     51: 
                     52: # output local hosts in user%[email protected] syntax
                     53: 
                     54: R$+<@$+.CSNET>         $@$1%$2.CSNET<@CSNET-RELAY.ARPA>        [email protected]
                     55: R$+<@$+.DEC>           $@$1%$2.DEC<@decwrl.dec.com>    [email protected]
                     56: R$+<@$+.OZ.AU>         $@$1%$2.OZ.AU<@seismo.css.gov>  [email protected]
                     57: R$+<@$+.UUCP>          $@$2!$1<@$w>                    [email protected]
                     58: R$+<@$+.$=P>           $@$1<@$[$2.$3$]>                user@host.{mil,edu,...}
                     59: R$+<@$+.$=K>           $@$1%$2.$3<@$w>                 [email protected]
                     60: R$+<@$*$=Z>            $@$1%$2$3<@$w>
                     61: 
                     62: # handle other external cases
                     63: R$+<@$->               $@$1<@$[$2$]>                   no .ARPA on simple names
                     64: #R$+<@$+.$-.ARPA>      $@$1%$2<@$[$3.ARPA$]>           approximate something
                     65: R$+<@[$+]>             $@$1<@[$2]>                     already ok
                     66: R$+<@$+>               $@$1<@$[$2$]>                   set for named
                     67: 
                     68: # convert remaining addresses to old format and externalize appropriately
                     69: R$+                    $:$>5$1                         => old format
                     70: R$-:$+                 $@$1.$2<@$w>                    convert berk hosts
                     71: #R$+<@$+>              $@$1%$2<@$w>                    pessmize
                     72: R$+                    $:$1<@$w>                       tack on our hostname
                     73: R$+<@$=w>              $:$1<@$w.$D>                    wher $w doesn't have .b.e
                     74: R$+<@$~N.berkeley.edu> $@$1%$2<@$A>                    user%[email protected]
                     75: R$+%$=R<@$=A>          $1<@$[$3$]>                     strip unneeded relay
                     76: 
                     77: S24
                     78: 
                     79: # put in <> kludge
                     80: R$*<$*>$*              $1$2$3                          defocus
                     81: R$*                    $:$>3$1                         now canonical form
                     82: 
                     83: # pass <route-addr>'s through
                     84: R<@$+>$*               $@<@$[$1$]>$2                   resolve <route-addr>
                     85: 
                     86: # map colons to dots everywhere.....
                     87: R$*:$*                 $1.$2                           map colons to dots
                     88: 
                     89: # handle the simple case....
                     90: R$+<@$-.ARPA>          $@$1<@$[$2.ARPA$]>              [email protected]
                     91: 
                     92: # fully qualify computer center names so the rest works nicely
                     93: R$+<@$=C>              $1<@$2.$D>              [email protected]
                     94: 
                     95: # output local host in [email protected] syntax
                     96: R$+<@$=w>              $@$1<@$w>                       this host
                     97: R$+<@LOCAL>            $@$1<@$w>                       this host
                     98: R$+<@$+.LOCAL>         $@$1<@$2.$D>                    local hosts
                     99: R$+<@$->               $:$1<@$[$2$]>                   resolve to full name
                    100: R$+<@$~N.berkeley.edu> $@$1%$2<@$A>                    non-nic host qualification
                    101: 
                    102: # output local hosts in user%[email protected] syntax
                    103: 
                    104: R$+<@$+.CSNET>         $@$1%$2.CSNET<@CSNET-RELAY.ARPA>        [email protected]
                    105: R$+<@$+.DEC>           $@$1%$2.DEC<@decwrl.dec.com>    [email protected]
                    106: R$+<@$+.OZ.AU>         $@$1%$2.OZ.AU<@seismo.css.gov>  [email protected]
                    107: R$+<@$+.UUCP>          $@$2!$1                         [email protected]
                    108: R$+<@$+.BITNET>                $@$1<@$2.BITNET>                [email protected]
                    109: R$+<@$+.$=P>           $@$1<@$[$2.$3$]>                user@host.{mil,edu,...}
                    110: R$+<@$+.$=K>           $@$1%$2.$3<@$w>                 [email protected]
                    111: R$+<@$=Z>              $@$1<@$2>                       berkhosts
                    112: 
                    113: # handle other external cases
                    114: R$+<@$->               $@$1<@$[$2$]>                   no .ARPA on simple names
                    115: #R$+<@$+.$-.ARPA>      $@$1%$2<@$[$3.ARPA$]>           approximate something
                    116: R$+<@[$+]>             $@$1<@[$2]>                     already ok
                    117: R$+<@$+>               $@$1<@$[$2$]>                   set for named
                    118: 
                    119: # convert remaining addresses to old format and externalize appropriately
                    120: R$+                    $:$>5$1                         => old format
                    121: R$-:$+                 $@$1.$2<@$w>                    convert berk hosts
                    122: #R$+<@$+>              $@$1%$2<@$w>                    pessmize
                    123: R$+                    $:$1<@$w>                       tack on our hostname
                    124: R$+%$=R<@$=A>          $1<@$[$3$]>                     strip unneeded relay
                    125: 

unix.superglobalmegacorp.com

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