Commit | Line | Data |
---|---|---|
f8beb284 MW |
1 | .TH ezmlm-moderate 1 |
2 | .SH NAME | |
3 | ezmlm-moderate \- process moderator actions for message | |
4 | acceptance and rejection | |
5 | .SH SYNOPSIS | |
6 | .B ezmlm-moderate [-cCmMrRvV] | |
7 | .B [-t\fI reply-to@host\fB] | |
8 | .I dir ['/path/program args'] | |
9 | ||
10 | .SH DESCRIPTION | |
11 | .B ezmlm-moderate | |
12 | reads a mail message, expecting it to contain an | |
13 | .I -accept | |
14 | or | |
15 | .I -reject | |
16 | action request for the mailing list stored in | |
17 | .I dir. | |
18 | ||
19 | .B ezmlm-moderate | |
20 | verifies the cookie sent as part of the action request, and if correct | |
21 | attempts to find the corresponding message in | |
22 | .IR dir\fB/mod/pending/ . | |
23 | If the message is found, it is either rejected or posted to the list, | |
24 | depending on the action request. | |
25 | ||
26 | Posts to the list are handled by | |
27 | piping the message to | |
28 | .B ezmlm-send(1) | |
29 | located in the ezmlm binary directory, as set at compile time. This is | |
30 | usually the directory that ezmlm-moderate resides in. | |
31 | .B ezmlm-send(1) | |
32 | is provided with | |
33 | .I dir | |
34 | as the first argument. | |
35 | ||
36 | If the optional second argument is given, | |
37 | .B ezmlm-moderate | |
38 | pipes the message to that program, as executed by sh. | |
39 | No parameters are supplied. | |
40 | ||
41 | .I dir | |
42 | is passed as an argument to | |
43 | .BR ezmlm-send(1) , | |
44 | but NOT to any program specified as the optional | |
45 | .B ezmlm-moderate | |
46 | command line argument. | |
47 | ||
48 | .B ezmlm-moderate | |
49 | does not bother to correctly set sender. | |
50 | .B ezmlm-send(1) | |
51 | doesn't care, and any other program that might be used can parse the | |
52 | sender from the first line of the message, which is always | |
53 | .I Return-Path: <address@host.domain> | |
54 | as build from SENDER originally passed to | |
55 | .BR ezmlm-store(1) . | |
56 | ||
57 | If the message is rejected, an optional moderator comment is copied into the | |
58 | notification to the message sender. | |
59 | A moderator comment is any text in the | |
60 | .I -reject | |
61 | request found between two lines with ``%%%'' starting in one of the first | |
62 | 5 positions of the line. The easiest is to use lines consisting of ``%%%'' | |
63 | only. If the characters preceeding the ``%%%'' are found at the beginning | |
64 | of any lines within the comment, the characters are removed. This is to | |
65 | appropriately ignore any ``quote marks'' that you mail program might place at | |
66 | the beginning of lines in a reply. | |
67 | ||
68 | .B ezmlm-moderate | |
69 | messages are sent ``From:'' | |
70 | .IR list-owner@listhost . | |
71 | This allows the poster to easily complain to the owner of the list, in case | |
72 | s/he objects. An optional ``Reply-To:'' header can be added via the | |
73 | .BR \-r\fI\ reply-to@host . | |
74 | ||
75 | Once the message has been successfully accepted or rejected, it is removed from | |
76 | .I dir\fB/mod/pending/ | |
77 | and a stub is created in | |
78 | .I dir\fB/mod/accepted/ | |
79 | or | |
80 | .IR dir\fB/mod/rejected/ , | |
81 | respectively. | |
82 | This is done in order to be able to notify the senders of later moderation | |
83 | requests about the fate of the message. | |
84 | ||
85 | A failure to find the message in | |
86 | .I dir\fB/mod/pending/ | |
87 | is most often caused by the message already having been accepted or rejected | |
88 | by another moderator. Therefore, | |
89 | .B ezmlm-moderate | |
90 | looks in | |
91 | .I dir\fB/mod/accepted/ | |
92 | and | |
93 | .I dir\fB/mod/rejected/ | |
94 | for a message stub. If found, | |
95 | .B ezmlm-moderate | |
96 | notifies the sender in the form of a fatal error | |
97 | if the fate of the message was different from | |
98 | that intended by the current action request. | |
99 | Otherwise, the fate of the message is silently logged. | |
100 | ||
101 | If the message is not found, it has timed out and the message or | |
102 | the message stub has been removed by | |
103 | .BR ezmlm-clean(1) . | |
104 | In this case, | |
105 | .B ezmlm-moderate | |
106 | notifies the moderator of the failure, but can no longer discern the fate | |
107 | of the original message. Again, notification is in the form of a fatal | |
108 | error from qmail. | |
109 | ||
110 | At the beginning of the message, | |
111 | .B ezmlm-moderate | |
112 | prints a new | |
113 | .B Mailing-List | |
114 | field with the contents of | |
115 | .IR dir\fB/mailinglist . | |
116 | It rejects the message if there is already a | |
117 | .B Mailing-List | |
118 | field. | |
119 | ||
120 | .B ezmlm-moderate | |
121 | does not distribute bounce messages: | |
122 | if the environment variable | |
123 | .B SENDER | |
124 | is set, and is either empty or | |
125 | .BR #@[] , | |
126 | .B ezmlm-moderate | |
127 | rejects the message. | |
128 | .SH OPTIONS | |
129 | .TP | |
130 | .B \-cCrR | |
131 | Passed on to ezmlm-send(1). | |
132 | .TP | |
133 | .B \-m | |
134 | (Default.) | |
135 | The rejected post is sent as a MIME enclosure. | |
136 | .TP | |
137 | .B \-M | |
138 | The rejected post is appended to the message. | |
139 | .TP | |
140 | .B \-t\fI reply-to@host | |
141 | A ``Reply-To: | |
142 | .IR reply-to@host '' | |
143 | header will be added to the moderation request. | |
144 | .TP | |
145 | .TP | |
146 | .B \-v | |
147 | Display | |
148 | .B ezmlm-moderate | |
149 | version information. | |
150 | .TP | |
151 | .B \-V | |
152 | Display | |
153 | .B ezmlm-moderate | |
154 | version information. | |
155 | .SH "CHARACTER SETS" | |
156 | If | |
157 | .I dir\fB/charset | |
158 | exists, | |
159 | .B ezmlm-moderate | |
160 | will use the character set listed for all messages. Otherwise, the | |
161 | default ``us-ascii'' will be used. The character set can be suffixed | |
162 | by ``:'' followed by a code. If the code is ``Q'', outgoing messages are | |
163 | sent as ``Quoted-Printable'', if it is ``B'' they are sent ``base64'' encoded. | |
164 | Otherwise, text is sent as is. | |
165 | .SH "SEE ALSO" | |
166 | ezmlm-clean(1), | |
167 | ezmlm-make(1), | |
168 | ezmlm-send(1), | |
169 | ezmlm-store(1), | |
170 | ezmlm(5) |