|
|
1.1 root 1: ############################################################
2: ############################################################
3: #####
4: ##### SENDMAIL CONFIGURATION FILE
5: #####
6: ##### @(#)statvax.mc 4.1 7/25/83
7: #####
8: ############################################################
9: ############################################################
10:
11:
12:
13: ############################################################
14: ### local info
15: ############################################################
16:
17: # internet hostname
18: Cwucbstatvax statvax
19:
20: #################################################
21: #
22: # General configuration information
23: #
24: # @(#)csbase.m4 4.3 8/21/83
25: #
26: #################################################
27:
28: ######################
29: # General Macros #
30: ######################
31:
32: # our arpanet gateway
33: DABerkeley
34: CABerkeley UCB ucbc70 c70 UCB-C70 u UCB-VAX ucbvax
35:
36: # local domain names
37: DDBERKELEY
38: CDBERKELEY UCB ucbc70 c70 ucb-c70 u UCB-VAX ucbvax
39:
40: # major relay host
41: DRUCBVAX
42: CRucbvax vax k
43:
44: # my official hostname
45: Dj$w.ARPA
46:
47: # known SMTP/ethernet hosts (this domain only) -- only $R need be complete
48: CSucbarpa arpa
49: CSucbbach bach ucbstatvax statvax
50: CSucbbrahms brahms mathstat
51: CSucbcad cad cad-a
52: CSucbcalder calder
53: CSucbcartan cartan
54: CSucbcory cory ucbokeeffe okeeffe
55: CSucbdali dali
56: CSucbdegas degas
57: # CSucbear ear
58: CSucbernie ernie
59: CSucbesvax esvax
60: CSucbic ic ucbic-ec ic-ec cad-b cad-ic
61: CSucbicw icw ucbicw-ec icw-ec cad-c cad-icw
62: CSucbingres ingres
63: CSucbkim kim
64: CSucbmatisse matisse
65: CSucbmedea medea
66: CSucbmerlin merlin
67: CSucbmiro miro
68: CSucbmonet monet
69: CSucboz oz
70: CSucbvax
71: CSucbweyl weyl
72:
73: # known top-level domains
74: CTLOCAL ARPA UUCP BITNET CC
75:
76: ############################################################
77: #
78: # General configuration information
79: #
80: # This information is basically just "boiler-plate"; it must be
81: # there, but is essentially constant.
82: #
83: # Information in this file should be independent of location --
84: # i.e., although there are some policy decisions made, they are
85: # not specific to Berkeley per se.
86: #
87: # @(#)base.m4 4.3 8/30/83
88: #
89: ############################################################
90:
91: # @(#)version.m4 4.7 8/31/83
92:
93: DV4.7
94:
95:
96: ##########################
97: ### Special macros ###
98: ##########################
99:
100: # my name
101: DnMAILER-DAEMON
102: # UNIX header format
103: DlFrom $g $d
104: # delimiter (operator) characters
105: Do.:%@!^=/[]
106: # format of a total name
107: Dq$g$?x ($x)$.
108: # SMTP login message
109: De$j Sendmail $v/$V ready at $b
110:
111: # forwarding host -- redefine this if you can't talk to the relay directly
112: DF$R
113:
114: ###################
115: ### Options ###
116: ###################
117:
118: # location of alias file
119: OA/usr/lib/aliases
120: # default delivery mode (deliver in background)
121: Odbackground
122: # (don't) connect to "expensive" mailers
123: #Oc
124: # temporary file mode
125: OF0644
126: # default GID
127: Og1
128: # location of help file
129: OH/usr/lib/sendmail.hf
130: # log level
131: OL9
132: # default messages to old style
133: Oo
134: # queue directory
135: OQ/usr/spool/mqueue
136: # read timeout -- violates protocols
137: Or2h
138: # status file
139: OS/usr/lib/sendmail.st
140: # queue up everything before starting transmission
141: Os
142: # default timeout interval
143: OT3d
144: # time zone names (V6 only)
145: OtPST,PDT
146: # default UID
147: Ou1
148: # wizard's password
149: OWa/FjIfuGKXyc2
150:
151: ###############################
152: ### Message precedences ###
153: ###############################
154:
155: Pfirst-class=0
156: Pspecial-delivery=100
157: Pjunk=-100
158:
159: #########################
160: ### Trusted users ###
161: #########################
162:
163: Troot
164: Tdaemon
165: Tuucp
166: Teric
167: Tnetwork
168:
169: #############################
170: ### Format of headers ###
171: #############################
172:
173: H?P?Return-Path: <$g>
174: HReceived: $?sfrom $s $.by $j ($v/$V)
175: id $i; $b
176: H?D?Resent-Date: $a
177: H?D?Date: $a
178: H?F?Resent-From: $q
179: H?F?From: $q
180: H?x?Full-Name: $x
181: HSubject:
182: # HPosted-Date: $a
183: # H?l?Received-Date: $b
184: H?M?Resent-Message-Id: <$t.$i@$j>
185: H?M?Message-Id: <$t.$i@$j>
186:
187: ###########################
188: ### Rewriting rules ###
189: ###########################
190:
191:
192: ################################
193: # Sender Field Pre-rewriting #
194: ################################
195: S1
196: #R$*<$*>$* $1$2$3 defocus
197:
198: ###################################
199: # Recipient Field Pre-rewriting #
200: ###################################
201: S2
202: #R$*<$*>$* $1$2$3 defocus
203:
204: #################################
205: # Final Output Post-rewriting #
206: #################################
207: S4
208:
209: R@ $@ handle <> error addr
210:
211: # externalize local domain info
212: R$*<$*LOCAL>$* $1<$2$D>$3 change local info
213: R$*<$+>$* $1$2$3 defocus
214: R@$+:$+:$+ $@@$1,$2:$3 <route-addr> canonical
215:
216: # UUCP must always be presented in old form
217: R$+@$-.UUCP $2!$1 [email protected] => h!u
218:
219: # delete duplicate local names -- mostly for arpaproto.mc
220: R$+%$=w@$=w $1@$3 u%UCB@UCB => u@UCB
221: R$+%$=w@$=w.ARPA $1@$3.ARPA u%UCB@UCB => u@UCB
222:
223: ###########################
224: # Name Canonicalization #
225: ###########################
226: S3
227:
228: # handle "from:<>" special case
229: R<> $@@ turn into magic token
230:
231: # basic textual canonicalization
232: R$*<$+>$* $2 basic RFC821/822 parsing
233: R$+ at $+ $1@$2 "at" -> "@" for RFC 822
234: R$*<$*>$* $1$2$3 in case recursive
235:
236: # make sure <@a,@b,@c:user@d> syntax is easy to parse -- undone later
237: R@$+,$+ @$1:$2 change all "," to ":"
238:
239: # localize and dispose of domain-based addresses
240: R@$+:$+ $@$>6<@$1>:$2 handle <route-addr>
241:
242: # more miscellaneous cleanup
243: R$+ $:$>8$1 host dependent cleanup
244: R$+:$*;@$+ $@$1:$2;@$3 list syntax
245: R$+@$+ $:$1<@$2> focus on domain
246: R$+<$+@$+> $1$2<@$3> move gaze right
247: R$+<@$+> $@$>6$1<@$2> already canonical
248:
249: # convert old-style addresses to a domain-based address
250: R$+%$+ $@$>6$1<@$2> user%host
251: R$-:$+ $@$>6$2<@$1> host:user
252: R$-.$+ $@$>6$2<@$1> host.user
253: R$+^$+ $1!$2 convert ^ to !
254: R$-!$+ $@$>6$2<@$1.UUCP> resolve uucp names
255: R$-=$+ $@$>6$2<@$1.BITNET> resolve bitnet names
256:
257:
258: #######################
259: # Rewriting rules #
260: #######################
261:
262: ##### special local conversions
263: S6
264: R$*<@$*$=D>$* $1<@$2LOCAL>$4 convert local domain
265: R$*<@$*$=D.ARPA>$* $1<@$2LOCAL>$4
266: R$+%$+<@LOCAL> $1<@$2.LOCAL> hack for % syntax
267: R$*<@$+.$=T.$=T>$* $1<@$2.$3>$5 make UUCP top level
268: R$*<@$+.$=T.$=T>$* $1<@$2.$3>$5 make UUCP top level
269: R$*<@$*$=C.$=T>$* $1<@$2$3>$5 adjust CC hosts (ucbvax)
270: R$*<@$*$=C>$* $1<@$2$3.CC>$4 adjust CC hosts (ucbvax)
271:
272: ############################################################
273: ############################################################
274: #####
275: ##### Local and Program Mailer specification
276: #####
277: ##### @(#)localm.m4 4.1 7/25/83
278: #####
279: ############################################################
280: ############################################################
281:
282: Mlocal, P=/bin/mail, F=rlsDFMmn, S=10, R=20, A=mail -d $u
283: Mprog, P=/bin/sh, F=lsDFMe, S=10, R=20, A=sh -c $u
284:
285: S10
286: R@ MAILER-DAEMON errors to mailer-daemon
287:
288: ############################################################
289: ############################################################
290: #####
291: ##### Ethernet Mailer specification
292: #####
293: ##### @(#)etherm.m4 4.1 7/25/83
294: #####
295: ############################################################
296: ############################################################
297:
298: Mether, P=[IPC], F=msDFMueCX, S=11, R=21, A=IPC $h
299:
300: S11
301: R$*<@$+>$* $@$1<@$2>$3 already ok
302: R$+ $@$1<@$w> tack on our hostname
303:
304: S21
305:
306:
307: ############################################################
308: ############################################################
309: #####
310: ##### BASIC ETHERNET RULES
311: #####
312: ##### @(#)ether.m4 4.1 7/25/83
313: #####
314: ############################################################
315: ############################################################
316:
317:
318:
319: ############################################################
320: ############################################################
321: #####
322: ##### RULESET ZERO PREAMBLE
323: #####
324: ##### The beginning of ruleset zero is constant through all
325: ##### configurations.
326: #####
327: ##### @(#)zerobase.m4 4.1 7/25/83
328: #####
329: ############################################################
330: ############################################################
331:
332: S0
333:
334: # first make canonical
335: R$*<$*>$* $1$2$3 defocus
336: R$+ $:$>3$1 make canonical
337:
338: # handle special cases.....
339: R@ $#local$:MAILER-DAEMON handle <> form
340: R$*<@[$+]>$* $#tcp$@[$2]$:$1@[$2]$3 numeric internet spec
341:
342: # arrange for local names to be fully qualified
343: R$*<$*$=S>$* $1<$2$3.LOCAL>$4 user@etherhost
344: R$*<$*$=Z>$* $1<$2$3.LOCAL>$4 user@berkhost
345: R$*<$+.ARPA.LOCAL>$* $1<$2.ARPA>$3 because ARPA is a host
346:
347: # now delete the local info
348: R$*<$*$=w.LOCAL>$* $1<$2>$4 thishost.LOCAL
349: R$*<$*$=w.ARPA>$* $1<$2>$4 thishost.ARPA
350: R$*<$*$=w.UUCP>$* $1<$2>$4 thishost.UUCP
351: R$*<$*$=w>$* $1<$2>$4 thishost
352: R$*<$*.>$* $1<$2>$3 drop trailing dot
353: R<@>:$* $@$>0$1 retry after route strip
354: R$*<@> $@$>0$1 strip null trash & retry
355:
356: # forward around hosts with communication problems
357: R$*<@$=F.LOCAL>$* $#ether$@$F$:$1<@$2.LOCAL>$3 reroute message
358:
359: ##################################
360: # End of ruleset zero preamble #
361: ##################################
362:
363:
364: ################################################
365: ### Machine dependent part of ruleset zero ###
366: ################################################
367:
368: # resolve names that can go via the ethernet
369: R$*<@$*$=S.LOCAL>$* $#ether$@$3$:$1<@$2$3.$D>$4 user@etherhost
370:
371: # other non-local names will be kicked upstairs
372: R$*<@$+>$* $#ether$@$F$:$1<@$2>$3 [email protected]
373:
374: # remaining names must be local
375: R$+ $#local$:$1 everything else
376:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.