]> git.sur5r.net Git - openldap/blob - clients/mail500/sendmail.cf
Update build environment to fix VPATH support.
[openldap] / clients / mail500 / sendmail.cf
1 # Mostly rfc1123 compliant sendmail.cf
2 #
3 # Mail sendmail-admins-request@itd.umich.edu to join
4 # sendmail-admins@itd.umich.edu. sendmail-admins carries information
5 # regarding this sendmail.cf, including announcements of changes
6 # and discussions of interest to admins.
7 #
8 DWtotalrecall
9 Dw$W.rs.itd.umich.edu
10
11 DBcunyvm.cuny.edu
12 DUdestroyer.rs.itd.umich.edu
13
14 DV2.2
15 De$j sendmail ($v/$V) ready at $b
16 Dj$w
17 DlFrom $g $d
18 Dnmailer-daemon
19 Do.:%@!^=/[]
20 Dq$?x\"$x\" <$g>$|$g$.
21
22 OA/etc/aliases
23 OQ/var/spool/mqueue
24 OH/usr/lib/sendmail.hf
25 OS/usr/lib/sendmail.st
26 OP
27 OD
28 OX10
29 Ox5
30 Ou1
31 Og1
32 Odb
33 OF0600
34 OL9
35 Oo
36 Or15m
37 Os
38 OT3d
39
40 H?P?Return-Path: <$g>
41 HReceived: $?sfrom $s $.by $j ($v/$V)
42         $?rwith $r $.id $i; $b
43 H?D?Resent-Date: $a
44 H?F?Resent-From: $q
45 H?M?Resent-Message-Id: <$t.$i@$j>
46 H?M?Message-Id: <$t.$i@$j>
47 H?D?Date: $a
48 H?x?Full-Name: $x
49 H?F?From: $q
50
51 Troot uucp daemon
52
53 Pspecial-delivery=100
54 Pfirst-class=0
55 Pjunk=-100
56
57 # Organization:
58 #
59 #       ruleset 3 and friends
60 #               focus addresses, don't screw with them
61 #       ruleset 0 and friends
62 #               beat the hell out of addresses, convert them to
63 #               their deliverable form
64 #       mailers and associated rulesets
65 #               * focused addresses are body addresses, and should be
66 #                 left as they are
67 #               * unfocused addresses are envelope addresses, and should
68 #                 be converted to the mailers format
69 #       ruleset 4
70 #               remove focus on all addresses
71
72 # All addresses are passed through this rule. It functions by finding
73 # the host to delivery to, and marking it with <>
74 S3
75 R$*<$+>$*                          $2                   remove comments
76 R$+:$*;                         $@ $1:$2;               done if list
77 R$*@$+                          $: $>5$1@$2             focus rfc822 addresses
78 R$+!$+                          $: $>6$1!$2             focus uucp
79 R$*<@$+>$*                      $: $1<@$[$2$]>$3        canonicalize
80 R$*<$+>$*                       $@ $1<$2>$3             done if focused
81 R$+%$+                          $: $1@$2                a%b -> a@b
82 R$+@$+%$+                          $1%$2@$3             a@b%c -> a%b@c
83 R$+@$+                          $: $>3$1@$2             try again...
84
85 # Find the "next hop" in normal rfc822 syntax. These rules
86 # all return upon marking the next hop with <>
87 S5
88 R@$+,@$+:$+                     $@ <@$1>,@$2:$3         @a,@b:@c -> <@a>,@b:c
89 R@$+:$+                         $@ <@$1>:$2             @a:b -> <@a>:b
90 R$+@$+                          $@ $1<@$2>              a@b -> a<@b>
91
92 # Focus bang style addresses. Won't change already focused addresses.
93 # Strips .uucp in bang paths, and converts domain syntax to rfc822 adresses.
94 S6
95 R$*<$+>$*                       $@ $1<$2>$3             already focused
96 R$+!$+                          $: <$1!>$2              a!b -> <a!>b
97 R<$+.uucp!>$+                      <$1!>$2              <a.uucp!>b -> <a!>b
98
99 # Find a mailer. This involves finding the "real" host to deliver to,
100 # by removing our local name, and/or doing a "domain forward"
101 S0
102 R$+                             $: $>7$1                deliverable format
103 R$*<$+>$*                       $: $>11$1<$2>$3         domain forward
104 R<$+!>$+                        $: $>12<$1!>$2          route uucp
105 R$*<@$+.bitnet>$*                  $#inet$@$B$:$1<@$2.bitnet>$3
106 R$*<@umich.edu>$*                  $#mail500$@umich.edu$:<$1>
107 R$*<@itd.umich.edu>$*              $#mail500$@itd.umich.edu$:<$1>
108 #R<$+!>$+                          $#uux$@$U$:<$1!>$2
109 R<$+!>$+                           $#unet$@$U$:<$1!>$2
110 R$*<@$+>$*                         $#inet$@$2$:$1<@$2>$3
111 R$+                                $#local$:$1
112
113 # Find the delivery address. Convert to standard-internal form,
114 # remove local name.
115 S7
116 R<$-.$+!>$+                        $3<@$1.$2>           <a.b!>c -> c<@a.b>
117 R$*<@$-.uucp>$*                    $>8$1@$2.uucp$3      *.uucp to !
118 R$*<$+>$*                       $: $>9$1<$2>$3          strip local name
119
120 # Convert rfc822 syntax to a uucp "bang path". This works well
121 # on normal a@b address and route-addrs. It will also do something
122 # to list syntax address, but it's not clear how correct it is.
123 S8
124 R@$+,@$+:$+                        @$1!$2:$3            @a,@b:c -> @a!b:c
125 R@$+:$+@$+                         $1!$3!$2             @a:b@c -> a!c!b
126 R@$+:$+!$+                         $1!$2!$3             @a:b!c -> a!b!c
127 R$+@$+                             $2!$1                a@b -> b!c
128 R$+                             $: $>3$1                refocus
129
130 # Remove local names. You won't see things like a.b!u or u@b.uucp.
131 # Add new rules here to accept more than just the default locally.
132 S9
133 R$*<@$w>$*                         $>10$1<@>$2          remove local name
134 R<$W!>$+                           $>10<!>$1
135 R<@umich.edu>$*:$*                 $>10<@>$1:$2
136 R$+%$+<@umich.edu>                 $>10$1%$2<@>
137 R$+!$+<@umich.edu>                 $>10$1!$2<@>
138
139 # Called only from above. Refocus and loop.
140 S10
141 R<@>,$+                            $>3$1
142 R<@>:$+                            $>3$1
143 R$+<@>                             $>3$1
144 R<!>$+                             $>3$1
145 R$*<$+>$*                       $: $>7$1<$2>$3
146
147 # Convert domain names to uucp names, and refocus
148 S11
149 #R$*<@inquiry.org>$*                    $: $>8$1@inquiry$2
150
151 # Route uucp addresses, if we're not connected to them. We rely on the
152 # domain-path operator to down case addresses.
153 S12
154 R<$+!>$+                        $: <${$1$}!>$2          pathalias route
155 R<$+!$+!>$+                        <$1!>$2!$3           <a!b!>c -> <a!>b!c
156
157 Muux, P=/usr/bin/uux, F=DFMhu, S=13, R=14,
158         A=uux - -gC -b -r -a$f $h!rmail ($u)
159 Munet, P=[IPC], F=mDFMhuX, S=13, R=14, A=IPC $h, E=\r\n
160 Minet, P=[IPC], F=mDFMuX, S=15, R=15, A=IPC $h, E=\r\n
161 Mlocal, P=/bin/mail, F=rlsDFMmn, S=16, R=16, A=mail -d $u
162 Mprog, P=/bin/sh, F=lsDFMe, S=16, R=16, A=sh -c $u
163 Mmail500, P=/usr/local/etc/mail500, F=DFMSmnXuh,
164         A=mail500 -f $f -h $h -m $n@$w $u
165
166 # UUCP mailers require that the sender be in ! format.
167 # XXX Do we add our name to other people's paths?
168 S13
169 R$*<@$+>$*                      $: $>8$1@$2$3
170 #R<$w!>$+                       $@ <$W!>$1
171 R<$+!>$+                        $@ <$1!>$2
172 R$+:$*;                         $@ $1:$2;
173 R<>                             $@
174 #R$+                            $@ <$W!>$1
175 R$+                             $@ <$w!>$1
176
177 # Only add our name to local mail. Anything that's focused, leave alone.
178 S14
179 R$*<$+>$*                       $@ $1<$2>$3
180 R$+:$*;                         $@ $1:$2;
181 #R$+                            $@ <$W!>$1
182 R$+                             $@ <$w!>$1
183
184 # SMTP mailers require that addresses be in rfc822 format. If there's no
185 # @ in the address, add one.
186 S15
187 R<$W!>$+                           $1<@$w>
188 R<$-.$+!>$+                        $3<@$1.$2>
189 R$*<@$+>$*                      $@ $1<@$2>$3
190 R<$+!>$+                        $@ $1!$2<@$w>
191 R$+:$*;                         $@ $1:$2;
192 R<>                             $@
193 R$+                             $@ $1<@$w>
194
195 # Local and prog mailer
196 S16
197 R$+                             $@ $1
198
199 #
200 # Called on all outgoing addresses. Used to remove the <> focus
201 #
202 S4
203 R$*<$+>$*                       $@ $1$2$3               defocus