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