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 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.