Import ezmlm-idx 0.40
[ezmlm] / ezmlm.5
1 .TH ezmlm 5
2 .SH NAME
3 ezmlm \- format of ezmlm directory
4 .SH OVERVIEW
5 An
6 .B ezmlm
7 directory,
8 .IR dir ,
9 stores information about an
10 .B ezmlm
11 mailing list.
12 .B ezmlm-make
13 creates
14 .IR dir ;
15 .B ezmlm-sub
16 and
17 .B ezmlm-unsub
18 manipulate the subscriber list stored under
19 .IR dir ;
20 .B ezmlm-manage
21 handles administrative requests automatically;
22 .B ezmlm-send
23 sends a message to all subscribers listed in
24 .I dir
25 and also maintains a message archive and message subject index if the list
26 is configured to do so.
27 .B ezmlm-reject
28 rejects messages that have an empty subject, or a subject consisting of
29 only a command word;
30 .B ezmlm-return
31 handles bounces;
32 .B ezmlm-warn
33 warns users for which messages bounce and eventually removes them from
34 the subscriber list.
35 .B ezmlm-idx
36 can create a subject index from an existing list archive.
37 .B ezmlm-get
38 manages message, index, and thread retrieval from the archive, as well
39 as the generation of message digests;
40 .B ezmlm-cron
41 provides a restricted interface to cron for the generation of
42 digest generation trigger messages;
43 .B ezmlm-store
44 queues messages of moderated lists and sends a moderation request to
45 the moderator(s);
46 .B ezmlm-moderate
47 processes moderation requests to accept the queued message to the list
48 via
49 .B ezmlm-send,
50 or to return the message to the sender;
51 .B ezmlm-clean
52 cleans up the moderation queue and returns to the sender
53 any messages that have timed-out;
54 .B ezmlm-gate
55 posts messages that come from a SENDER in an address database, and sends
56 remaining messages out for moderation;
57 .B ezmlm-check
58 is used to diagnose problems with ezmlm mailing list configuration;
59 .B ezmlm-issub
60 and
61 .B ezmlm-issubn
62 determine if a SENDER is a subscriber or a member of a
63 collection of addresses;
64 .B ezmlm-tstdig
65 determines if it is time to create a new digest based on the number and
66 volume of messages and the amount of time that has passed since the last
67 digest was issued;
68 .B ezmlm-request
69 can be used to answer
70 .B ezmlm
71 commands in the subject line easing migration from other mailing list
72 managers. It can also function as a global interface mimicking
73 the interface of other mailing list manager.
74 .B ezmlm-glmake
75 can set up the global interface, and
76 .B ezmlm-glconf
77 can create a configuration file for the global interface from your lists.
78 .SH SUBSCRIBERS
79 .I dir\fB/subscribers
80 is a directory containing the subscriber list.
81 .B ezmlm-manage
82 allows automatic subscription if
83 .I dir\fB/public
84 exists.
85
86 The list is hashed into 53 files, named
87 .B @
88 through
89 .B t
90 in ASCII.
91 A nonexistent file is treated as an empty file.
92
93 Each file contains a series of addresses.
94 An address can be any string of non-NUL characters up to 400 bytes long.
95 Each address is preceded by the letter T and followed by a NUL.
96
97 For reliability,
98 when an address is added to or removed from the mailing list,
99 the relevant file is recreated under a temporary name
100 inside
101 .I dir\fB/subscribers
102 and then moved into place.
103
104 .I dir\fB/key
105 is a binary file.
106 .B ezmlm-manage
107 uses
108 .I dir\fB/key
109 to create confirmation numbers.
110 Anyone who can guess the contents of
111 .I dir\fB/key
112 can forge subscription requests.
113 .B ezmlm-make
114 does not put much effort into making
115 .I dir\fB/key
116 difficult to guess;
117 for better security, you should add some random garbage to
118 .IR dir\fB/key .
119 .SH ARCHIVE
120 .I dir\fB/archive
121 is a directory containing messages previously sent to subscribers.
122 .B ezmlm-send
123 archives all new messages if
124 .I dir\fB/archived
125 exists. If
126 .I dir\fB/indexed
127 exists,
128 .B ezmlm-send
129 also maintains a message subject and author index.
130
131 Messages sent to the mailing list are numbered from 1 upwards,
132 whether or not they are archived.
133 .I dir\fB/num
134 is the number of messages sent so far followed by ':', followed by the
135 cumulative amount of message body that has passed
136 .B ezmlm-send
137 stored as kbytes * 4 (4 corresponds to 1kb).
138
139 .I dir\fB/archive
140 has subdirectories,
141 each subdirectory storing up to 100 messages.
142 Message number 100m+n, with n between 0 and 99, is stored in
143 .IR dir\fB/archive/\fIm\fB/\fIn .
144 For example, message number 15307 is stored in
145 .IR dir\fB/archive/153/07 .
146 The message index is stored in the file
147 .B index
148 in the same subdirectory of
149 .I dir\fB/archive
150 holding the corresponding messages.
151 Thus, the subject index contains up to 100 entries.
152
153 The subject index contains message subjects that are normalized so that
154 the original message and all replies have the same entry. The subject index
155 is used for advanced message retrieval functions. For safety, the subject
156 index is created under a temporary name
157 inside
158 .I dir\fB/archive
159 and then moved into place.
160
161 .B ezmlm-manage
162 will ignore message files without the owner-execute bit set.
163 .B ezmlm-send
164 turns on the owner-execute bit after safely writing the message to disk.
165
166 .B ezmlm-make
167 by default adds
168 .B ezmlm-get
169 to
170 .I dir\fB/manager
171 to handle
172 .I \-get, \-index,
173 and
174 .I \-thread
175 requests. If
176 .B ezmlm-make
177 is invoked with a
178 .I digcode
179 command line argument, digest creation
180 is enabled by putting this argument on the
181 .B ezmlm-get
182 command line.
183 .SH BOUNCES
184 .I dir\fB/bounce
185 is a directory containing bounce messages.
186 .B ezmlm-return
187 stores several types of files here.
188 .SH "DELIVERY INSTRUCTIONS"
189 .B ezmlm-make
190 sets up four files to control mailing list deliveries.
191 Each file is a series of delivery instructions in
192 .B dot-qmail
193 format.
194
195 .I dir\fB/editor
196 handles incoming mailing list submissions.
197 .B ezmlm-make
198 sets up
199 .I dir\fB/editor
200 to invoke
201 .B ezmlm-send
202 to immediately forward each message to all subscribers
203 and then to run
204 .BR ezmlm-warn .
205
206 .I dir\fB/owner
207 handles incoming messages for the mailing list's owner.
208 .B ezmlm-make
209 sets up
210 .I dir\fB/owner
211 to store messages in
212 .I dir\fB/Mailbox
213 and then to run
214 .BR ezmlm-warn .
215
216 .I dir\fB/bouncer
217 handles incoming bounce messages.
218 .B ezmlm-make
219 sets up
220 .I dir\fB/bouncer
221 to invoke
222 .BR ezmlm-return .
223 .B ezmlm-warn
224 is no longer invoked here due to the load it places on systems with many
225 large lists with many bounces.
226
227 .I dir\fB/manager
228 handles incoming administrative requests.
229 .B ezmlm-make
230 sets up
231 .I dir\fB/manager
232 to invoke
233 .BR ezmlm-get ,
234 .BR ezmlm-manage ,
235 and then
236 .BR ezmlm-warn .
237
238 .I dir\fB/moderator
239 handles incoming message
240 .I accept
241 and
242 .I reject
243 requests for moderated lists.
244 .B ezmlm-make
245 sets up
246 .I dir\fB/moderator
247 to invoke
248 .BR ezmlm-moderate ,
249 and .BR ezmlm-clean .
250 .SH DIGESTS
251 .B ezmlm-get
252 can create digests if it is invoked from the command line, from
253 .IR dir\fB/editor ,
254 or from
255 .IR dir\fB/manager .
256 The program functions in slightly different ways in these 3 settings (see
257 .BR ezmlm-get(1) ).
258
259 To enable automatic digests for a mailing list, use the
260 .B ezmlm-make \-d
261 switch. To also enable the generation of digests at specific times dictated
262 by mailed trigger messages, a
263 .I digcode
264 should be specified on the
265 .B ezmlm-get
266 command line.
267 This can be done by specifying
268 .I digcode
269 as a fifth argument to
270 .B ezmlm-make
271 when setting up the list.
272 .I digcode
273 must be alphanumeric and is case-insensitive.
274
275 To generate trigger messages, use
276 .B ezmlm-cron(1)
277 as an interface to
278 .B crond(8)
279 or use
280 .B crond
281 directly.
282
283 .I dir\fB/num
284 contains the number of the last message processed, followed by ':' and a
285 number that is increased by 1 for each 256 bytes of message body text
286 processed. The latter number is used by
287 .B ezmlm-tstdig
288 to determine if a new digest is due.
289
290 .I dir\fB/dignum
291 contains the contents of
292 .I dir\fB/num
293 at the time of the last regular digest creation, followed by a ':',
294 followed by a timestamp.
295 It is updated after each regular digest is sent.
296
297 .I dir\fB/digissue
298 contains the issue number of the last regular digest. It is incremented
299 for each regular digest sent.
300
301 The following user crontab entry (all on one line)
302 generates a digest of the list
303 .I list@host.domain
304 at 1600 every day:
305
306 .EX
307 00 16 * * * /var/qmail/bin/qmail-inject list-dig.digcode
308 .EE
309
310 Alternatively,
311 .B ezmlm-cron
312 can be used:
313
314 .EX
315 % ezmlm-cron -t 16:00 list@host digcode
316 .EE
317
318 .B ezmlm-get
319 can also be run from the shell: To generate a digest to
320 .I list-digest@host
321 from the list housed in
322 .IR ~joe/list :
323
324 .EX
325 % ezmlm-get ~joe/list
326 .EE
327
328 Like other
329 .B ezmlm-get
330 replies, digest can be sent in several formats. See
331 .B ezmlm-get(1)
332 for more info.
333 .SH MODERATION
334 There are three aspects of moderation: moderation of posts, moderation
335 of subscriptions, and "remote administration", i.e. giving the
336 moderator the right to (un)subscribe any user.
337 .B ezmlm
338 handles these three aspects separately. The two first aspects enhance
339 security, while the third decreases security, but makes list administration
340 considerably easier. By default, the moderator database is the same for all
341 three functions. While "remote administration" and subscription moderation
342 always use the same database, the moderators for message moderation can
343 be different.
344
345 Even with subscription moderation, the user has to verify the request. This
346 is to ensure that the user initiating the request really controls the address.
347 .B ezmlm-manage
348 options exist to disable the user handshake, which may be useful in some
349 circumstances.
350
351 For moderation options, the moderators are by stored in a subscriber
352 list in
353 .IR moddir\fB/subscribers .
354 By default
355 .I moddir
356 is
357 .IR dir\fB/mod .
358
359 Moderators can be added and removed with:
360
361 .EX
362 .B ezmlm-sub
363 .I moddir
364 .I moderator@host
365 .EE
366
367 .EX
368 .B ezmlm-unsub
369 .I moddir
370 .I moderator@host
371 .EE
372
373 For subscription moderation, touch
374 .IR dir\fB/modsub
375 after adding moderator(s).
376 For remote administration, touch
377 .IR dir\fB/remote .
378 If the contents of these files start with a leading forward slash, it is
379 assumed to be the name of
380 .B moddir
381 subscription
382 moderation. If both files exist and start with a forward slash, the
383 .I dir\fB/remote
384 contents are ignored. Moderators are stored in a subscriber list in the
385 .B subscribers
386 subdirectory of
387 .BR moddir .
388 If no directory names are specified,
389 the default,
390 .IR dir\fB/mod ,
391 is used.
392 In all cases, the
393 .I subscribers
394 subdirectory of the base directory must exists/be created.
395
396 Moderation of messages is achieved by
397 creating
398 .I dir\fB/modpost
399 and modifying
400 .IR dir\fB/editor
401 to invoke
402 .B ezmlm-store.
403 .B ezmlm-store
404 stores the message in
405 .IR dir\fB/mod/pending
406 and sends a moderation request to all moderators stored in
407 .IR moddir .
408
409 If
410 .I dir\fB/modpost
411 does not exist,
412 .B ezmlm-store
413 posts messages directly, and
414 .B ezmlm-clean
415 does nothing.
416
417 If
418 .I dir\fB/modpost
419 contains a directory name starting with a forward slash,
420 this directory is used as
421 .I moddir
422 for message moderation.
423 Moderators are stored in a subscriber list in the
424 .I subscribers
425 subdirectory of
426 .IR moddir .
427 If no directory names are specified,
428 the default,
429 .IR dir\fB/mod ,
430 is used.
431
432 .IR dir\fB/moderator
433 is linked to
434 .IR dot\fB\-accept-default
435 and
436 .IR dot\fB\-reject-default .
437 It handles replies from the moderators.
438
439 In addition to a moderator list, the directories
440 .IR dir\fB/mod/pending ,
441 .IR dir\fB/mod/accepted ,
442 and
443 .IR dir\fB/mod/rejected
444 must exist. These directories contain the message moderation queue.
445
446 If
447 .IR dir\fB/mod/modtime
448 it determines the minimal time in hours that messages wait in the moderation
449 queue, before they are returned to sender with the message in
450 .IR dir\fB/text/mod-timeout .
451
452 If a
453 .I \-help
454 command is send for a moderator and
455 .IR dir\fB/modsub
456 or
457 .IR dir\fB/remote
458 exist, a more detailed help message stored in
459 .I dir\fB/text/mod-help
460 will be sent together with the regular help. This text should not contain
461 secrets.
462 If
463 .I dir\fB/text/mod-help
464 does not exist,
465 .I dir\fB/text/help
466 will be sent.
467
468 If a
469 .I \-list
470 command is sent for a moderator and
471 .IR dir\fB/modsub
472 or
473 .IR dir\fB/remote
474 exist, and the
475 .B ezmlm-manage \-l
476 command line switch is specified, a subscriber list will be returned.
477
478 If an
479 .I \-edit.file
480 command is sent for a moderator and
481 .IR dir\fB/remote
482 exist, and the
483 .B ezmlm-manage \-d
484 command line switch is specified,
485 .B text\fB/file
486 is returned together with an
487 .B ezmlm
488 cookie. The remote administrator may return an edited version of the
489 file, which will be stored, provided that the cookie is valid.
490 See
491 .B ezmlm-manage(1)
492 for more info.
493 .SH TEXT
494 .I dir\fB/text
495 is a directory
496 containing files sent out by
497 .B ezmlm-manage
498 in response to administrative requests:
499 .TP 15
500 .B top
501 Introducing
502 .BR ezmlm .
503 This is placed at the top of each response.
504 .TP
505 .B bottom
506 Explaining how to use
507 .BR ezmlm .
508 This is placed at the bottom of each response.
509 .TP
510 .B sub-confirm
511 Explaining how to confirm a subscription request.
512 .TP
513 .B sub-ok
514 Acknowledging successful subscription.
515 .TP
516 .B sub-nop
517 Acknowledging a subscription request for an address already
518 on the mailing list.
519 .TP
520 .B sub-bad
521 Rejecting a bad subscription confirmation number.
522 .TP
523 .B unsub-confirm
524 Explaining how to confirm an unsubscription request,
525 and explaining how to figure out the subscription address.
526 .TP
527 .B unsub-ok
528 Acknowledging successful unsubscription.
529 .TP
530 .B unsub-nop
531 Acknowledging an unsubscription request for an address not
532 on the mailing list.
533 .TP
534 .B unsub-bad
535 Rejecting a bad unsubscription confirmation number.
536 .TP
537 .B get-bad
538 Rejecting a bad archive retrieval request.
539 .TP
540 .B digest
541 Text copied into the
542 .I Administrativia
543 section of the digest. Usually, this will contain subscription info
544 for the digest, as well as information on how to post to the list.
545 .TP
546 .B trailer
547 If this files exists, it is copied to the end of all messages to the list.
548 .TP
549 .B faq
550 Sent in response to the
551 .I faq
552 command. Usually contains frequently asked questions and answers specific
553 for the mailing list.
554 .TP
555 .B info
556 Sent in response to the
557 .I info
558 command. Usually contains a descripition, policy, etc, for the list. The
559 first line should in itself be a very brief description of the list.
560 .TP
561 .B bounce-warn
562 Pointing out that messages have bounced.
563 .TP
564 .B bounce-probe
565 Pointing out that a warning message has bounced.
566 .TP
567 .B bounce-num
568 Explaining that
569 .B ezmlm-return
570 has kept a list of bounced message numbers.
571 .TP
572 .B dig-bounce-num
573 Explaining that digest messages have bounced. All other text files are used
574 for both the main list and the digest list.
575 .TP
576 .B bounce-bottom
577 Separating the bounce message.
578 .TP
579 .B mod-help
580 is set to list moderators issuing a
581 .I \-help
582 command. It contains instructions for moderators, but it is relatively
583 trivial for a non-moderator to read it. Don't put secrets here.
584 .TP
585 .B mod-reject
586 is the returned to the sender of a rejected post.
587 .TP
588 .B mod-timeout
589 is returned if the message timed-out without moderator action.
590 .TP
591 .B mod-sub
592 is added to the text confirming subscription and unsubscription
593 instead of
594 .B bottom
595 and the requesting message, for actions that were approved
596 by a moderator. Not copying the requesting message
597 hides the moderator identity
598 from the subscriber.
599 .TP
600 .B mod-request
601 is the text sent to the moderators to request moderator action on
602 a posted message.
603 .TP
604 .B mod-unsub-confirm
605 Requesting that the moderator confirm a request to subscribe.
606 If this file does not exist,
607 .B sub-confirm
608 will be used.
609 .TP
610 .B mod-unsub-confirm
611 Requesting that the moderator confirm a request to unsubscribe.
612 If this file does not exist,
613 .B unsub-confirm
614 will be used.
615 .TP
616 .B edit-do
617 Instructions sent to the remote administrator together with a copy
618 of a
619 .I dir\fB/text
620 file and editing instructions.
621 .TP
622 .B edit-list
623 A list of editable files in
624 .I dir\fB/text
625 with a one-line description send to a remote administrator in response to a
626 .I -edit
627 command.
628 .TP
629 .B edit-done
630 Sent to the remote administrator after an edited
631 .I dir\fB/text
632 file has been successfully saved.
633 .PP
634 Several tags in the text files are replaced by ezmlm programs.
635 All programs replace the tag
636 .B <#l#>
637 with the name of the list or the list-digest, as appropriate for the request,
638 and
639 .B <#h#>
640 with the hostname for the list.
641 .B ezmlm-send
642 and
643 .B ezmlm-get
644 replace
645 .B <#n#>
646 with the current message number in added headers from
647 .I dir\fB/headeradd
648 and text files.
649 .B ezmlm-get
650 does this for digest messages, where the current message is the number of
651 the first message in the digest.
652 .B ezmlm-manage
653 replaces the tag
654 .B <#A#>
655 anywhere on a line with the subscription address, and
656 .B <#R#>
657 anywhere on a line
658 with the address the subscriber must reply to. Only the first tag on any
659 line is processed.
660 .PP
661 For backwards compatibility,
662 .B ezmlm-manage
663 replaces the line
664 .B !A
665 in any of these files
666 with the name of the subscription address.
667 It replaces the line
668 .B !R
669 in
670 .B sub-confirm
671 and
672 .B unsub-confirm
673 with the address that the subscriber must reply to.
674 .PP
675 .B ezmlm-store
676 replaces the tag
677 .B <#A#>
678 anywhere on a line with the address for accepting the message, and
679 .B <#R#>
680 anywhere on a line
681 with the address for rejecting the message.
682 Only the first tag on any line is processed.
683 .PP
684 For backwards compatibility,
685 .B ezmlm-store
686 also replaces the line
687 .B !A
688 with the address for accepting the message and the line
689 .B !R
690 with the address for rejecting the message.
691 .SH "OUTGOING MESSAGE EDITING"
692 .I dir\fB/headerremove
693 is a list of bad header field names,
694 one per line.
695 .B ezmlm-send
696 removes these header fields from all outgoing messages.
697 .B ezmlm-make
698 sets up
699 .I dir\fB/headerremove
700 to remove
701 .BR Return-Path ,
702 .BR Return-Receipt-To ,
703 and
704 .B Return-Path
705 fields.
706
707 .I dir\fB/headeradd
708 is a list of new header fields.
709 .B ezmlm-send
710 adds these fields to every outgoing message.
711 .B ezmlm-send
712 sets up
713 .I dir\fB/headeradd
714 to add
715 .B X-No-Archive: yes
716 and
717 .BR Precedence: bulk .
718
719 If
720 .I dir\fB/mimeremove
721 exists,
722 .B ezmlm-send
723 removed parts with the corresponding content-types from composite MIME
724 messages. If the
725 .B ezmlm-reject
726 .I dir
727 argument is specified,
728 simple MIME messages of these content-types are rejected.
729
730 If
731 .I dir\fB/mimereject
732 exists, and the
733 .B ezmlm-reject
734 .I dir
735 argument is specified,
736 simple MIME messages of these content-types, or
737 composite MIME messages with any body part of these content-types are rejected.
738
739 If
740 .I dir\fB/sequence
741 exists, the first line is added as a header to all outgoing messages, followed
742 by a space and the message number. The message number is useful for archive
743 retrievals, since some mail systems do not reveal the return-path to the user.
744 .B NOTE:
745 Sublists have their own message counter. Adding a sequence header from a
746 sublists will give you the sublist message number which is different from
747 the main list message number.
748
749 .I dir\fB/prefix
750 is a subject prefix. If this file exists, its contents are prefixed to the
751 subject of the post in the outgoing message. The archived message is not
752 processed. Attempts are made to not duplicate an existing prefix in replies.
753 Think twice before using this option.
754 A prefix takes unnecessary space on the subject line and most mail clients
755 can easily filter on other headers, such as 'Mailing-List:'. If
756 .I dir\fB/prefix contains a single '#', this will be replaced by the message
757 number. The use of this feature is inadvisable and violates internet mail
758 standards. However, it is very popular in e.g. Japan. If you must use this
759 feature, make sure you are aware that you may be causing problems to users,
760 sublists, etc.
761
762 .I dir\fB/text/trailer
763 is a message trailer. If this file exists, it's contents are copied to the
764 end of outgoing messages. Only lines terminated with new-line are copied.
765 No trailer is copied to the archived version of the message.
766 .SH MISCELLANY
767 The first line of
768 .I dir\fB/mailinglist
769 is a line of text.
770 .B ezmlm-send
771 creates a new
772 .B Mailing-List
773 field, showing the contents of
774 .IR dir\fB/mailinglist ,
775 in every outgoing message.
776
777 If
778 .I dir\fB/listid
779 exists,
780 ezmlm programs create a new
781 .B List-ID
782 field, showing the contents of the first line of
783 .IR dir\fB/listid ,
784 in every outgoing message. The list-id should be unique and within name
785 space controlled by the owner. It should remain constant even if lists
786 move and be of the format
787
788 .EX
789 List-ID: optional_text <unique_id.domain>
790 .EE
791
792 This header would result from a
793 .I dir\fB/listid
794 file containing ``optional_text <unique_id.domain>''. See
795 .I http://www.within.com/~chandhok/ietf/listid.shtml
796 for more info.
797
798 The first lines of
799 .I dir\fB/outlocal
800 and
801 .I dir\fB/outhost
802 give the outgoing name of the mailing list.
803 These are used by
804 .B ezmlm-manage
805 and
806 .B ezmlm-send
807 to construct sender addresses for outgoing messages.
808
809 The first lines of
810 .I dir\fB/inlocal
811 and
812 .I dir\fB/inhost
813 give the incoming name of the mailing list.
814 These are used by
815 .B ezmlm-manage
816 to parse incoming envelopes.
817 Normally
818 .I inlocal
819 and
820 .I inhost
821 are the same as
822 .I outlocal
823 and
824 .IR outhost ,
825 but sometimes they are different,
826 with
827 .I outlocal\fB@\fIouthost
828 forwarded to
829 .IR inlocal\fB@\fIinhost .
830
831 If
832 .I dir\fB/sublist
833 exists,
834 this mailing list is a sublist,
835 redistributing messages from a parent mailing list.
836 The first line of
837 .I dir\fB/sublist
838 is the name of the parent list.
839 This affects the behavior of
840 .BR ezmlm-send .
841
842 If
843 .I dir\fB/qmqpservers
844 exists,
845 .B ezmlm-send
846 and
847 .B ezmlm-get
848 will use
849 .B qmail-qmqpc(1)
850 to send posts and digests. Other mail will use the normal qmail mechanism.
851 If
852 .B qmail-qmqpc
853 is modified correctly, server IP addresses listed one per line in
854 .I dir\fB/qmqpsevers
855 will be tried in order, rather than the default servers specified in
856 .IR /var/qmail/control .
857
858 If
859 .I dir\fB/msgsize
860 exists, it is assumed to contain ``max:min'', where ``max'' is the maximum
861 size in bytes of an acceptable message body, and ``min'' the corresponding
862 minimal size. Either will be ignored if zero or omitted. If the
863 .B ezmlm-reject
864 command line specifies the list directory, messages not meeting the size
865 criteria are rejected.
866
867 If
868 .I dir\fB/charset
869 exists, the first line is assumed to represent a valid MIME character set,
870 which is used for all outgoing MIME messages sent by
871 .B ezmlm-get
872 and the message moderation programs. The character set string may be suffixed
873 with ':' and 'Q' or 'B' to send all outgoing
874 text (ezmlm messages, digest table-of-contents, moderation requests, etc)
875 encoded in ``Quoted-Printable'' or ``base64'' encoding. By default, no encoding
876 is done, which may result in the transmission of characters with the high
877 bit set. When encoding is specified, trigger messages and other parts of the
878 reply that should not be encoded are sent as separate MIME parts.
879
880 .I dir\fB/lock
881 is an empty file.
882 Any program that reads or writes the subscriber list,
883 or adds messages to the archive,
884 locks
885 .IR dir\fB/lock .
886
887 .I dir\fB/Log
888 is an advisory log of subscription and unsubscription actions.
889 .B WARNING:
890 .B Log
891 is not protected against system crashes.
892 Log entries may be missing or corrupted if the system goes down. There is
893 Log for each of the accessory address databases as well. Thus, the log
894 for digest subscribers is
895 .IR dir\fB/digest/Log .
896 If enabled, these logs can be retrieved by remote administrators (see
897 .BR ezmlm-manage(1) ).
898
899 .I dir\fB/digest
900 contains items specific for the digest list.
901
902 .I dir\fB/digest/subscribers
903 contains hash files of digest subscriber addresses.
904
905 .IR dir\fB/digest/Log ,
906 .IR dir\fB/digest/bounce ,
907 .IR dir\fB/digest/lockbounce ,
908 and
909 .I dir\fB/digest/lock
910 have functions for the digest list that mirror that of the corresponding
911 files in
912 .IR dir .
913
914 .I dir\fB/sql
915 contains SQL server access information for list that are configured to
916 use an SQL database for storage.
917
918 .I dir\fB/tstdig
919 is a timestamp used temporarily by
920 .B ezmlm-tstdig(1)
921 to coordinate digesting.
922 .SH "SEE ALSO"
923 ezmlm-check(1),
924 ezmlm-clean(1),
925 ezmlm-gate(1),
926 ezmlm-get(1),
927 ezmlm-idx(1),
928 ezmlm-issub(1),
929 ezmlm-issubn(1),
930 ezmlm-list(1),
931 ezmlm-make(1),
932 ezmlm-manage(1),
933 ezmlm-moderate(1),
934 ezmlm-request(1),
935 ezmlm-return(1),
936 ezmlm-send(1),
937 ezmlm-store(1),
938 ezmlm-sub(1),
939 ezmlm-tstdig(1),
940 ezmlm-unsub(1),
941 ezmlm-warn(1),
942 dot-qmail(5)