Removed all POP support
[mmh] / man / mh-tailor.man
1 .\"
2 .\" %nmhwarning%
3 .\"
4 .TH MH-TAILOR %manext5% "%nmhdate%" MH.6.8 [%nmhversion%]
5 .SH NAME
6 mh-tailor, mts.conf \- mail transport customization for nmh message handler
7 .SH SYNOPSIS
8 .I %etcdir%/mts.conf
9 .SH DESCRIPTION
10 The file
11 .I %etcdir%/mts.conf
12 defines run-time options for those
13 .B nmh
14 programs which interact (in some form) with the message transport system.
15 At present, these (user) programs are:
16 .BR ap ,
17 .BR conflict ,
18 .BR inc ,
19 .BR msgchk ,
20 .BR msh ,
21 .BR post ,
22 .BR rcvdist ,
23 and
24 .BR rcvpack .
25 .PP
26 Each option should be given on a single line.  Blank lines and lines
27 which begin with `#' are ignored.  The options available along with
28 default values and a description of their meanings are listed below:
29 .PP
30 .BR mts :
31 .RS 5
32 The mail transport method to use.  The two acceptable options are
33 .B smtp
34 (which is the default), and
35 .BR sendmail .
36 .PP
37 If you use
38 .BR smtp ,
39 this will enable a direct SMTP (simple mail transport
40 protocol) interface in
41 .BR nmh .
42 When sending mail, instead of passing the
43 message to the mail transport agent,
44 .B post
45 will open a socket connection
46 to the mail port on the machine specified in the
47 .B servers
48 entry.
49 .PP
50 If you use
51 .BR sendmail ,
52 then
53 .B post
54 will send messages by forking a
55 local copy of
56 .BR sendmail .
57 Currently it will still speak SMTP with this local
58 copy of
59 .BR sendmail .
60 .RE
61 .PP
62 .BR localname :
63 .RS 5
64 The hostname
65 .B nmh
66 considers local.  It should typically be a fully
67 qualified hostname.  If this is not set, depending on the version of
68 UNIX you're running,
69 .B nmh
70 will query the system for this value
71 (e.g. uname, gethostname, etc.), and attempt to fully qualify this
72 value.
73 .PP
74 If you are using POP to retrieve new messages, you may want to set this
75 value to the name of the POP server, so that outgoing message appear to
76 have originated on the POP server.
77 .RE
78 .PP
79 .BR localdomain :
80 .RS 5
81 If this is set, a `.' followed by this string will be appended to your
82 hostname.
83 .PP
84 This should only be needed, if for some reason
85 .B nmh
86 is not able to
87 fully qualify the hostname returned by the system (e.g. uname,
88 gethostname, etc.).
89 .RE
90 .PP
91 .BR clientname :
92 .RS 5
93 This option specifies the host name that
94 .B nmh
95 will give in the
96 SMTP
97 .B HELO
98 (and
99 .BR EHLO )
100 command, when posting mail.  If not
101 set, the default is to use the host name that
102 .B nmh
103 considers local
104 (see
105 .B localname
106 above).  If this option is set, but empty, no
107 .B HELO
108 command will be given.
109 .PP
110 Although the
111 /B HELO
112 command is required by RFC\-821, many SMTP servers
113 do not require it.  Early versions of
114 .I SendMail
115 will fail if the hostname
116 given in the
117 .B HELO
118 command is the local host.  Later versions of
119 .I SendMail
120 will complain if you omit the
121 .B HELO
122 command.  If you run
123 .IR SendMail ,
124 find out what your system expects and set this field if needed.
125 .RE
126 .PP
127 .BR systemname :
128 .RS 5
129 This option is only used for UUCP mail.  It specifies the name of the
130 local host in the UUCP \*(lqdomain\*(rq.  If not set, depending
131 on the version of UNIX you're running,
132 .B nmh
133 will query the system
134 for this value.  This has no equivalent in the
135 .B nmh
136 configuration
137 file.
138 .RE
139 .PP
140 .BR mmdfldir :
141 %mailspool%
142 .RS 5
143 The directory where maildrops are kept.  If this option is set, but empty,
144 the user's home directory is used.  This overrides the default value
145 chosen at the time of compilation.
146 .RE
147 .PP
148 .BR mmdflfil :
149 .RS 5
150 The name of the maildrop file in the directory where maildrops are kept.
151 If this is empty, the user's login name is used.  This overrides the default
152 value (which is empty).
153 .RE
154 .PP
155 .BR mmdelim1 :
156 \&\\001\\001\\001\\001\\n
157 .RS 5
158 The beginning-of-message delimiter for maildrops.
159 .RE
160 .PP
161 .BR mmdelim2 :
162 \&\\001\\001\\001\\001\\n
163 .RS 5
164 The end-of-message delimiter for maildrops.
165 .RE
166 .PP
167 .BR masquerade:
168 .RS 5
169 This directive controls three different types of email address masquerading.
170 The three possible values, which may be specified in any combination on the
171 line, separated by spaces, are \*(lqdraft_from\*(rq, \*(lqmmailid\*(rq, and
172 \*(lqusername_extension\*(rq.
173 .PP
174 \*(lqmmailid\*(rq was the only type of masquerading in the original MH package, and
175 apparently stands for \*(lqmasquerade mail identification\*(rq.  This type of
176 masquerading keys off of the GECOS field of the passwd file.  When enabled,
177 .B nmh
178 will check if the user's pw_gecos field in the passwd file is of the
179 form:
180 .PP
181 .RS 5
182 Full Name <fakeusername>
183 .RE
184 .PP
185 If it is, the internal
186 .B nmh
187 routines that find the username and full name
188 of that user will return \*(lqfakeusername\*(rq and \*(lqFull Name\*(rq respectively.  This is
189 useful if you want the messages you send to always appear to come from the name
190 of an MTA alias rather than your actual account name.  For instance, many
191 organizations set up \*(lqFirst.Last\*(rq sendmail aliases for all users.  If this is
192 the case, the GECOS field for each user should look like:
193 .PP
194 .RS 5
195 First [Middle] Last <First.Last>
196 .RE
197 .PP
198 \*(lqusername_extension\*(rq, when specified on the \*(lqmasquerade:\*(rq line, allows a second
199 type of username masquerading.  If the user sets the
200 .B $USERNAME_EXTENSION
201 environment variable, its value will be appended to the actual login name.  For
202 instance, if I am \*(lqdan@company.com\*(rq, and I set
203 .B $USERNAME_EXTENSION
204 to \*(lq\-www\*(rq, my mail will appear to come from \*(lqdan\-www@company.com\*(rq.  This is meant
205 to interact with qmail's \*(lquser\-extension\*(rq feature, where mail sent to
206 .IR user \- string
207 will be delivered to
208 .IR user .
209 Likewise, those using
210 versions of sendmail for which \*(lqplussed user\*(rq processing is active can set
211 .B $USERNAME_EXTENSION
212 to \*(lq+\fIstring\fR\*(rq.  These MTA features are useful
213 because they allow one to use different email addresses in different situations
214 (to aid in automatic mail filtering or in determining where spammers got one's
215 address) while only actually having a single account.  Note that
216 .B $USERNAME_EXTENSION
217 is only appended to the username when \fIpost\fR is
218 generating \*(lq[Resent\-]From:\*(rq lines and the SMTP envelope
219 \*(lqFrom:\*(rq.
220 .BR inc ,
221 for instance, will not try to read from a maildrop file called \*(lqdan\-www\*(rq (to
222 recall the earlier example).
223 .PP
224 \*(lqdraft_from\*(rq controls the most powerful type of address masquerading.  Normally,
225 when a user explicitly specifies a \*(lqFrom:\*(rq header in a draft,
226 .B nmh
227 uses it
228 rather than constructing its own.  However, to discourage email forgery, the
229 SMTP envelope \*(lqFrom:\*(rq and a \*(lqSender:\*(rq header are set to the user's real address.
230 When \*(lqdraft_from\*(rq is turned on, though, the envelope \*(lqFrom:\*(rq will use the
231 address specified in the draft, and there will be no \*(lqSender:\*(rq header.  This is
232 useful when a user wants to pretend to be sending mail \*(lqdirectly\*(rq from a remote
233 POP3 account, or when remote mail robots incorrectly use the envelope \*(lqFrom:\*(rq in
234 preference to the body \*(lqFrom:\*(rq (or refuse to take action when the two don't
235 match).  Note that the MTA may still reveal the user's real identity (e.g.
236 .BR sendmail 's
237 \*(lqX\-Authentication\-Warning:\*(rq header).
238 .RE
239 .PP
240 .BR maildelivery :
241 %libdir%/maildelivery
242 .RS 5
243 The name of the system-wide default
244 .I maildelivery
245 file.
246 See
247 .BR slocal (1)
248 for the details.
249 .RE
250 .PP
251 .BR everyone :
252 200
253 .RS 5
254 The highest user-id which should NOT receive mail addressed to
255 \*(lqeveryone\*(rq.
256 .RE
257 .PP
258 .BR noshell :
259 .RS 5
260 If set, then each user-id greater than \*(lqeveryone\*(rq that has a
261 login shell equivalent to the given value (e.g., \*(lq/bin/csh\*(rq)
262 indicates that mail for \*(lqeveryone\*(rq should not be sent to them.
263 This is useful for handling admin, dummy, and guest logins.
264 .RE
265 .SS "SMTP support"
266 These options are only available if you set
267 .B mts
268 to
269 .BR smtp .
270 .PP
271 .BR hostable :
272 %etcdir%/hosts
273 .RS 5
274 The exceptions file for /etc/hosts used by
275 .B post
276 to try to find
277 official names.  The format of this file is quite simple:
278 .PP
279 .IP 1. 4
280 Comments are surrounded by sharp (`#') and newline.
281 .IP 2. 4
282 Words are surrounded by white space.
283 .IP 3. 4
284 The first word on the line is the official name of a host.
285 .IP 4. 4
286 All words following the official names are aliases for that host.
287 .RE
288 .PP
289 .BR servers :
290 localhost
291 .RS 5
292 A lists of hosts and networks which to look for SMTP servers when
293 posting local mail.  It turns out this is a major win for hosts which
294 don't run an message transport system.  The value of
295 .B servers
296 should be one or more items.  Each item is the name of a host which
297 is (hopefully) running a SMTP server.
298 .SS "SendMail"
299 This option is only available if you set
300 .B mts
301 to
302 .BR sendmail .
303 .PP
304 .BR sendmail :
305 %sendmailpath%
306 .RS 5
307 The pathname to the
308 .B sendmail
309 program.
310 .RE
311 \"  .SS "BBoards Delivery"
312 \"  This option is only available if you compiled \fInmh\fP with
313 \"  \*(lqbbdelivery:\ on\*(rq.
314 \"  .PP
315 \"  .BR bbdomain :
316 \"  .RS 5
317 \"  The local BBoards domain (a UCI hack).
318 \"  .RE
319
320 .SS "File Locking"
321 A few words on locking:
322 .B nmh
323 has several methods for creating locks
324 on files.  When configuring
325 .BR nmh ,
326 you will need to decide on the
327 locking style and locking directory (if any).  The first controls the
328 method of locking, the second says where lock files should be created.
329 .PP
330 To configure
331 .B nmh
332 for kernel locking, use the \*(lq--with-locking=flock\*(rq configure option if
333 you want to use the
334 .B flock
335 system call; use \*(lq--with-locking=lockf\*(rq if
336 you want to use the
337 .B lockf
338 system call; or use \*(lq--with-locking=fcntl\*(rq
339 if you want to use the
340 .B fcntl
341 system call for kernel-level locking.
342 .PP
343 Instead of kernel locking, you can configure
344 .B nmh
345 to use dot locking by using \*(lq--with-locking=dot\*(rq.  Dot locking
346 specifies that
347 a file should be created whose existence means \*(lqlocked\*(rq and
348 whose non-existence means \*(lqunlocked\*(rq.  The name of this file is
349 constructed by appending \*(lq.lock\*(rq to the name of the file being
350 locked.  If
351 .B LOCKDIR
352 is not specified, lock files will be created
353 in the directory where the file being locked resides.  Otherwise, lock
354 files will be created in the directory specified by
355 .BR LOCKDIR .
356 .PP
357 Prior to installing
358 .BR nmh ,
359 you should see how locking is done at
360 your site, and set the appropriate values.
361
362 .SH FILES
363 .fc ^ ~
364 .nf
365 .ta \w'%etcdir%/ExtraBigFileName  'u
366 ^%etcdir%/mts.conf~^nmh mts configuration file
367 .fi
368
369 .SH "PROFILE COMPONENTS"
370 None
371
372 .SH "SEE ALSO"
373 mh\-mts(8), post(8)
374
375 .SH DEFAULTS
376 As listed above