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