Skip to content

ezmlm clean.1

Manvendra Bhangui edited this page Feb 25, 2024 · 2 revisions

NAME

ezmlm-clean - clean moderation directory

SYNOPSIS

ezmlm-clean [-mMrRvV] dir

DESCRIPTION

ezmlm-clean sends out messages for timed-out posts in the moderation directory, removes timed-out messages awaiting confirm, and removes stubs for rejected and accepted posts for the mailing list stored in dir.

ezmlm-clean reads dir*/modtime*** and extracts a time-out ``time'' in hours from it. If ``time'' is 0 or dir*/modtime*** is empty or doesn't exist, a default of 120 h is used. If a time is given, it is limited to the range 24 h to 240 h.

ezmlm-clean then looks through dir*/mod/accepted/, dir/mod/rejected/, dir/mod/unconfirmed/, and dir/mod/pending/* and removes message stubs older than ``time''. ``Time'' is a minimum retention time. Since the files are processed only when ezmlm-clean is run, the delay before a message is timed-out may be substantially longer if the list does not receive many messages.

Message age determined by the time parsed from the file name, not from the creation time. Thus, there is no good way to extend the life of the file by e.g. touching it. Also, files in these directories are not checked for the proper format. Thus, most non-message files in these directories will be deleted the first time ezmlm-clean is run.

For messages in dir*/mod/pending/*** and dir*/mod/unconfirmed/, no action is taken on read-only files. Messages without the owner execute bit set are silently removed, as they are the result of incomplete ezmlm-store(1) executions. For other messages in dir/mod/pending/, a notification of the time out is sent to the sender, before the file is removed. Messages in dir/mod/unconfirmed/, dir/mod/accepted/, and dir/mod/rejected/*** are silently removed.

ezmlm-clean uses ezmlm-queue(1) to send messages. ezmlm-clean sets environment variables from /etc/indimail/ezmlm/global_vars. This can be used to set queue related variables for ezmlm-queue. If /etc/indimail/ezmlm/global_vars exists, existing environment variables are cleared except for EZMLM_ETC, EZMLMQUEUE, QMAILQUEUE. The clearing/setting of environment variables is done like how envdir(1) works.

ezmlm-clean logs errors to the mail log. Re-delivery should be avoided by suffixing any .qmail line invoking ezmlm-clean with '|| exit 0'.

By default, the timed-out post is returned to the sender. If dir*/noreturnposts*** exists, it switches the default to discard the timed-out post. Note: ezmlm-clean is normally run from both dir*/editor*** and dir*/moderator***. To suppress sender notification, either dir*/noreturnposts*** needs to exist or the -R option needs to be specified for all invocations of ezmlm-clean.

/etc/indimail/control*/qmqpservers*** exists, ezmlm-clean will use qmail-qmqpc(1) to send messages. Server IP addresses listed one per line in /etc/indimail/control*/qmqpservers*** will be tried in order.

OPTIONS

-m
(Default.) The timed-out post is sent as a MIME enclosure.

-M
The timed-out post is appended to the message.

-r
(Default.) The timed-out post is returned to sender.

-R
The timed-out post is discarded without sender notification.

-v
Display ezmlm-clean version information.

-V
Display ezmlm-clean version information.

CHARACTER SETS

If dir*/charset*** exists, ezmlm-clean will use the character set listed for all messages. Otherwise, the default ``us-ascii'' will be used. The character set can be suffixed by ``:'' followed by a code. If the code is ``Q'', outgoing messages are sent as ``Quoted-Printable'', if it is ``B'' they are sent ``base64'' encoded. Otherwise, text is sent as is.

SEE ALSO

ezmlm-confirm(1), ezmlm-make(1), ezmlm-moderate(1), ezmlm-store(1), qmail-qmqpc(1) qmail-multi(1) qmail-queue(1) ezmlm-queue(1), envdir(8), ezmlm(5),

Clone this wiki locally