1 |
.Dd February 02, 2003 |
2 |
.Dt IMAPFILTERRC 5 |
3 |
.Os |
4 |
.Sh NAME |
5 |
.Nm imapfilterrc |
6 |
.Nd imapfilter configuration file |
7 |
.Sh SYNOPSIS |
8 |
.Pa $HOME/.imapfilterrc |
9 |
.Sh DESCRIPTION |
10 |
The |
11 |
.Nm |
12 |
configuration file consists of a series of commands and variable settings, |
13 |
with each one in a separate line. |
14 |
.Pp |
15 |
Empty lines and lines beginning with the number sign |
16 |
.Sq # |
17 |
character, |
18 |
which |
19 |
are considered comments, are ignored. |
20 |
.Sh COMMANDS |
21 |
.Bl -tag -width Ds |
22 |
.It Cm account Ar alias username[:password]@hostname[:port] [ssl|ssl2|ssl3|tls1] |
23 |
Defines a user account under the name |
24 |
.Ar alias , |
25 |
using the |
26 |
.Ar username |
27 |
as user identification and |
28 |
.Ar password |
29 |
as the secret word, connecting to the |
30 |
.Ar hostname |
31 |
mail server, at the specified |
32 |
.Ar port |
33 |
(if not specified the default IMAP protocol port (ie. 143 or 993 when SSL/TLS is |
34 |
enabled) is used). SSL/TLS support is enabled with the argument |
35 |
.Ar ssl , |
36 |
which uses as default the SSL protocol version 2, though this may be changed by |
37 |
specifying a different protocol/version. |
38 |
.Pp |
39 |
The |
40 |
.Ar alias |
41 |
is comprised by alphanumeric, underscore |
42 |
.Sq _ |
43 |
and minus |
44 |
.Sq - |
45 |
characters. |
46 |
.Pp |
47 |
The |
48 |
.Ar username |
49 |
and |
50 |
.Ar password |
51 |
strings can be given in a URL encoding like scheme, that is the |
52 |
.Sq % |
53 |
character followed by two hexadecimal digits representing the encoded |
54 |
character's |
55 |
.Xr ascii 7 |
56 |
code. Within the |
57 |
.Ar username |
58 |
and |
59 |
.Ar password |
60 |
field, any |
61 |
.Sq \&: , |
62 |
.Sq @ , |
63 |
.Sq % |
64 |
or |
65 |
.Sq \ |
66 |
characters must be encoded in the above way. |
67 |
.Pp |
68 |
The |
69 |
.Ar password |
70 |
field may be omitted, in which case the user is prompted for one |
71 |
interactively, when |
72 |
.Xr imapfilter 1 |
73 |
is run. Also, a |
74 |
.Ar password |
75 |
must not be supplied, if the user intends to specify one using the |
76 |
interactive encrypted passwords' editor of |
77 |
.Xr imapfilter 1 , |
78 |
in order to store the password securely in the filesystem. |
79 |
.It Cm folder Ar alias folder[,...] |
80 |
Defines folders (mailboxes) and groups them under the |
81 |
.Ar alias |
82 |
name. The mailboxes are associated with the last preceding |
83 |
.Ar account |
84 |
setting. More than one |
85 |
.Ar folder |
86 |
can be declared, separating them with a comma |
87 |
.Sq \&, |
88 |
character. The |
89 |
.Ar alias |
90 |
is comprised by alphanumeric, underscore |
91 |
.Sq _ |
92 |
and minus |
93 |
.Sq - |
94 |
characters. |
95 |
.It Cm filter Ar alias [or|and] |
96 |
Starts the declaration of a filter with the name |
97 |
.Ar alias . |
98 |
Optionally the |
99 |
.Ar and |
100 |
or |
101 |
.Ar or |
102 |
flag can be set, in order to set the mode in which the filter's masks |
103 |
will be combined (default is |
104 |
.Ar and |
105 |
mode). The |
106 |
.Ar alias |
107 |
is comprised by alphanumeric, underscore |
108 |
.Sq _ |
109 |
and minus |
110 |
.Sq - |
111 |
characters. |
112 |
.It Cm [mask] Ar [or|and] [not] searchkey |
113 |
A filter entry contains one or more mask entries which are defined with |
114 |
the optional |
115 |
.Ar mask |
116 |
command, the |
117 |
.Ar or |
118 |
or |
119 |
.Ar and |
120 |
flag, the |
121 |
.Ar not |
122 |
flag and the searching criteria, based on which matching of a filter is done. |
123 |
.Pp |
124 |
The |
125 |
.Ar or |
126 |
and |
127 |
.Ar and |
128 |
flags are used to define in which way the current |
129 |
.Ar mask |
130 |
is combined with it's previous |
131 |
.Ar mask . |
132 |
The |
133 |
.Ar not |
134 |
flag is used to revert the functionality of the specified |
135 |
.Ar searchkey . |
136 |
.Pp |
137 |
A |
138 |
.Ar string |
139 |
can be a word, or a phrase enclosed in |
140 |
.Sq \&" . |
141 |
The matching of the |
142 |
.Ar string |
143 |
is case-insensitive. |
144 |
.Pp |
145 |
The available searching criteria are: |
146 |
.Bl -tag -width Ds |
147 |
.It Cm answered |
148 |
Messages that have been answered. |
149 |
.It Cm bcc Ar string |
150 |
Messages that contain the specified |
151 |
.Ar string |
152 |
in the envelope structure's |
153 |
.Dq Bcc |
154 |
field. |
155 |
.It Cm body Ar string |
156 |
Messages that contain the specified |
157 |
.Ar string |
158 |
in the body of the message. |
159 |
.It Cm cc Ar string |
160 |
Messages that contain the specified |
161 |
.Ar string |
162 |
in the envelope structure's |
163 |
.Dq Cc |
164 |
field. |
165 |
.It Cm deleted |
166 |
Messages that are marked for deletion. |
167 |
.It Cm draft |
168 |
Messages that have not completed composition. |
169 |
.It Cm flagged |
170 |
Messages marked for urgent/special attention. |
171 |
.It Cm from Ar string |
172 |
Messages that contain the specified |
173 |
.Ar string |
174 |
in the envelope structure's |
175 |
.Dq From |
176 |
field. |
177 |
.It Cm header Ar fieldname string |
178 |
Messages that have a header with the specified |
179 |
.Ar fieldname , |
180 |
and contain the specified |
181 |
.Ar string |
182 |
in the field body. |
183 |
.It Cm larger Ar number |
184 |
Messages with size larger than the specified |
185 |
.Ar number |
186 |
in octets (bytes). |
187 |
.It Cm new |
188 |
Messages that have |
189 |
.Qq recently |
190 |
arrived in the mailbox (this session is the |
191 |
first, to have been notified about the messages) and have not been read. |
192 |
.It Cm newer Ar number |
193 |
Messages whose internal date is newer than the specified |
194 |
.Ar number |
195 |
of days. |
196 |
.It Cm old |
197 |
Messages that have not |
198 |
.Qq recently |
199 |
arrived in the mailbox and have not been |
200 |
read. |
201 |
.It Cm older Ar number |
202 |
Messages whose internal date is older than the specified |
203 |
.Ar number |
204 |
of days. |
205 |
.It Cm recent |
206 |
Messages that have |
207 |
.Qq recently |
208 |
arrived in the mailbox (this session is the |
209 |
first, to have been notified about the messages). |
210 |
.It Cm seen |
211 |
Messages that have been read. |
212 |
.It Cm smaller Ar number |
213 |
Messages with size smaller than the specified |
214 |
.Ar number |
215 |
in octets (bytes). |
216 |
.It Cm subject Ar string |
217 |
Messages that contain the specified string in the envelope structure's |
218 |
.Dq Subject |
219 |
field. |
220 |
.It Cm unanswered |
221 |
Messages that have not been answered. |
222 |
.It Cm undeleted |
223 |
Messages that are not marked for deletion. |
224 |
.It Cm undraft |
225 |
Messages that have completed composition. |
226 |
.It Cm unflagged |
227 |
Messages that are not marked for urgent/special attention. |
228 |
.It Cm unseen |
229 |
Messages that have not been read. |
230 |
.El |
231 |
.It Cm action Ar type |
232 |
The |
233 |
.Cm action |
234 |
command is used to end the filter entry started with the |
235 |
.Cm filter |
236 |
command. It assigns an action to be done when the filter is matched. |
237 |
.Pp |
238 |
The available |
239 |
.Ar type |
240 |
of actions are: |
241 |
.Bl -tag -width Ds |
242 |
.It Cm copy Ar mailbox [header,...] |
243 |
Copies the messages to the specified |
244 |
.Ar mailbox . |
245 |
If the |
246 |
.Ar mailbox |
247 |
does not exist, then it is created. |
248 |
.Pp |
249 |
Date and time conversion specifiers may be used in the name of the |
250 |
.Ar mailbox . |
251 |
Specifically, a conversion specification consists of a percent sign |
252 |
.Sq % |
253 |
and another character for the current local date and time of the system, |
254 |
and an at sign |
255 |
.Sq @ |
256 |
and another character for the date and time of the message processed. The |
257 |
characters used in the conversion specification are described in |
258 |
.Xr strftime 3 . |
259 |
.Pp |
260 |
Optionally, fetches and displays the |
261 |
.Ar header |
262 |
of the messages that were copied. |
263 |
.It Cm delete Ar [header,...] |
264 |
Deletes the messages. User can also, optionally, define the |
265 |
.Ar header |
266 |
of the deleted messages to be displayed. More than one |
267 |
.Ar header |
268 |
can be declared and fetched, by separating them with a comma |
269 |
.Sq \&, |
270 |
character. |
271 |
.It Cm flag Ar mode flag[,...] [header,...] |
272 |
Sets the flags of the messages. The |
273 |
.Ar mode |
274 |
can be |
275 |
.Ar replace , |
276 |
.Ar add , |
277 |
or |
278 |
.Ar remove . |
279 |
The |
280 |
.Ar flag |
281 |
can be |
282 |
.Ar none , |
283 |
.Ar seen , |
284 |
.Ar answered , |
285 |
.Ar flagged , |
286 |
.Ar deleted , |
287 |
or |
288 |
.Ar draft . |
289 |
Optionally, the |
290 |
.Ar header |
291 |
of the messages is displayed. |
292 |
.It Cm list Ar [header,...] |
293 |
Just displays the |
294 |
.Ar header |
295 |
of the messages. |
296 |
.It Cm move Ar mailbox [header,...] |
297 |
Moves the messages to the specified |
298 |
.Ar mailbox . |
299 |
If the |
300 |
.Ar mailbox |
301 |
does not exist, then it is created. |
302 |
Date and time conversion specifiers may be used in the name of the |
303 |
.Ar mailbox |
304 |
(see the |
305 |
.Ar copy |
306 |
action for more information). Optionally, fetches and displays the |
307 |
.Ar header |
308 |
of the messages that were moved. |
309 |
.It Cm rcopy Ar account mailbox [header,...] |
310 |
Copies the messages to the specified |
311 |
.Ar mailbox |
312 |
residing on a specific |
313 |
.Ar account . |
314 |
Date and time conversion specifiers may be used in the name of the |
315 |
.Ar mailbox |
316 |
(see the |
317 |
.Ar copy |
318 |
action for more information). Optionally, displays the |
319 |
.Ar header |
320 |
of the messages. |
321 |
Unlike all other |
322 |
.Ar type |
323 |
of actions, this requires that the message is downloaded from the source |
324 |
mail server and then uploaded to the target mail server. |
325 |
.It Cm rmove Ar account mailbox [header,...] |
326 |
Moves the messages to the specified |
327 |
.Ar mailbox |
328 |
residing on a specific |
329 |
.Ar account . |
330 |
Date and time conversion specifiers may be used in the name of the |
331 |
.Ar mailbox |
332 |
(see the |
333 |
.Ar copy |
334 |
action for more information). Optionally, displays the |
335 |
.Ar header |
336 |
of the messages. |
337 |
Unlike all other |
338 |
.Ar type |
339 |
of actions, this requires that the message is downloaded from the source |
340 |
mail server and then uploaded to the target mail server. |
341 |
.El |
342 |
.It Cm job Ar filter[,...] folder[,...] |
343 |
This command is used to define which |
344 |
.Ar filter |
345 |
must be applied to which |
346 |
.Ar folder . |
347 |
More than one |
348 |
.Ar filter |
349 |
and/or |
350 |
.Ar folder |
351 |
can be declared, by separating them with a comma |
352 |
.Sq \&, |
353 |
character. |
354 |
.It Cm [set] Ar variable=value |
355 |
Manipulate and set the configuration variables. |
356 |
.El |
357 |
.Sh VARIABLES |
358 |
.Bl -tag -width Ds |
359 |
.It Va charset |
360 |
Indicates to the server the character set of the strings that appear in the |
361 |
search criteria. It takes a string as an argument. |
362 |
.It Va daemon |
363 |
Enables the daemon mode of |
364 |
.Xr imapfilter 1 . |
365 |
It takes a numeric |
366 |
argument, the polling interval in seconds. |
367 |
.It Va errors |
368 |
By enabling this option any error messages during program's execution get |
369 |
appended to the log file, besides being written to stderr. The argument |
370 |
must be |
371 |
.Dq yes |
372 |
or |
373 |
.Dq no . |
374 |
Default is |
375 |
.Dq no. |
376 |
.It Va expunge |
377 |
Normally messages are marked for deletion and are actually deleted when the |
378 |
mailbox is closed. When this option is enabled, messages are expunged after |
379 |
they are marked deleted. The argument must be |
380 |
.Dq yes |
381 |
or |
382 |
.Dq no . |
383 |
Default is |
384 |
.Dq no . |
385 |
.It Va headers |
386 |
By enabling this variable, message headers (if requested) are displayed, |
387 |
besides being written to the log file. The argument must be |
388 |
.Dq yes |
389 |
or |
390 |
.Dq no . |
391 |
Default is |
392 |
.Dq no . |
393 |
.It Va logfile |
394 |
Full path to log file where filtering information and possible error |
395 |
messages are saved to. The command line |
396 |
.Fl l |
397 |
option overrides this setting. |
398 |
.It Va namespace |
399 |
When enabled, the program gets the namespace of the user's personal mailboxes, |
400 |
and applies automatically the prefix and hierarchy delimiter to any mailboxes |
401 |
residing on the mail server; the user must use the |
402 |
.Sq / |
403 |
character as the delimiter and |
404 |
.Dq |
405 |
(ie. nothing) as the prefix, regardless the folder format of the mail server. |
406 |
This must be disabled, if the user wants to manually specify mailbox names |
407 |
(eg. because they are not part of the user's personal namespace |
408 |
mailboxes), in which case he/she should apply the prefix and hierarchy |
409 |
delimiter that is used by the mail server. The argument must be |
410 |
.Dq yes |
411 |
or |
412 |
.Dq no . |
413 |
Default is |
414 |
.Dq yes . |
415 |
.It Va subscribe |
416 |
By enabling this variable newly created mailboxes get also subscribed; they |
417 |
are set |
418 |
.Dq active |
419 |
in order for IMAP clients to recognize them. The argument must be |
420 |
.Dq yes |
421 |
or |
422 |
.Dq no . |
423 |
Default is |
424 |
.Dq no . |
425 |
.It Va timeout |
426 |
The time in seconds, for the program to wait for a mail server's response. |
427 |
If not set, then the client will block indefinitely. |
428 |
.It Va warning |
429 |
If |
430 |
.Xr imapfilter 1 |
431 |
cannot lock memory pages, it prints a warning message about "insecure memory". |
432 |
To suppress the warning, this variable must be disabled. The argument must |
433 |
be |
434 |
.Dq yes |
435 |
or |
436 |
.Dq no . |
437 |
Default is |
438 |
.Dq yes . |
439 |
.El |
440 |
.Sh EXAMPLES |
441 |
See |
442 |
.Pa sample.imapfilterrc . |
443 |
.Sh ENVIROMENT |
444 |
.Bl -tag -width Ds |
445 |
.It Ev HOME |
446 |
User's home directory. |
447 |
.El |
448 |
.Sh SEE ALSO |
449 |
.Xr imapfilter 1 |
450 |
.Sh AUTHORS |
451 |
.An Lefteris Chatzibarbas Aq lefcha@hellug.gr |