home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / sendmail / sendmail.cf / harvard / dsendmail.cf < prev    next >
Encoding:
Text File  |  1987-08-13  |  20.5 KB  |  805 lines

  1.  
  2. ############################################################
  3. ############################################################
  4. #####
  5. #####        SENDMAIL CONFIGURATION FILE
  6. #####
  7. ############################################################
  8. ############################################################
  9.  
  10. ######################
  11. #   General Macros   #
  12. ######################
  13.  
  14. # Configuration definitions
  15. # See documentation for specific usage syntax
  16. # DOMAININNAME - the `/bin/hostname` of this host includes the domain
  17. # NODOMAINS - don't use the local domain in host table lookups
  18. # ANYDOMAIN - recognize our host name within any domain (UUCP, BITNET, CSNET)
  19. # PATHALIAS - this host uses the pathalias database and mailer
  20. # TTYMAILER - this host uses the 'tty' mailer for BITNET/SMTP SEND
  21. # ARPACLIENTS - rewrite from addresses to point to the ARPA gateway
  22. # SENDDOMAIN - append our domain to ALL return addresses and To: addresses,
  23. #  even within our domain.
  24. # MAILSLAVES - this host has mail slaves (hosts who forward all mail to us)
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33. # hosts we should pathalias even though they are in L.sys
  34. CYdelftcc enmasse genrad gsg wivax masscomp
  35. CYallegra floyd harpo research ulysses
  36. CYihnp4 blegen dartvax yale princeton mvuxv
  37.  
  38.  
  39. # ARPA clients - those hosts whom we rewrite outgoing ARPAnet mail FROM
  40. # addresses to point to the ARPAnet gateway
  41. CKchimera
  42.  
  43.  
  44. # local domain names
  45. DDHARVARD.EDU
  46.  
  47.  
  48. # hostname we should send as "us"
  49. #   mainly for being a mail client on a net
  50. DJ$w
  51. # hostnames we should consider as "us"
  52. #   mainly for being a mail server for a net, like the apollos
  53. CJharvard dasy
  54.  
  55. # our bitnet hostname
  56. DBharvard
  57. CBharvard harvunxh
  58. # our uucp hostname
  59. DUharvard
  60. CUharvard
  61.  
  62.  
  63. # my official (Domain) hostname
  64. Dj$w
  65.  
  66.  
  67. # my offical (Domain) return address
  68. DA$J
  69.  
  70.  
  71. # known top-level domains (other than ARPA domains)
  72. CDLOCAL UUCP BITNET DEC UTEXAS CSNET MAILNET CCNET
  73. # known ARPA domains
  74. FA/usr/local/lib/mail/mailhosts.arpadomains
  75. # domains with ARPA gateways
  76. CCDEC UTEXAS CSNET MAILNET
  77. # known BITNET domains, or domains with BITNET gateways
  78. CZBITNET CCNET
  79.  
  80. # Relay hosts
  81.  
  82. # local ethernet relay
  83. #define(ETHERRELAY,1)
  84. #DG
  85. # local hosts we talk to via ethernet
  86. FG/usr/local/lib/mail/mailhosts.ether
  87.  
  88. # local BITNET relay host
  89.  
  90. DFtalcott
  91. # local hosts we talk to on BITNET
  92. FF/usr/local/lib/mail/mailhosts.bitnet
  93.  
  94. # local DECNET relay host
  95.  
  96. DHhucsc
  97. # local hosts we can talk to via DECNET
  98. FH/usr/local/lib/mail/mailhosts.decnet
  99.  
  100. # local ARPA relay host
  101. #define(ARPARELAY,1)
  102. DC
  103.  
  104. # local UUCP relay host
  105. #define(UUCPRELAY,1)
  106. DE
  107. # local and remote hosts we can talk to via uucp
  108. FE/usr/local/lib/mail/mailhosts.uucp
  109.  
  110. # local hosts
  111. FL/usr/local/lib/mail/mailhosts
  112. # Use at most ONE of 'LOCALRELAY' or 'DEFAULTMAILER'
  113. #
  114. # generic local LOCAL relay - for local hosts who we don't know
  115. #define(LOCALRELAY,1)
  116. DL
  117. # DEFAULTMAILER - use this mailer for local hosts who we don't know
  118.  
  119. DMether-mailer
  120.  
  121. # DEFAULTRELAY - use this host for unknown external host/domains
  122. #define(DEFAULTRELAY,1)
  123. DN
  124.  
  125. # Relay for ALL local mail
  126.  
  127. DRendor
  128.  
  129. # Apollo gateway
  130. DOhuapollo
  131. # local hosts accessed through Apollo gateway
  132. COhucmt1 hucmt2
  133.  
  134. # husc6 gateway
  135. DPhusc6
  136. # local hosts accessed through husc6
  137. CPhusc2 harvbmb
  138.  
  139.  
  140.  
  141. #########################
  142. ###   Trusted users   ###
  143. #########################
  144.  
  145. # Trusted users
  146.  
  147. Troot
  148. Tdaemon
  149. Tuucp
  150. Tnuucp
  151. Tuucpa
  152. Trtm
  153. Tdudek
  154.  
  155.  
  156.  
  157. ############################################################
  158. #
  159. #    General configuration information
  160. #
  161. #    This information is basically just "boiler-plate"; it must be
  162. #    there, but is essentially constant.
  163. #
  164. #    Information in this file should be independent of location --
  165. #    i.e., although there are some policy decisions made, they are
  166. #    not specific to Berkeley per se.
  167. #
  168. #
  169. ############################################################
  170.  
  171. DVa0.25
  172.  
  173. ##########################
  174. ###   Special macros   ###
  175. ##########################
  176.  
  177. # my name
  178. DnMAILER-DAEMON
  179. # UNIX header format
  180. DlFrom $g  $d
  181. # delimiter (operator) characters
  182. Do.:%@!^=/[],;
  183. # format of a total name
  184. Dq$g$?x ($x)$.
  185. # SMTP login message
  186. De$j Sendmail $v/$V ready at $b
  187.  
  188. ###################
  189. ###   Options   ###
  190. ###################
  191.  
  192. # sendmail options
  193.  
  194. # location of alias file
  195. OA/usr/lib/aliases
  196. # default delivery mode (deliver in background)
  197. Odbackground
  198. # (don't) connect to "expensive" mailers
  199. Oc
  200. # rebuild aliases automatically
  201. OD
  202. # temporary file mode
  203. OF0640
  204. # default GID
  205. Og1
  206. # location of help file
  207. OH/usr/lib/sendmail.hf
  208. # log level
  209. OL5
  210. # default messages to old style
  211. Oo
  212. # queue directory
  213. OQ/usr/spool/mqueue
  214. # read timeout -- violates protocols
  215. Or2h
  216. # status file
  217. OS/usr/lib/sendmail.st
  218. # queue up everything before starting transmission
  219. #Os
  220. # default timeout interval
  221. OT3d
  222. # time zone names (V6 only)
  223. OtPST,PDT
  224. # default UID
  225. Ou1
  226. # wizard's password
  227. OWBRQTQQvpCSGFg
  228. # load average at which to Queue mail
  229. Ox6
  230. # load average at which to refuse connections
  231. OX10
  232.  
  233.  
  234. ###############################
  235. ###   Message precedences   ###
  236. ###############################
  237.  
  238. Pfirst-class=0
  239. Pspecial-delivery=100
  240. Pjunk=-100
  241.  
  242. #############################
  243. ###   Format of headers   ###
  244. #############################
  245.  
  246. H?P?Return-Path: <$g>
  247. H?R?Received: $?sfrom $s $.by $j$?r with $r$.; $b
  248. H?D?Date: $a
  249. H?F?Resent-From: $q
  250. H?F?From: $q
  251. HSubject:
  252.  
  253.  
  254. ###########################
  255. ###   Rewriting rules   ###
  256. ###########################
  257.  
  258.  
  259. ################################
  260. #  Sender Field Pre-rewriting  #
  261. ################################
  262. S1
  263.  
  264. ###################################
  265. #  Recipient Field Pre-rewriting  #
  266. ###################################
  267. S2
  268.  
  269. #################################
  270. #  Final Output Post-rewriting  #
  271. #################################
  272. S4
  273.  
  274. R@            $@                handle <> error addr
  275.  
  276. # call local externalizing ruleset
  277. R$+            $:$>8$1
  278.  
  279. # kludge for internet spec
  280. R$+<@>            $:$1
  281.  
  282. # remove focus
  283. R$*<$+>$*        $1$2$3                defocus
  284.  
  285. # change mixed-mode '@' and '!' into route-addr if appropriate
  286. R$+!$+@$+        $:$>9$1!$2@$3
  287.  
  288. # turn multiple-'@' to route-addr
  289. R$+@$+@$+        $:<:$1@$2>@$3
  290. R<:$*>@$+@$+        <@$2:$1>@$3
  291. R<:$*>@$+        $@@$2:$1
  292. R<@$*>@$+@$+        <@$2,@$1>@$3
  293. R<$*>@$+        $@@$2,$1
  294.  
  295. #################################
  296. #  Local externalization        #
  297. #################################
  298. S8
  299.  
  300. # make sure UUCP is in old form
  301. R$+<@$*.UUCP>        $@$2!$1                u@host.UUCP => host!u
  302.  
  303. # externalize local domain info
  304. R$*<@$*.LOCAL>        $@$1<@$2>            change local info
  305.  
  306. # handle other external cases
  307. R$+<@$+>        $@$1<@$2>
  308.  
  309. #################################
  310. #  UUCP -> ARPA route-addr    #
  311. #################################
  312. S9
  313. # focus on first uucp address
  314. R$+!$+@$+        $:<!$1>$2@$3
  315. # if the first bang-host is arpa-style, turn it into an '@'
  316. R<!$+.$=A>$+@$+        $@$>9$3@$1.$2@$4
  317. # else simply return as mixed-mode
  318. R<!$+>$+@$+        $@$1!$2@$3
  319.  
  320. ###########################
  321. #  Name Canonicalization  #
  322. ###########################
  323. S3
  324.  
  325. # handle "from:<>" special case
  326. R<>            $@@                turn into magic token
  327.  
  328. # basic textual canonicalization
  329. R$*<$+>$*        $2                basic RFC821/822 parsing
  330. R$+ at $+        $1@$2                "at" -> "@" for RFC 822
  331.  
  332. # handle route-addr (ARPA routing syntax)
  333. # in general, change @a,@b:user@c <=> user@c@b@a
  334. # prepare to focus
  335. #
  336. # KLUDGE - strip stupid uucp path from front of route-addrs - gd 8/6/87
  337. #  foo!@bar:user@gag <=> @bar:user@gag
  338. R$+!@$+:$+@$+        $:@$2:$3@$4
  339. # recognize route-addr
  340. R@$+            $:@$1<>
  341. # change @b,@c:user@d<@a> <=> @c:user@d<@b@a>
  342. R@$+,@$+:$+<$*>        @$2:$3<@$1$4>
  343. # change @a:user@b <=> user@b<@a>
  344. R@$+:$+<$*>        $2<@$1$3>
  345. # defocus, and treat as simple 'user@site' below
  346. R$+<$*>            $1$2
  347.  
  348. # focus on destination host.domain
  349. R$+@$+            $:$1<@$2>            focus on domain
  350. # This is repeated until focused on the rightmost '@'
  351. R$+<$+@$+>        $1$2<@$3>            move gaze right
  352. # canonical - do local rewriting
  353. R$+<@$+>        $@$>6$1<@$2>
  354.  
  355. # convert old-style addresses to a domain-based address
  356. # (has to come after recognition of user@site, else bad recursion)
  357. #
  358. # user%host
  359. R$+%$+            $:$1<@$2>            user%host
  360. R$+<@$+%$+>        $1%$2<@$3>            move right
  361. R$+<@$*>        $@$>6$1<@$2>            already canonical
  362. #
  363. # host^user or host!user
  364. # host!user is the same as 'user@host' for known local hosts, or
  365. # 'user@host.UUCP' for other hosts.
  366. R$+^$+            $1!$2                convert ^ to !
  367. R$-!$+            $:$2<@$1>            resolve uucp names
  368. R$+<@$=L>        $@$>6$1<@$2>            canonicalize local host
  369. R$+<@$->        $@$>6$1<@$2.UUCP>        add UUCP domain
  370. # harvard.ARPA!root <=> root<@harvard.ARPA>
  371. # NOTE: this relies on matching the FIRST "!" in the address
  372. R$-.$+!$+        $@$>6$3<@$1.$2>            keep domain info
  373.  
  374. #
  375. # host::user
  376. # host::user is the same as 'user@host' for known local hosts, or
  377. # 'user@host.DECNET' for other hosts.
  378. R$-::$+            $:$2<@$1>            resolve decnet names
  379. R$+<@$=L>        $@$>6$1<@$2>            canonicalize local host
  380. R$+<@$->        $@$>6$1<@$2.DECNET>        add DECNET domain
  381. # harvard.ARPA::root <=> root<@harvard.ARPA>
  382. # NOTE: this relies on matching the FIRST "::" in the address
  383. R$-.$+::$+        $@$>6$3<@$1.$2>            harvard.ARPA::root
  384.  
  385. #
  386. # host:user
  387. # ':' represents BITNET just like '!' represents UUCP - kludge for sob
  388. # host:user is the same as 'user@host' for known local hosts, or
  389. # 'user@host.BITNET' for other hosts.
  390. # NOTE: ":" parsed after "!" so that site1!site2:user parsed as
  391. #  site2:user<@site1.UUCP>
  392. R$-:$+            $:$2<@$1>            resolve BITNET names
  393. R$+<@$=L>        $@$>6$1<@$2>            canonicalize local host
  394. R$+<@$->        $@$>6$1<@$2.BITNET>        add BITNET domain
  395. # harvard.ARPA:root <=> root<@harvard.ARPA>
  396. # NOTE: this relies on matching the FIRST ":" in the address
  397. R$-.$+:$+        $@$>6$3<@$1.$2>            harvard.ARPA:root
  398.  
  399. #################################
  400. #  Local Name Canonicalization  #
  401. #################################
  402. S6
  403.  
  404. # Make canonical (using /etc/hosts)
  405. # Note that the domain may not be returned from /etc/hosts, but that's ok
  406. # Use our domain in lookup to avoid ambiguities (like seismo.harvard.edu)
  407. R$*<@$->        $:$1<@$2.$D>
  408. R$*<@$-.$D>        $:$1<@$[$2.$D$]>
  409.  
  410. # Kludge around BITNET mail bug - strip BITNET if destination host
  411. # really in DOMAIN syntax
  412. R$*<@$*$=A.BITNET>    $:$1<@$2$3>
  413.  
  414. # Convert LOCAL to our local domain
  415. R$*<@$-.LOCAL>        $1<@$2.$D>
  416. # Local hosts are recognized later by the fact that there is NO domain
  417. #  in the focus.  Strip our domain here.
  418. R$*<@$-.$D>        $1<@$2>
  419.  
  420. # Pass thru mail specifier
  421. # foo!bar;nopath<@seismo> <=> foo!bar<@seismo;nopath>
  422. R$*;$-<@$*>        $1<@$3;$2>
  423.  
  424.  
  425. ############################################################
  426. ############################################################
  427. #####
  428. #####        RULESET ZERO
  429. #####
  430. ############################################################
  431. ############################################################
  432.  
  433. S0
  434.  
  435. # handle special cases.....
  436. R@            $#local$:MAILER-DAEMON        handle <> form
  437.  
  438. # handle numeric internet spec
  439. #  do not pass host address to mailer rulesets, cause host won't recognize its
  440. #  own address.  Need the '@' so we don't tack local hostname on the end.
  441. R$*<@[$+]>        $#arpa-mailer$@[$2]$:$1<@>    numeric internet spec
  442.  
  443. ##################################
  444. #  End of ruleset zero preamble  #
  445. ##################################
  446.  
  447. #
  448. # find our host
  449. # user@ourhost <=> user
  450. R$+<@$=J>        $@$>7$1            user@harvard
  451. # Check for UUCP
  452. R$+<@$=U.UUCP>        $@$>7$1            user@harvard.UUCP
  453. # Check for BITNET
  454. R$+<@$=B.BITNET>    $@$>7$1            user@harvard.BITNET
  455.  
  456. # These are sorta dangerous, if our canonical name is not unique
  457. # user@ourhost.ARPA <=> user
  458. R$+<@$=J.ARPA>        $@$>7$1            user@harvard.ARPA (sigh)
  459. # user@ourhost.FOONET <=> user
  460. R$+<@$=J.$=D>        $@$>7$1            user@harvard.BITNET
  461.  
  462. # find our domain, and do something appropriate (send to machine harvard)
  463. R$+<@$D>        $@$>7$1@harvard        user@HARVARD.EDU
  464.  
  465. #
  466. # watch for UUCP to us
  467. # harvard!user<@site.UUCP> <=> user
  468. R$=U!$+<@$+.UUCP>    $@$>7$2            harvard!user@site.UUCP
  469. # watch for uucp-type forwarding to ARPA
  470. # harvard!user<@site.NOTUUCP> <=> user<@site.NOTUUCP>
  471. R$=U!$+<@$+>        $2<@$3>            harvard!USER@SITE.ARPA
  472. # Other forwarding to ARPA - try not to be too amibitious here, use only
  473. #  the canonical hostname
  474. # harvard:user<@site.ANYTHING> <=> user<@site.ANYTHING>
  475. R$=J:$+<@$+>        $2<@$3>            harvard:USER@SITE.ARPA
  476.  
  477. #
  478. # mailer specified addresses
  479. #
  480. # These are here for emergencies and mail testing
  481. #
  482. # force to BITNET relay
  483. R$*<@$*;bitnet>        $@$>7$1@$2;bitnet@$F
  484. R$*<@$*;ccnet>        $@$>7$1@$2;ccnet@$F
  485.  
  486.  
  487. # force to ARPA
  488. R$*<@$*;arpa>        $#arpa-mailer$@$2$:$1<@$2>
  489.  
  490. # force to uucp
  491. R$*<@$-$*;uucp>        $#uucp-mailer$@$2$:$1
  492.  
  493. # force to pathalias
  494. R$*<@$*;pathalias>    $#path-mailer$@pathalias:$2!$1
  495.  
  496. # force to ether
  497. R$+@$+<@$*;ether>    $#ether-mailer$@$3$:$1@$2
  498. R$*<@$*;ether>        $#ether-mailer$@$2$:$1<@$2>
  499.  
  500. # put relaying here, before trying to resolve addresses
  501. # Special relay rules
  502. # to local Apollo hosts - send to apollo gateway relay (1)
  503. R$*<@$=O>        $@$>7$1%$2@$O
  504. # to local hosts via husc6 - send to husc6 (1)
  505. R$*<@$=P>        $@$>7$1%$2@$P
  506.  
  507. # special domain rewriting
  508. R$*<@$*.oz>        $2.oz!$1<@munnari.UUCP>
  509. R$*<@$*.au>        $2.au!$1<@munnari.UUCP>
  510.  
  511. # UUCP domain rewriting
  512. R$*<@$*nec.com>        $2nec.com!$1<@necntc.UUCP>
  513. R$*<@$*bsw.com>        $2bsw.com!$1<@maynard.UUCP>
  514. R$*<@$*adelie.com>    $2adelie.com!$1<@adelie.UUCP>
  515. R$*<@$*ray.com>        $2ray.com!$1<@rayssd.UUCP>
  516. R$*<@$*spdcc.com>    $2spdcc.com!$1<@spdcc.UUCP>
  517. R$*<@$*cfi.com>        $2cfi.com!$1<@cfisun.UUCP>
  518. R$*<@$*calcomp.com>    $2calcomp.com!$1<@elrond.UUCP>
  519.  
  520. # UUCP-SMTP rewriting
  521. R$*<@seismo.UUCP$*>    $#tcpuucp$@seismo.css.gov$:$1
  522. R$*<@uwvax.UUCP$*>    $#tcpuucp$@spool.wisc.edu$:$1
  523. R$*<@ut-sally.UUCP$*>    $#tcpuucp$@sally.utexas.edu$:$1
  524. R$*<@cfa.UUCP$*>    $#tcpuucp$@cfa.harvard.edu$:$1
  525. R$*<@cca.UUCP$*>    $#tcpuucp$@cca.cca.com$:$1
  526. R$*<@topaz.UUCP$*>    $#tcpuucp$@topaz.rutgers.edu$:$1
  527. R$*<@mit-eddie.UUCP$*>    $#tcpuucp$@eddie.mit.edu$:$1
  528. R$*<@mit-athena.UUCP$*>    $#tcpuucp$@athena.mit.edu$:$1
  529. R$*<@think.UUCP$*>    $#tcpuucp$@think.com$:$1
  530. R$*<@bbnccv.UUCP$*>    $#tcpuucp$@ccv.bbn.com$:$1
  531. R$*<@cmcl2.UUCP$*>    $#tcpuucp$@nyu.arpa$:$1
  532. R$*<@gymble.UUCP$*>    $#tcpuucp$@gymble.umd.edu$:$1
  533. R$*<@rochester.UUCP$*>    $#tcpuucp$@cs.rochester.edu$:$1
  534.  
  535.  
  536. #
  537. # non-local addresses
  538. #
  539.  
  540. # resolve UUCP links
  541. # watch for hosts listed in L.sys but should be pathaliased anyway
  542. R$*<@$=Y.UUCP>        $#path-mailer$@pathalias$:$2!$1
  543. # uucp direct to non-local host
  544. R$*<@$=E.UUCP>        $#uucp-mailer$@$2$:$1    user@host.UUCP
  545. R$*<@$=E.UUCP;nopath>    $#uucp-mailer$@$2$:$1
  546.  
  547. # uucp (non-direct) to non-local host - try pathalias
  548. R$*<@$*.UUCP>        $#path-mailer$@pathalias$:$2!$1
  549. # Already tried pathalias, so remove "nopath" specifier
  550. R$*<@$*;nopath>        $1<@$2>            already tried pathalias
  551. R$*;nopath        $1            pathaliased to this host
  552.  
  553. # uucp to unknown host - try uucp anyway
  554. R$*<@$*.UUCP>        $#uucp-mailer$@$2$:$1    user@somewhere.UUCP
  555.  
  556. # BITNET to non-local host - send to local BITNET relay
  557. R$*<@$*.$=Z>        $@$>7$1@$2.$3@$F    user@somewhere.BITNET
  558.  
  559.  
  560. # DECNET to non-local host - send to local DECNET relay
  561. R$*<@$*.DECNET>        $@$>7$1@$2.DECNET@$H    user@somewhere.DECNET
  562.  
  563.  
  564. # ARPA to non-local host direct
  565. R$*<@$-.$*$=A>        $#arpa-mailer$@$2.$3$4$:$1<@$2.$3$4>
  566. R$*<@$*.DEC>        $#arpa-mailer$@decwrl.dec.com$:$1<@$2.DEC>
  567. R$*<@$*.UTEXAS>        $#arpa-mailer$@sally.utexas.edu$:$1<@$2.UTEXAS>
  568. R$*<@$*.CSNET>        $#arpa-mailer$@relay.cs.net$:$1<@$2.CSNET>
  569. R$*<@$*.MAILNET>    $#arpa-mailer$@mit-multics.arpa$:$1<@$2.MAILNET>
  570.  
  571. #
  572. # resolve local addresses
  573. #
  574.  
  575.  
  576.  
  577. # BITNET to local host - send to local BITNET relay
  578. R$*<@$=F>        $@$>7$1@$2.BITNET@$F
  579.  
  580.  
  581. # decnet to local host - send to local DECNET relay
  582. R$*<@$=H>        $@$>7$1@$2.DECNET@$H
  583.  
  584.  
  585. # ethernet to local host direct
  586. R$+@$+<@$=G>        $#ether-mailer$@$3$:$1@$2
  587. R$*<@$=G>        $#ether-mailer$@$2$:$1<@$2>
  588.  
  589. # uucp to local host
  590. R$*<@$=E>        $#uucp-mailer$@$2$:$1        person@localuucphost
  591.  
  592. # unknown local host
  593. # try default mailer
  594. R$*<@$->        $#$M$@$2$:$1
  595.  
  596. # unknown destination host/domain - bounce
  597. R$*<@$*>        $#error$@x$:$2: Unknown host/domain
  598.  
  599. # remaining names must be local
  600. # Relay all local mail
  601. R$+            $@$>7$1@$R        everything else
  602.  
  603.  
  604.  
  605. #####################################################
  606. #  Code to retry through Rulesets 3 and 0           #
  607. #####################################################
  608. S7
  609.  
  610. # Make canonical
  611. R$+            $:$>3$1
  612. # Retry
  613. R$+            $@$>0$1
  614.  
  615.  
  616. ############################################################
  617. ############################################################
  618. #####
  619. #####        Local and Program Mailer specification
  620. #####
  621. ############################################################
  622. ############################################################
  623.  
  624. Mlocal,    S=11, R=12, F=rlsFDmn, A=mail -d $u,
  625.     P=/toe/guest/dudek/bin/dmail
  626. Mprog, S=11, R=12, F=lsF, A=sh -c $u,
  627.     P=/toe/guest/dudek/bin/dmail
  628. Mtty,    P=/usr/local/bin/send, F=rlsn, S=11, R=12, A=send $u, M=5000
  629.  
  630.  
  631. S10
  632.  
  633. S11
  634. R$+            $:$>10$1
  635. R@            MAILER-DAEMON        errors to mailer-daemon???
  636.  
  637. S12
  638. R$+            $:$>10$1
  639.  
  640. ############################################################
  641. ############################################################
  642. #####
  643. #####        LOCAL(!!) smtp (tcp/ip) mailer spec
  644. #####
  645. ############################################################
  646. ############################################################
  647.  
  648. Mether-mailer, S=14, R=15, F=RmsFDuX, E=\r\n,
  649.     P=/toe/guest/dudek/bin/dmail, A=dmail $u
  650.  
  651. S13
  652. # convert to external now, so we can be sure there is an '@' for
  653. # crotchety SMTP's (like Wollongong)
  654. R$+            $:$>8$1
  655.  
  656.  
  657. S14
  658. R$+            $:$>13$1            externalize
  659.  
  660. R$*<@$+>        $@$1<@$2>            already ok
  661. R$+            $:$1<@$J>            tack on our name
  662. # sending within our own domain, so ok not to append our domain to hostname
  663. R$+<@$-.$D>        $@$1<@$2>            strip our domain name
  664.  
  665. S15
  666. R$+            $:$>13$1            externalize
  667.  
  668. ############################################################
  669. ############################################################
  670. #####
  671. #####        DECNET Mailer specification
  672. #####
  673. ############################################################
  674. ############################################################
  675.  
  676. Mdecnet-mailer,    F=mnsFDR, S=16, R=16, A=decnetmail $f $x $h $u,
  677.     P=/toe/guest/dudek/bin/dmail
  678.  
  679. S16
  680.  
  681. ############################################################
  682. ############################################################
  683. #####
  684. #####        UUCP Mailer specification
  685. #####
  686. ############################################################
  687. ############################################################
  688.  
  689. Muucp-mailer, S=20, R=21, M=150000, F=RsFDhuUm, A=uux - -a$f -gA $h!rmail ($u),
  690.     P=/toe/guest/dudek/bin/dmail
  691. Mtcpuucp, S=20, R=21, F=RmsFDuX,
  692.     P=/toe/guest/dudek/bin/dmail, A=dmail $u
  693.  
  694. S19
  695. R$+            $:$>8$1            convert to external form
  696.  
  697. # Change internal non-UUCP routing to '!' syntax
  698. # First, change internal '@'s to '%'s
  699. R$+@$+<$+>        $1%$2<$3>        change smith@foo... to smith%foo
  700. # Change smith%foo%bar... to foo!smith%bar...
  701. R$+%$+%$+<$+>        $2!$1%$3<$4>        change smith%foo%bar... to !
  702. # Change foo!smith%bar... to bar!foo!smith...
  703. R$+%$+<$+>        $2!$1<$3>        change smith%foo... to !
  704.  
  705. R$+<@$+>        $@$2!$1            u@host.ARPA => host.ARPA!u
  706.  
  707. S20
  708. R$+            $:$>19$1        convert to old style
  709. R$=U!$+            $2            strip local name
  710. R$+            $:$U!$1            stick on our host name
  711.  
  712. S21
  713. R$+            $:$>19$1        convert to old style
  714.  
  715. ############################################################
  716. ############################################################
  717. #####
  718. #####        Arpanet TCP Mailer specification
  719. #####
  720. ############################################################
  721. ############################################################
  722.  
  723. Marpa-mailer, S=23, R=24, E=\r\n, F=RmsDFMuXL,
  724.     P=/toe/guest/dudek/bin/dmail, A=dmail $u
  725.  
  726. S22
  727. # externalize now, so sender looks right if we stick on our own address
  728. R$+            $:$>8$1
  729.  
  730. # output our mail clients as harvard.harvard.edu
  731. R$+<@$=J>        $@$1<@$A>
  732.  
  733. # output our ARPA clients as harvard.harvard.edu
  734. #  this means that users on these arpa clients MUST have mailboxes
  735. #  on this machine
  736. R$+<@$=K>        $@$1<@$A>
  737.  
  738.  
  739. # output our mail relay as harvard.harvard.edu
  740. R$+<@$R>        $@$1<@$A>
  741.  
  742.  
  743. # output local hosts in user%host@harvard.harvard.edu syntax
  744. R$+@$+<@$->        $@$1@$2@$3<@$A>        broken local hosts
  745. R$+<@$->        $@$1%$2<@$A>        local hosts
  746.  
  747. # handle other external cases
  748. R$+<@$+>        $@$1<@$2>
  749.  
  750. # kludge for numeric internet spec
  751. R$+<@>            $@$1
  752.  
  753. # otherwise, just stick on our hostname
  754. R$+            $@$1<@$A>
  755.  
  756. S23
  757. R$+            $:$>22$1        externalize
  758.  
  759. # forward from domains other than ARPA domains
  760. R$+@$+<@$+.$~A>        $@$1@$2@$3.$4<@$A>    broken user@host.DOMAIN
  761. R$+<@$+.$~A>        $@$1%$2.$3<@$A>        user@host.DOMAIN
  762.  
  763. S24
  764. R$+            $:$>22$1        externalize
  765.  
  766. ############################################################
  767. ############################################################
  768. #####
  769. #####        BITNET Mailer specification
  770. #####
  771. ############################################################
  772. ############################################################
  773.  
  774.  
  775. Mbitnet-mailer, S=25, R=26, M=150000, F=RSsnFD, A=rscsmail $f $h $u,
  776.     P=/toe/guest/dudek/bin/dmail
  777. Mccnet-mailer, F=RSsnFD, S=26, R=27, M=100000, A=rscsmail $f$h$u cuvma mailer,
  778.     P=/toe/guest/dudek/bin/dmail
  779.  
  780. S25
  781. R$+            $:$>8$1                externalize
  782.  
  783. R$*<@$*.BITNET>        $@$1@$2.BITNET
  784. R$+<@$+>        $1%$2
  785. R$+            $:$1@$B.BITNET            stick on our name
  786.  
  787. S26
  788. R$+            $:$>8$1                externalize
  789.  
  790. ############################################################
  791. ############################################################
  792. #####
  793. #####        PATHALIAS Mailer specification
  794. #####
  795. ############################################################
  796. ############################################################
  797.  
  798. Mpath-mailer, S=28, R=28, F=fhume,
  799.     P=/toe/guest/dudek/bin/pathsend,
  800.     A=pathsend -m /toe/guest/dudek/bin/dsendmail $u
  801.  
  802. S28
  803.  
  804.