|
|
1.1 root 1: ############################################################
2: ############################################################
3: #####
4: ##### SENDMAIL CONFIGURATION FILE
5: #####
6: ##### Prototype for Arpanet (TCP) only sites. Modify this
7: ##### file as appropriate for your configuration.
8: #####
9: ##### @(#)arpaproto.mc 4.1 7/25/83
10: #####
11: ############################################################
12: ############################################################
13:
14:
15:
16: ############################################################
17: ### local info
18: ############################################################
19:
20: # internet hostname
21: DA$w
22:
23: # domain
24: DDARPA
25: CDARPA
26:
27: # official hostname
28: Dj$w.$D
29:
30: ############################################################
31: #
32: # General configuration information
33: #
34: # This information is basically just "boiler-plate"; it must be
35: # there, but is essentially constant.
36: #
37: # Information in this file should be independent of location --
38: # i.e., although there are some policy decisions made, they are
39: # not specific to Berkeley per se.
40: #
41: # @(#)base.m4 4.3 8/30/83
42: #
43: ############################################################
44:
45: # @(#)version.m4 4.7 8/31/83
46:
47: DV4.7
48:
49:
50: ##########################
51: ### Special macros ###
52: ##########################
53:
54: # my name
55: DnMAILER-DAEMON
56: # UNIX header format
57: DlFrom $g $d
58: # delimiter (operator) characters
59: Do.:%@!^=/[]
60: # format of a total name
61: Dq$g$?x ($x)$.
62: # SMTP login message
63: De$j Sendmail $v/$V ready at $b
64:
65: # forwarding host -- redefine this if you can't talk to the relay directly
66: DF$R
67:
68: ###################
69: ### Options ###
70: ###################
71:
72: # location of alias file
73: OA/usr/lib/aliases
74: # default delivery mode (deliver in background)
75: Odbackground
76: # (don't) connect to "expensive" mailers
77: #Oc
78: # temporary file mode
79: OF0644
80: # default GID
81: Og1
82: # location of help file
83: OH/usr/lib/sendmail.hf
84: # log level
85: OL9
86: # default messages to old style
87: Oo
88: # queue directory
89: OQ/usr/spool/mqueue
90: # read timeout -- violates protocols
91: Or2h
92: # status file
93: OS/usr/lib/sendmail.st
94: # queue up everything before starting transmission
95: Os
96: # default timeout interval
97: OT3d
98: # time zone names (V6 only)
99: OtPST,PDT
100: # default UID
101: Ou1
102: # wizard's password
103: OWa/FjIfuGKXyc2
104:
105: ###############################
106: ### Message precedences ###
107: ###############################
108:
109: Pfirst-class=0
110: Pspecial-delivery=100
111: Pjunk=-100
112:
113: #########################
114: ### Trusted users ###
115: #########################
116:
117: Troot
118: Tdaemon
119: Tuucp
120: Teric
121: Tnetwork
122:
123: #############################
124: ### Format of headers ###
125: #############################
126:
127: H?P?Return-Path: <$g>
128: HReceived: $?sfrom $s $.by $j ($v/$V)
129: id $i; $b
130: H?D?Resent-Date: $a
131: H?D?Date: $a
132: H?F?Resent-From: $q
133: H?F?From: $q
134: H?x?Full-Name: $x
135: HSubject:
136: # HPosted-Date: $a
137: # H?l?Received-Date: $b
138: H?M?Resent-Message-Id: <$t.$i@$j>
139: H?M?Message-Id: <$t.$i@$j>
140:
141: ###########################
142: ### Rewriting rules ###
143: ###########################
144:
145:
146: ################################
147: # Sender Field Pre-rewriting #
148: ################################
149: S1
150: #R$*<$*>$* $1$2$3 defocus
151:
152: ###################################
153: # Recipient Field Pre-rewriting #
154: ###################################
155: S2
156: #R$*<$*>$* $1$2$3 defocus
157:
158: #################################
159: # Final Output Post-rewriting #
160: #################################
161: S4
162:
163: R@ $@ handle <> error addr
164:
165: # externalize local domain info
166: R$*<$*LOCAL>$* $1<$2$D>$3 change local info
167: R$*<$+>$* $1$2$3 defocus
168: R@$+:$+:$+ $@@$1,$2:$3 <route-addr> canonical
169:
170: # UUCP must always be presented in old form
171: R$+@$-.UUCP $2!$1 [email protected] => h!u
172:
173: # delete duplicate local names -- mostly for arpaproto.mc
174: R$+%$=w@$=w $1@$3 u%UCB@UCB => u@UCB
175: R$+%$=w@$=w.ARPA $1@$3.ARPA u%UCB@UCB => u@UCB
176:
177: ###########################
178: # Name Canonicalization #
179: ###########################
180: S3
181:
182: # handle "from:<>" special case
183: R<> $@@ turn into magic token
184:
185: # basic textual canonicalization
186: R$*<$+>$* $2 basic RFC821/822 parsing
187: R$+ at $+ $1@$2 "at" -> "@" for RFC 822
188: R$*<$*>$* $1$2$3 in case recursive
189:
190: # make sure <@a,@b,@c:user@d> syntax is easy to parse -- undone later
191: R@$+,$+ @$1:$2 change all "," to ":"
192:
193: # localize and dispose of domain-based addresses
194: R@$+:$+ $@$>6<@$1>:$2 handle <route-addr>
195:
196: # more miscellaneous cleanup
197: R$+ $:$>8$1 host dependent cleanup
198: R$+:$*;@$+ $@$1:$2;@$3 list syntax
199: R$+@$+ $:$1<@$2> focus on domain
200: R$+<$+@$+> $1$2<@$3> move gaze right
201: R$+<@$+> $@$>6$1<@$2> already canonical
202:
203: # convert old-style addresses to a domain-based address
204: R$+%$+ $@$>6$1<@$2> user%host
205: R$-:$+ $@$>6$2<@$1> host:user
206: R$-.$+ $@$>6$2<@$1> host.user
207: R$+^$+ $1!$2 convert ^ to !
208: R$-!$+ $@$>6$2<@$1.UUCP> resolve uucp names
209: R$-=$+ $@$>6$2<@$1.BITNET> resolve bitnet names
210:
211:
212: ############################################################
213: ############################################################
214: #####
215: ##### RULESET ZERO PREAMBLE
216: #####
217: ##### The beginning of ruleset zero is constant through all
218: ##### configurations.
219: #####
220: ##### @(#)zerobase.m4 4.1 7/25/83
221: #####
222: ############################################################
223: ############################################################
224:
225: S0
226:
227: # first make canonical
228: R$*<$*>$* $1$2$3 defocus
229: R$+ $:$>3$1 make canonical
230:
231: # handle special cases.....
232: R@ $#local$:MAILER-DAEMON handle <> form
233: R$*<@[$+]>$* $#tcp$@[$2]$:$1@[$2]$3 numeric internet spec
234:
235: # arrange for local names to be fully qualified
236: R$*<$*$=S>$* $1<$2$3.LOCAL>$4 user@etherhost
237: R$*<$*$=Z>$* $1<$2$3.LOCAL>$4 user@berkhost
238: R$*<$+.ARPA.LOCAL>$* $1<$2.ARPA>$3 because ARPA is a host
239:
240: # now delete the local info
241: R$*<$*$=w.LOCAL>$* $1<$2>$4 thishost.LOCAL
242: R$*<$*$=w.ARPA>$* $1<$2>$4 thishost.ARPA
243: R$*<$*$=w.UUCP>$* $1<$2>$4 thishost.UUCP
244: R$*<$*$=w>$* $1<$2>$4 thishost
245: R$*<$*.>$* $1<$2>$3 drop trailing dot
246: R<@>:$* $@$>0$1 retry after route strip
247: R$*<@> $@$>0$1 strip null trash & retry
248:
249: # forward around hosts with communication problems
250: R$*<@$=F.LOCAL>$* $#ether$@$F$:$1<@$2.LOCAL>$3 reroute message
251:
252: ##################################
253: # End of ruleset zero preamble #
254: ##################################
255:
256:
257: ###############################################
258: ### Machine dependent part of rulset zero ###
259: ###############################################
260:
261: # resolve names we can handle locally
262: R$*<@$*$-.ARPA>$* $#tcp$@$3$:$1<@$2$3.ARPA>$4 [email protected]
263: R$*<@$*$->$* $#tcp$@$3$:$1<@$2$3>$4 [email protected]
264:
265: # everything else must be a local name
266: R$+ $#local$:$1 local names
267:
268: ############################################################
269: ############################################################
270: #####
271: ##### Local and Program Mailer specification
272: #####
273: ##### @(#)localm.m4 4.1 7/25/83
274: #####
275: ############################################################
276: ############################################################
277:
278: Mlocal, P=/bin/mail, F=rlsDFMmn, S=10, R=20, A=mail -d $u
279: Mprog, P=/bin/sh, F=lsDFMe, S=10, R=20, A=sh -c $u
280:
281: S10
282: R@ MAILER-DAEMON errors to mailer-daemon
283:
284: ############################################################
285: ############################################################
286: #####
287: ##### Arpanet TCP Mailer specification
288: #####
289: ##### @(#)tcpm.m4 4.1 7/25/83
290: #####
291: ############################################################
292: ############################################################
293:
294: Mtcp, P=[IPC], F=msDFMueXL, S=14, R=14, A=IPC $h, E=\r\n
295:
296: S14
297:
298: # pass <route-addr>'s through
299: R<@$+>$* $@<@$1>$2 resolve <route-addr>
300:
301: # map colons to dots everywhere.....
302: R$*:$* $1.$2 map colons to dots
303:
304: # handle the simple case....
305: R$+<@$-.ARPA> $@$1<@$2.ARPA> [email protected]
306:
307: # fully qualify computer center names so the rest works nicely
308: R$+<@$+.CC> $1<@$2.CC.LOCAL> [email protected]
309:
310: # output local hosts in user%host@Berkeley syntax
311: R$+<@LOCAL> $@$1<@$A> local names
312: R$+<@$+.LOCAL> $@$1%$2<@$A> local hosts
313: R$+<@$*$=S> $@$1%$2$3<@$A>
314: R$+<@$*$=Z> $@$1%$2$3<@$A>
315:
316: # handle other external cases
317: R$+<@$-> $@$1<@$2> no .ARPA on simple names
318: R$+<@$+.$-.ARPA> $@$1%$2<@$3.ARPA> approximate something
319: R$+<@[$+]> $@$1<@[$2]> already ok
320:
321: # convert remaining addresses to old format and externalize appropriately
322: R$+ $:$>5$1 => old format
323: R$-:$+ $@$1.$2<@$A> convert berk hosts
324: R$+<@$+> $@$1%$2<@$A> pessmize
325: R$+ $:$1%$w<@$A> tack on our hostname
326: R$+%$=R<@$=A> $1<@$3> strip unneeded relay
327:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.