Import ezmlm-idx 0.40
[ezmlm] / ezmlm-send.1
1 .TH ezmlm-send 1
2 .SH NAME
3 ezmlm-send \- distribute a message to a mailing list
4 .SH SYNOPSIS
5 .B ezmlm-send
6 [
7 .B \-cCrRvV
8 ] [
9 .B \-h\fI header
10 ]
11 .I dir
12 .SH DESCRIPTION
13 .B ezmlm-send
14 reads a mail message and
15 sends it to the mailing list stored in
16 .IR dir .
17 If
18 .I dir\fB/archived
19 exists,
20 .B ezmlm-send
21 records a copy of the message in the
22 .I dir\fB/archive/
23 directory.
24
25 If
26 .I dir\fB/indexed
27 exists,
28 .B ezmlm-send
29 adds the subject, author and time stamp of the message to the index, kept with
30 the message in a subdirectory of
31 .IR dir\fB/archive/ .
32 The subject is processed to make reply-subject entries identical to
33 original
34 message subject entries.
35 The subject index is used for the archive retrieval functions of
36 .BR ezmlm-get(1) .
37 Use
38 .B ezmlm-idx(1)
39 to create a subject index from a preexisting archive.
40
41 Subject and author lines are decoded if they are encoded per rfc2047. When
42 split lines are unfolded, the number of escape sequences for
43 iso-2022-* character sets is minimized. For instance, two
44 consequtive toascii sequences are reduced.
45 This processing is done for the character set specified in
46 .IR dir\fB/charset .
47 The result of this process is the same for a given subject, irrespective
48 of encoding.
49
50 At the beginning of the message,
51 .B ezmlm-send
52 prints a new
53 .B Mailing-List
54 field with the contents of
55 .IR dir\fB/mailinglist .
56 It rejects the message if there is already a
57 .B Mailing-List
58 field.
59
60 If
61 .I dir\fB/listid
62 exists,
63 .B ezmlm-send
64 will assume that the format is correct and
65 create a ``List-ID:'' header by placing the contents after the
66 text ``List-ID: ''.
67
68 Next,
69 .B ezmlm-send
70 prints all the new fields listed in
71 .IR dir\fB/headeradd .
72 Any tags, ``<#h#>'', ``<#l#>'', or ``<#n#>'' found in these headers
73 are replaced by the list host name, list local name, and message number,
74 respectively.
75
76 .B ezmlm-send
77 then prints an appropriate
78 .B Delivered-To
79 line.
80
81 .B ezmlm-send
82 deletes any incoming fields with names listed in
83 .IR dir\fB/headerremove .
84
85 .B ezmlm-send
86 removes MIME parts specified in
87 .I dir\fB/mimeremove
88 before archiving and distribution of the message.
89
90 If
91 .I dir\fB/text/trailer
92 exists,
93 .B ezmlm-send
94 adds the trailer to simple text/plain messages in the same encoding as used for
95 the the message. However, if the encoding is ``base64'' it is not safe
96 to do this and the header is suppressed.
97 For composite MIME messages, the trailer is added as a separate
98 part, with the character set and encoding specified in
99 .IR dir\fB/charset .
100 The trailer is not added to multipart/alternative messages.
101 Any tags, ``<#h#>'', ``<#l#>'', or ``<#n#>'' found in
102 .I dir\fB/text/trailer
103 are replaced by the list host name, list local name, and message number,
104 respectively.
105
106 If
107 .I dir\fB/prefix
108 exists,
109 .B ezmlm-send
110 will prefix the subject line with the first line of this
111 file. A space will be added to separate
112 .B prefix
113 from the subject text.
114 .B prefix
115 is ignored for sublists. If
116 .I dir\fB/prefix
117 contains a ``#'', the last ``#'' will be replaced by the message number.
118 Any prefix starting with text of a
119 reply indicator (``Re:'', ``Re[n]:'', etc) will cause problems.
120 The prefix may be
121 rfc2047 encoded. Rfc2047 Iso-2022-* encoded prefixes
122 .I must
123 end in ascii.
124
125 The prefix feature and especially the message number feature
126 modify the message in violation
127 with Internet mail standards. The features have been implemented by popular
128 demand. Use at your own peril.
129
130 .I dir\fB/sequence
131 is ignored as of ezmlm-idx-0.32. Use
132 .I dir\fB/headeradd
133 with substitution to achieve the same goal.
134
135 If
136 .I dir\fB/qmqpservers
137 exists,
138 .B ezmlm-send will use
139 .B qmail-qmqp(1)
140 to send messages.
141
142 .B ezmlm-send
143 does not distribute bounce messages:
144 if the environment variable
145 .B SENDER
146 is set, and is either empty or
147 .BR #@[] ,
148 .B ezmlm-send
149 rejects the message.
150 .SH OPTIONS
151 .TP
152 .B \-c
153 No longer supported. Ignored for backwards compatibility.
154 .TP
155 .B \-C
156 No longer supported. Ignored for backwards compatibility.
157 .B ezmlm-send
158 has to parse the subscriber database.
159 .TP
160 .B \-h\fI header
161 If the list is a sublist, i.e.
162 .I dir\fB/sublist
163 exists,
164 .I header
165 is required in all messages to the list. This option is used
166 when ezmlm is used to run a sublist of a lists run by a different
167 mailing list
168 manager that uses
169 .I header
170 rather than ``Mailing-List'' to identify messages from the list.
171 Anything after the first colon (if present) in
172 .I header
173 is ignored.
174 .TP
175 .B \-r
176 Copy incoming ``Received:'' headers to the outgoing message.
177 .TP
178 .B \-R
179 (Default.)
180 Do not copy incoming ``Received:'' headers, except the one added by
181 the (last) listhost, to the outgoing message.
182 In some
183 cases, especially for sublists,
184 the messages can have a large number of ``Received:''
185 headers. This may lead to bounces for some users due to
186 sendmail ``hopcounts'' set too low somewhere in the mail path. These users can
187 subscribe and receive warning and probe messages, but no list messages, unless
188 the number of ``Received:'' headers is reduced.
189
190 Pre-list ``Received:'' headers are of little interest to normal list
191 subscribers. ``Received:'' headers are
192 still copied to the archive and available
193 to anyone from there for message tracking purposes.
194 .TP
195 .B \-v
196 Display
197 .B ezmlm-send
198 version information.
199 .TP
200 .B \-V
201 Display
202 .B ezmlm-send
203 version information.
204 .SH "SUBLISTS"
205 If
206 .I dir\fB/sublist
207 exists,
208 .B ezmlm-send
209 changes its behavior in several ways.
210
211 First, if
212 .B SENDER
213 is set,
214 and the first line of
215 .I dir\fB/sublist
216 has the form
217 .IR parent\fB@\fIparenthost ,
218 .B ezmlm-send
219 insists that
220 .B SENDER
221 have the form
222 .IR parent\fB...@\fIparenthost .
223
224 Second,
225 .B ezmlm-send
226 demands that the message already have a
227 .B Mailing-List
228 field.
229
230 Third,
231 .B ezmlm-send
232 does not add its own
233 .B Mailing-List
234 field.
235
236 Fourth,
237 .B ezmlm-send
238 uses the incoming message number for the outgoing message, if the list
239 is not archived and the incoming SENDER has the correct format.
240 This allows you to refer bounce warning recipients to the main list for
241 archive retrieval of the missed messages. If the sublist archives
242 message, it is assumed that missed messages will be retrieved from the sublist
243 archive.
244
245 The list
246 still increments
247 .I dir\fB/num
248 for each message. If the sublist is archived, use of incoming message number
249 for archive storage would be a security risk. In this case, the local sublist
250 message number is used.
251 .SH "OPTION USAGE"
252 In general, the use of a prefix is discouraged. It wastes subject line space,
253 creates trouble when MUAs add non-standard reply indicators. However, many
254 users expect it not because it is useful, but because they are used to it.
255
256 The
257 .B \-C
258 switch prevents posts from being set to SENDER. Rather than just copying
259 out subscriber address files,
260 .B ezmlm-send
261 has to parse them to look for SENDER. This makes it less efficient. Also,
262 it is useful for the SENDER to see the post to know that it has made it
263 to the list, and it's context to other subscribers, i.e. where it came
264 within the traffic of messages on the list.
265
266 Avoiding SENDER as a recipient is useful in small lists, such as small
267 teams with varying members, where ezmlm serves mainly as an efficient tool
268 to keep the team connected without administrator intervention. Here the
269 overhead of subscriber list parsing is negligible.
270 .SH "CHARACTER SETS"
271 If the list is indexed,
272 .B ezmlm-send
273 will keep a message index. rfc2047-encoded subject and from lines will be
274 decoded.
275 If
276 .I dir\fB/charset
277 exists,
278 .B ezmlm-send
279 will eliminate redundant escape sequences from the headers according to
280 the character set specified in this file.
281 Only character sets using escape sequences need this support. Currently,
282 supported are iso-2022-jp*, iso-2022-kr, and iso-2022-cn*. Only iso-2022-jp
283 has been tested extensively.
284
285 The character set can be suffixed
286 by ``:'' followed by a code. Recognized codes are ``Q''
287 for ``Quoted-Printable'', and ``B'' for ``base64''.
288
289 For
290 .BR ezmlm-send ,
291 this affects the format of the trailer, if a trailer is specified and if the
292 message is a multipart mime message
293 .SH "SEE ALSO"
294 ezmlm-get(1),
295 ezmlm-idx(1),
296 ezmlm-manage(1),
297 ezmlm-make(1),
298 ezmlm-sub(1),
299 ezmlm-unsub(1),
300 ezmlm-reject(1),
301 ezmlm(5),
302 qmail-qmqp(1)