Added a new "boolean" type to mh.h and TRUE and FALSE constants.
[mmh] / man / mh-tailor.man
1 .\"
2 .\" %nmhwarning%
3 .\" $Id$
4 .\"
5 .\" include the -mh macro file
6 .so %etcdir%/tmac.h
7 .\"
8 .TH MH-TAILOR %manext5% MH.6.8 [%nmhversion%]
9 .SH NAME
10 mh-tailor, mts.conf \- mail transport customization for nmh message handler
11
12 .SH SYNOPSIS
13 .in +.5i
14 .ti -.5i
15 \fI%etcdir%/mts.conf\fP
16 .in -.5i
17 .SH DESCRIPTION
18 The file %etcdir%/mts.conf defines run-time options for those \fInmh\fR
19 programs which interact (in some form) with the message transport system.
20 At present, these (user) programs are: \fIap\fR, \fIconflict\fR,
21 \fIinc\fR, \fImsgchk\fR, \fImsh\fR, \fIpost\fR, \fIrcvdist\fR, and
22 \fIrcvpack\fR.
23
24 Each option should be given on a single line.  Blank lines and lines
25 which begin with `#' are ignored.  The options available along with
26 default values and a description of their meanings are listed below:
27
28 .in +.5i
29 .ti -.5i
30 localname:
31 .br
32 The hostname \fInmh\fR considers local.  It should typically be a fully
33 qualified hostname.  If this is not set, depending on the version of
34 UNIX you're running, \fInmh\fR will query the system for this value
35 (e.g., uname, gethostname, etc.), and attempt to fully qualify this
36 value.
37
38 If you are using POP to retrieve new messages, you may want to set this
39 value to the name of the POP server, so that outgoing message appear to
40 have originated on the POP server.
41
42 .ti -.5i
43 localdomain:
44 .br
45 If this is set, a `.' followed by this string will be appended to your
46 hostname.
47
48 This should only be needed, if for some reason \fInmh\fR is not able to
49 fully qualify the hostname returned by the system (e.g., uname,
50 gethostname, etc.).
51
52 .ti -.5i
53 clientname:
54 .br
55 This option specifies the host name that \fInmh\fP will give in the
56 SMTP \fBHELO\fP (and \fBEHLO\fP) command, when posting mail.  If not
57 set, the default is to use the host name that \fInmh\fR considers local
58 (see \*(lqlocalname\*(rq above).  If this option is set, but empty, no
59 \fBHELO\fP command will be given.
60
61 .sp
62 Although the \fBHELO\fP command is required by RFC\-821, many SMTP servers
63 do not require it.  Early versions of SendMail will fail if the hostname
64 given in the \fBHELO\fP command is the local host.  Later versions of
65 SendMail will complain if you omit the \fBHELO\fP command.  If you run
66 SendMail, find out what your system expects and set this field if needed.
67
68 .ti -.5i
69 systemname:
70 .br
71 This option is only used for UUCP mail.  It specifies the name of the
72 local host in the \fIUUCP\fR \*(lqdomain\*(rq.  If not set, depending
73 on the version of UNIX you're running, \fInmh\fR will query the system
74 for this value.  This has no equivalent in the \fInmh\fR configuration
75 file.
76
77 .ti -.5i
78 mmdfldir: %mailspool%
79 .br
80 The directory where maildrops are kept.  If this option is set, but empty,
81 the user's home directory is used.  This overrides the default value
82 chosen at the time of compilation.
83
84 .ti -.5i
85 mmdflfil: 
86 .br
87 The name of the maildrop file in the directory where maildrops are kept.
88 If this is empty, the user's login name is used.  This overrides the default
89 value (which is empty).
90
91 .ti -.5i
92 mmdelim1: \\001\\001\\001\\001\\n
93 .br
94 The beginning-of-message delimiter for maildrops.
95
96 .ti -.5i
97 mmdelim2: \\001\\001\\001\\001\\n
98 .br
99 The end-of-message delimiter for maildrops.
100
101 .ti -.5i
102 masquerade:
103 .br
104 This directive controls three different types of email address masquerading.
105 The three possible values, which may be specified in any combination on the
106 line, are "draft_from", "mmailid", and "plussed_user".
107
108 "mmailid" was the only type of masquerading in the original MH package, and
109 apparently stands for "masquerade mail identification".  This type of
110 masquerading keys off of the GECOS field of the passwd file.  When enabled,
111 \fInmh\fR will check if the user's pw_gecos field in the passwd file is of the
112 form:
113
114 .ti +.5i
115 Full Name <fakeusername>
116
117 If it is, the internal \fInmh\fR routines that find the username and full name
118 of that user will return "fakeusername" and "Full Name" respectively.  This is
119 useful if you want the messages you send to always appear to come from the name
120 of an MTA alias rather than your actual account name.  For instance, many
121 organizations set up "First.Last" sendmail aliases for all users.  If this is
122 the case, the GECOS field for each user should look like:
123
124 .ti +.5i
125 First [Middle] Last <First.Last>
126
127 "plussed_user", when specified on the "masquerade:" line, allows a second type
128 of username masquerading.  If the user sets the \fB$USERPLUS\fR environment
129 variable, its value will be tacked onto the actual login name, following a '+'
130 sign.  For instance, if I am dan@company.com, and I set \fB$USERPLUS\fR to
131 "www", my mail will appear to come from "dan+www@company.com".  This feature is
132 meant to interact with MTA features like the one in sendmail that automatically
133 delivers all mail sent to \fIuser\fR+\fIstring\fR to \fIuser\fR.  One can use
134 different email addresses in different situations (to aid in automatic mail
135 filtering or in determining where spammers got your address) while only actually
136 having a single account.
137
138 "draft_from" controls the most powerful type of address masquerading.  Normally,
139 when a user explicitly specifies a "From:" header in a draft, \fInmh\fR uses it
140 rather than constructing its own.  However, to discourage email forgery, the
141 SMTP envelope "From:" and a "Sender:" header are set to the user's real address.
142 When "draft_from" is turned on, though, the envelope "From:" will use the
143 address specified in the draft, and there will be no "Sender:" header.  This is
144 useful when a user wants to pretend to be sending mail "directly" from a remote
145 POP3 account, or when remote mail robots incorrectly use the envelope "From:" in
146 preference to the body "From:" (or refuse to take action when the two don't
147 match).  Note that your MTA may still reveal the user's real identity (e.g.
148 sendmail's "X-Authentication-Warning:" header).
149
150 .ti -.5i
151 maildelivery: %libdir%/maildelivery
152 .br
153 The name of the system-wide default \fI\&.maildelivery\fR file.
154 See \fIslocal\fR\0(1) for the details.
155
156 .ti -.5i
157 everyone: 200
158 .br
159 The highest user-id which should NOT receive mail addressed to
160 \*(lqeveryone\*(rq.
161
162 .ti -.5i
163 noshell: 
164 .br
165 If set, then each user-id greater than \*(lqeveryone\*(rq that has a
166 login shell equivalent to the given value (e.g., \*(lq/bin/csh\*(rq)
167 indicates that mail for \*(lqeveryone\*(rq should not be sent to them.
168 This is useful for handling admin, dummy, and guest logins.
169
170 .in -.5i
171 .Uh "SMTP support"
172 These options are only available if you compiled \fInmh\fP with the
173 \*(lq/smtp\*(rq support.
174
175 .in +.5i
176 .ti -.5i
177 hostable: %etcdir%/hosts
178 .br
179 The exceptions file for /etc/hosts used by \fIpost\fR to try to find
180 official names.  The format of this file is quite simple:
181
182 .in +.5i
183 1. Comments are surrounded by sharp (`#') and newline.
184 .br
185 2. Words are surrounded by white space.
186 .br
187 3. The first word on the line is the official name of a host.
188 .br
189 4. All words following the official names are aliases for that host.
190 .in -.5i
191
192 .ti -.5i
193 servers: localhost \\01localnet
194 .br
195 A lists of hosts and networks which to look for SMTP servers when
196 posting local mail.  It turns out this is a major win for hosts which
197 don't run an message transport system.  The value of \*(lqservers\*(rq
198 should be one or more items.  Each item is the name of either a host
199 or a net (in the latter case, precede the name of the net by a \\01).
200 This list is searched when looking for a smtp server to post mail.
201 If a host is present, the SMTP port on that host is tried.  If a net
202 is present, the SMTP port on each host in that net is tried.  Note that
203 if you are running with the BIND code, then any networks specified are
204 ignored (sorry, the interface went away under BIND).
205
206 .in -.5i
207 .Uh "SendMail"
208 This option is only available if you compiled \fInmh\fP to use
209 \fISendMail\fP as your delivery agent.
210
211 .in +.5i
212 .ti -.5i
213 sendmail: %sendmailpath%
214 .br
215 The pathname to the \fIsendmail\fR program.
216
217 .in -.5i
218 .Uh "Post Office Protocol"
219 This option is only available if you have compiled \fInmh\fP with POP
220 support enabled (i.e., \*(lq--enable-nmh-pop\*(rq).
221
222 .in +.5i
223 .ti -.5i
224 pophost:
225 .br
226 The name of the default POP service host.  If this is not set, then
227 \fInmh\fR looks in the standard maildrop areas for waiting mail, otherwise
228 the named POP service host is consulted.
229
230 .in -.5i
231 .Uh "BBoards Delivery"
232 This option is only available if you compiled \fInmh\fP with
233 \*(lqbbdelivery:\ on\*(rq.
234
235 .in +.5i
236 .ti -.5i
237 bbdomain:
238 .br
239 The local BBoards domain (a UCI hack).
240
241 .in -.5i
242 .Uh "BBoards & The POP"
243 These options are only available if you compiled \fInmh\fP with
244 \*(lqbboards:\ pop\*(rq and \*(lqpop:\ on\*(rq.
245
246 .in +.5i
247 .ti -.5i
248 popbbhost:
249 .br
250 The POP service host which also acts as a BBoard server.  This variable
251 should be set on the POP BBoards client host.
252
253 .ti -.5i
254 popbbuser:
255 .br
256 The guest account on the POP/BB service host.  This should be a different
257 login ID than either the POP user or the BBoards user.  (The user-id
258 \*(lqftp\*(rq is highly recommended.)  This variable should be set on
259 both the POP BBoards client and service hosts.
260
261 .ti -.5i
262 popbblist: %etcdir%/hosts.popbb
263 .br
264 A file containing of lists of hosts that are allowed to use the POP
265 facility to access BBoards using the guest account.  If this file is not
266 present, then no check is made.  This variable should be set on the POP
267 BBoards service host.
268
269 .in -.5i
270 .if n .ne 8
271 .Uh "BBoards & The NNTP"
272 This option is only available if you compiled \fInmh\fP with
273 \*(lqbboards:\ nntp\*(rq and \*(lqpop:\ on\*(rq.
274
275 .in +.5i
276 .ti -.5i
277 nntphost:
278 .br
279 The host which provides the NNTP service.  This variable should be set
280 on the NNTP BBoards client host.
281
282 .in -.5i
283 .Uh "File Locking"
284 A few words on locking: \fInmh\fR has several methods for creating locks
285 on files.  When configuring \fInmh\fR, you will need to decide on the
286 locking style and locking directory (if any).  The first controls the
287 method of locking, the second says where lock files should be created.
288
289 To configure \fInmh\fR for kernel locking, define \fBFLOCK_LOCKING\fP if
290 you want to use the \fIflock\fP system call; define \fBLOCKF_LOCKING\fP if
291 you want to use the \fIlockf\fP system call; or define \fBFCNTL_LOCKING\fP
292 if you want to use the \fIfcntl\fP system call for kernel-level locking.
293
294 Instead of kernel locking, you can configure \fInmh\fR to use dot
295 locking by defining \fBDOT_LOCKING\fP.  Dot locking specifies that
296 a file should be created whose existence means \*(lqlocked\*(rq and
297 whose non-existence means \*(lqunlocked\*(rq.  The name of this file is
298 constructed by appending \*(lq.lock\*(rq to the name of the file being
299 locked.  If \fBLOCKDIR\fP is not specified, lock files will be created
300 in the directory where the file being locked resides.  Otherwise, lock
301 files will be created in the directory specified by \fBLOCKDIR\fP.
302
303 Prior to installing \fInmh\fR, you should see how locking is done at
304 your site, and set the appropriate values.
305
306 .Fi
307 ^%etcdir%/mts.conf~^nmh mts configuration file
308 .Pr
309 None
310 .Sa
311 mh\-mts(8), post(8)
312 .De
313 As listed above
314 .Co
315 None
316 .En