ezmlmrc
Section: File Formats (5)
Index
Return to Main Contents
NAME
ezmlmrc - ezmlm-make configuration file
SYNOPSIS
ezmlmrc
DESCRIPTION
ezmlmrc
is a file that configures
ezmlm-make(1)
for setting up new lists.
ezmlmrc
if a plain text with four types
of tags. All start in
the first position of the line.
No other text is allowed on the same line. For
security reasons, no periods are allowed anywhere in a tag.
Any line with a ``#'' in position 1 is ignored,
as is any text preceding the first tag.
The first line
in
ezmlmrc
is unique. It should start in position 1 with ``x.yz'', where
``x'' is the major version number, ``y'' a minor version number, and ``z''
a bugfix version number.
ezmlm-make(1)
will print a warning message if it is used with an
ezmlmrc
file that lacks the version identifier, or with an
ezmlmrc
file that has a version identifier that differs in
either major or minor version numbers from the
ezmlm-make
version.
The
ezmlmrc
file is processed top down. Text preceding the first tag is ignored.
Subsequently, one and only one file is open for writing. Any text encountered
in
ezmlmrc
is copied to that file as is with a few substitutions (see below). Text
following conditional tags is copied only if the condition is met. A file is
automatically closed when a new file is opened. Opening a file overwrites
any preexisting file with that name.
Tags are:
- </filename#aI/>
-
The following text will be copied to
dir/filename
if the options specified after the ``#'' are active, in this case
archived
and not
indexed.
Any number of flags can be specified. This is used to adapt the files and
messages to the type of list created. If no flags are
used, the ``#'' can be omitted. If the file name is the same as the previous
tag, or if it is omitted, the text will be added to the previous file.
When a new file is opened the previous file is closed. Attempts to add
more text to a already closed file overwrites its contents.
For all letter switches (except
-cCvV),
upper and lower
case tags are opposite and mutually exclusive. Thus, if
-g
is specified,
-G
is not set and
if
-G
is set,
-g
is not.
The tag
#E
has special meaning. It is false if the list is being edited, e.g.
ezmlm-make
-e
or
+,
but true
if switches
-ee
or
-++
are used, or if
ezmlm-make
local
is specified. Thus, for normal edits with unchanged list name, the files
tagged with
#E
are not overwritten (preserving manual customizations), but if the list name
changes or if explicitly specified by
-ee
or
-++
the
#E
switch is ignored.
- </filename#5^i/>
-
This is an alternative way of specifying ``if switch -5 is specified and
the -i switch is not specified''. ``^'' is used as ``not''.
- </-filename#eA/>
-
dir/filename
will be erased, if the options after the ``#'' are active, in this case
not archived
and
edit.
An alternative to specify that a flag, e.g. ``4'' should not be active is
to use ``^4''.
- </+directory#aI/>
-
The directory ``directory'' is created if the flags specified are active, in
this case
archived
and not
indexed.
If no flags are specified, the ``#'' can be
omitted.
- </:link/directory#aI/>
-
dot-link
is symlinked to
dir/directory
if the flags specified are active, in
this case
archived
and not
indexed.
If no flags are specified, the ``#'' can be
omitted.
In addition,
local
is substituted for
<#L#>,
the part of
dot
between the first 2 hyphens (if any) for
<#1#>,
the part of
dot
between the second and third hyphen (if any) for
<#2#>,
host
for
<#H#>,
dir
for
<#D#>,
dot
for
<#T#>,
digestcode
for
<#C#>,
and the path to the
ezmlm
binaries for
<#B#>
anywhere in the text. Other tags of this format are copied to the files as is.
<#l#>,
<#h#>,
<#A#>,
<#R#>,
will be substituted on-the-fly where appropriate for the
local
or
local-digest
local part of the list address, the
host,
the subscriber address or the moderation accept address,
and the subscription reply address or moderation reject address, respectively.
The use of
<#l#>
is to allow the same text file to be used for requests pertaining to both
the main list and the digest list.
Before the template file is processed,
ezmlm-make
will create the list directory.
ezmlm-make
will also create
dir/key.
DESCRIPTION OF EZMLMRC
The ezmlmrc file is preconfigured to act upon
ezmlm-make(1)
switches to produce the results as described in the
ezmlm-make(1)
man page.
A number of files are created via
ezmlmrc
independently of any switched. These are
dir/text/info
with a short description of the list,
dir/text/faq
with frequently asked questions about the list,
dir/headeradd
adding ``Precedence: bulk'' and ``X-No-Archive: yes'' to outgoing messages,
dir/headerremove
removing ``Return-Path'', ``Return-Receipt-To'', ``Content-length'',
and ``Precedence'' from list messages, and
dir/text/sub-ok
with text sent after successful subscription. These files are not overwritten
when lists are edited.
Also created are the following files within
dir/text/:
bottom,
bounce-bottom,
bounce-num,
dig-bounce-num,
bounce-probe
bounce-warn,
get-bad,
help,
mod-help,
mod-request,
mod-reject,
mod-timeout,
mod-sub-confirm,
mod-unsub-confirm,
post-confirm,
sub-bad,
sub-confirm,
sub-nop
unsub-bad,
unsub-confirm,
unsub-nop,
unsub-ok,
top.
dir/bouncer
is set up to invoke
ezmlm-weed(1)
and
ezmlm-return(1)
to handle bounces.
In addition to switch-dependent lines, an invocation of
ezmlm-warn(1)
is placed at the end of
dir/editor,
dir/manager,
and
dir/owner
to process the contents of the bounce directory.
ezmlm-reject(1)
is placed first in
dir/editor
(unless the
-0 mainlist@mainhost
switch is used) to reject undesirable messages.
Below is a description of the switches and the consequences
the have for list creation with the standard
ezlmrc
file.
emzlm-make(1)
by default sets the
-a,
and
-p
switches.
- -a
-
dir/archived
and
dir/indexed
are created.
dir/text/bottom
is adjusted to mention archive access.
-A
dir/archived
and
dir/indexed
are removed.
- -b
-
Block archive. The list set up with
ezmlm-get -P
to allow only moderators archive access.
- -B
-
The
ezmlm-get -P
switch is not used.
- -d
-
dir/digest/
is created.
dir/digest/lock
is created.
dir/digest/lockbounce
is created.
dir/digest/bounce/
is created.
dir/digest/subscribers/
is created.
dot-digest-owner
is linked to
dir/owner.
dot-digest-return-default
is linked to
dir/bouncer.
An invocation of
ezmlm-warn(1) -d
is added to
dir/editor
and
dir/manager.
Invocations of
ezmlm-tstdig(1)
and
ezmlm-get(1)
are added with default arguments to
dir/editor.
A note on digest (un)subscription is added to
dir/text/bottom
and to
dir/text/mod-help.
dir/text/digest
is created for the ``Administrivia'' section of the digest.
- -D
-
The items mentioned under switch
-d
are not done. The result is that the references to the digest
in the text files is removed.
- -f
-
The text ``[local]'' is placed in
dir/prefix
resulting in the text being used as the list's subject index.
- -F
-
dir/prefix
is removed.
- -g
-
The -s switch is added to the
ezmlm-get(1)
line in
dir/manager
so that only subscribers can access the archive.
- -G
-
The -s switch for
ezmlm-get(1)
is not used. Anyone can access the archive if archive (access) in general
is enabled (see
-p
for ``public'',
-a
for ``archived'', and
-i
for ``indexed''.
- -i
-
dir/editor
(for normal lists)
or
dir/moderator
(for moderated lists)
are set up to run
ezmlm-archive(1)
after messages are posted. This sets up the cross-reference for
ezmlm-cgi(1)
WWW access.
- -I
-
ezmlm-archive(1)
is not configured.
- -j
-
dir/manager
uses
ezmlm-manage -U
to allow unconfirmed unsubscribe.
-J
The
ezmlm-manage -U
switch is not used.
- -k
-
Blacklist. A
ezmlm-issubn(1)
line that tests the envelope sender against the address database in
dir/deny
is inserted into
dir/editor.
As a consequence, posts from such senders are rejected. This switch is ignored
for sublists (i.e. if the
-0 mainlist@mainhost
switch is used).
- -K
-
The
ezmlm-issubn(1)
line testing the envelope sender against the ``blacklist'' in
dir/deny
is not used.
- -l
-
The -l switch is added to the
ezmlm-manage(1)
command line in
dir/manager
to allow retrieval of subscriber list and list log by remote administrators.
NOTE:
This is pointless, unless the list is also set up for remote administration
with the
-r
switch.
dir/text/mod-help
is adjusted.
- -L
-
Do not allow access to the subscriber list under any circumstances. The
ezmlm-manage(1)
-l switch is not specified.
- -m
-
Message moderation.
dir/modpost
is created.
dir/editor
is set up with
ezmlm-store(1)
instead of
ezmlm-send(1).a
dir/moderator
is set up with
ezmlm-moderate(1),
and
ezmlm-clean(1).
dot/-accept-default
and
dot/-reject-default
are linked to
dir/moderator.
dir/text/mod-help
is adjusted.
Special action is taken when the
-m
switch is combined with
-u.
In this case, the setup is as for the
-m
switch alone, but
dir/editor
is set up with
ezmlm-gate(1)
which will fork
ezmlm-send(1)
for posts with an envelope sender that is a subscriber or a moderator, and
for
ezmlm-store(1)
for posts with other envelope senders. The consequence is that posts from
subscribers (with the usual caveats for SENDER checks) are posted directly,
whereas other posts are sent for moderation.
- -M
-
No message moderation.
dir/editor
is set up with
ezmlm-send(1)
as usual.
dir/moderator
is removed.
- -n
-
Allow text file editing.
in
dir/manager
is set up with the -e switch to allow remote admins to via E-mail edit
the files in
dir/text/.
NOTE:
This is pointless, unless the list is also set up for remote administration
with the
-r
switch.
dir/text/mod-help
is adjusted.
- -N
-
Remote editing of files in
dir/text
is not allowed.
The -e switch for
ezmlm-manage
will not be used.
- -o
-
For moderated lists, the
ezmlm-store -P
switch is used so that posts from non-moderators are rejected rather than
sent for moderation. This is for some announcement lists.
- -O
-
The
ezmlm-store -P
switch is not used.
- -p
-
Public.
dir/public
is created.
- -P
-
Not public.
dir/public
is removed.
- -q
-
A line with
ezmlm-request(1)
is added to
dirmanager
to service commands in the ``Subject'' line of messages sent to the
``list-request'' address.
- -Q
-
ezmlm-request(1)
is not used.
- -r
-
Remote admin.
dir/remote
is created.
dir/text/mod-help
is adjusted.
- -R
-
dir/remote
is removed.
- -s
-
Subscription moderation.
dir/modsub
is created.
dir/text/mod-help
is adjusted.
dir/text/sub-confirm
is adjusted.
- -S
-
dir/modsub
is removed.
- -t
-
dir/text/trailer
is created with instructions on how to unsubscribe.
- -T
-
dir/text/trailer
is removed.
- -u
-
User-only posts.
dir/editor
is set up with an
ezmlm-issubn(1)
line to check the envelope sender against the subscriber address databases.
If the sender is not found, the post is rejected. This results in
subscriber-only posts, with the usual caveats for SENDER checks.
Special action is taken when the
-u
switch is combined with
-m.
In this case, the setup is as for the
-m
switch alone, but
dir/editor
is set up with
ezmlm-gate(1)
which will fork
ezmlm-send(1)
for posts with an envelope sender that is a subscriber or a moderator, and
for
ezmlm-store(1)
for posts with other envelope senders.
ezmlm-clean(1)
is set up with the -R switch.
The consequence is that posts from
subscribers (with the usual caveats for SENDER checks) are posted directly,
whereas other posts are sent for moderation.
ezmlm-clean(1)
is set up with the -R switch.
Thus, ignored posts are silently
removed rather than returned to sender.
- -U
-
The
ezmlm-issubn(1)
line
restricting posts by envelope sender is not used.
- -w
-
The
Remove the
ezmlm-warn(1)
invocations from the list setup. It is assumed that
ezmlm-warn(1)
for both
local@host
and
local-digest@host
will be run by other means, such as crond.
If the
-6
switch is used with this switch, the local list name will be added to the
SQL config info for
dir/sql
and
dir/digest/sql .
This is to support building the main list for a distributed list using
a SQL address database. In addition,
ezmlm-receipt(1)
will be set up for bounce handling in
dir/bouncer
instead of
ezmlm-return(1).
- -W
-
No action taken.
- -xyzXYZ
-
User configurable. By default, if the
-x
switch is specified,
dir/mimeremove
is created. This file contains many MIME types not routinely supported.
MIME types in
dir/mimeremove are stripped from multipart posts before archiving
and distribution.
To view the list of
MIME types, see
ezmlmrc
or create a list and list
dir/mimeremove.
In addition
dir/msgsize
is created containing ``40000:2'' causing
ezmlm-reject(1)
to reject all posts that have a body of less than 2 bytes (empty) or
more than 40000 bytes (too large).
- -0 mainlist@mainhost
-
dir/sublist
is created with ``mainlist@mainhost''.
dir/ezmlm-reject
is not used in
dir/editor
to avoid rejecting messages that the main list has accepted.
- -3 fromarg
-
The list is set up to add ``from'' to
dir/fB/headerremove
and
From: fromarg
to
dir/headeradd.
This replaces the incoming ``From:'' header as desirable for some announcement
lists.
- -4 tstdigopts
-
tstdigopts
will be used as the arguments for
in
dir/editor.
This must be both switches and their arguments for
ezmlm-tstdig(1).
NOTE:
This is pointless, unless the list is also set up for digests
with the
-d
switch.
- -5 owner@ownerhost
-
owner@ownerhost is placed in
dir/owner
so that mail to ``list-owner'' is forwarded to that address, rather than
being stored in
dir/Mailbox.
If the address does not start with an underscore or alphanumeric character,
the argument must start with an ampersand.
- -6 host:port:user:password:datab:table
-
- The string, followed by the list name is placed in
-
dir/sql.
The same string with ``table'' suffixed with ``_digest'' and ``_allow''
is placed in
dir/digest/sql
and
dir/allow/sql,
respectively.
-7 /msgmodPath
msgmodPath
is placed in
dir/modpost
is the list is set up for message moderation with the
-m
switch.
- -8 /submodPath
-
submodPath
is placed in
dir/modsub
is the list is set up for subscription moderation with the
-s
switch.
- -9 /remoteAdminPath
-
remoteAdminPath
is placed in
dir/remote
is the list is set up for remote administration with the
-r
switch.
SEE ALSO
ezmlm(5),
ezmlm-clean(1),
ezmlm-gate(1),
ezmlm-get(1),
ezmlm-issubn(1),
ezmlm-make(1),
ezmlm-manage(1),
ezmlm-moderate(1),
ezmlm-request(1),
ezmlm-return(1),
ezmlm-send(1),
ezmlm-store(1),
ezmlm-tstdig(1),
ezmlm-warn(1),
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- DESCRIPTION OF EZMLMRC
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 11:12:50 GMT, July 10, 2025