|
|
| |
ezmlmrc(5) |
FreeBSD File Formats Manual |
ezmlmrc(5) |
ezmlmrc - ezmlm-make configuration file
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.
ezmlm-make substitutes the following tags anywhere within
files when they are (re)created. Other tags of this format are copied to the
files as is.
- <#B#>
- The path to the ezmlm-idx binaries.
- <#C#>
- digestcode
- <#D#>
- dir
- <#F#>
- The alphanumeric flags given to ezmlm-make concatenated
together.
- <#H#>
- host
- <#L#>
- local
- <#T#>
- dot
- <#0#>
- The argument for -0.
- <#1#>
- The part of dot between the first two hyphens (if any).
- <#2#>
- The part of dot between the second and third hyphen (if any).
- <#3#>..<#9#>
- The argument to -3..-9.
Before the template file is processed, ezmlm-make will
create the list directory. ezmlm-make will also create
dir/key.
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 switches.
These are dir/headeradd adding ``Precedence: bulk'' and
``X-No-Archive: yes'' to outgoing messages, and
dir/headerremove removing ``Return-Path'',
``Return-Receipt-To'', ``Content-length'', and ``Precedence'' from list
messages. These files are not overwritten when lists are edited.
dir/bouncer and
dir/digest/bouncer are 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. dir/modgetonly is created to allow only
moderators archive access.
- -B
- dir/modgetonly is removed.
- -d
- dir/digested is created, signalling to programs to send
digests.
- -D
- dir/digested is removed, signalling to not send
digests.
- -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
- dir/subgetonly is created, signalling
ezmlm-get(1) to only allow subscribers to access the archive.
- -G
- dir/subgetonly is removed, signalling
ezmlm-get(1) That 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/threaded is created to signal
ezmlm-archive(1) to run as appropriate after messages are posted.
This sets up the cross-reference for ezmlm-cgi(1) WWW access.
- -I
- dir/threaded is removed.
- -j
- dir/nounsubconfirm is created to signal
ezmlm-manage(1) to not require confirmation after unsubscription
requests.
- -J
- dir/nounsubconfirm is removed.
- -l
- dir/modcanlist is created to signal
ezmlm-manage(1) 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.
- -L
- dir/modcanlist is removed, disallowing access to the
subscriber list under any circumstances.
- -m
- Message moderation. dir/modpost is created, which
signals ezmlm-store(1) to store messages and forward
confirmation requests to the moderators. Special action is taken when the
-m switch is combined with -u. In this case, the handling 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
- dir/modpost is removed, undoing the changes
above.
- -n
- Allow text file editing. dir/modcanedit is created to
signal 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.
- -N
- dir/modcanedit is removed to disallow editing of files
in dir/text.
- -o
- dir/modpostonly is created to signal
ezmlm-store(1) ro reject posts from non-moderators on moderated
lists rather than sending them for moderation. This is for some
announcement lists.
- -O
- dir/modpostonly is removed.
- -p
- Public. dir/public is created, signaling
ezmlm-get(1) to allow archive retrieval attempts, and
ezmlm-manage(1) to allow subscription and unsubscription
attempts.
- -P
- Not public. dir/public is removed.
- -r
- Remote admin. dir/remote is created to signal
ezmlm-manage(1) to allow remote administration of mailing
lists.
- -R
- dir/remote is removed.
- -s
- Subscription moderation. dir/modsub is created to
signal ezmlm-manage(1) to forward confirmed subscription
requests to the moderators for approval. The unsubscription process is
unchanged.
- -S
- dir/modsub is removed.
- -t
- dir/addtrailer is created to signal
ezmlm-send(1) to include the trailer portions in
dir/text/trailer in messages posted to the list.
- -T
- dir/addtrailer is removed.
- -u
- Subscriber-only posts. dir/subpostonly is created to
allow posts only from subscribers. ezmlm-checksub(1) is checks
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 ezmlm-gate(1) will
execute ezmlm-send(1) for posts with an envelope sender that is a
subscriber or a moderator, and will otherwise moderate the message. The
consequence is that posts from subscribers (with the usual caveats for
SENDER checks) are posted directly, whereas other posts are sent for
moderation. Also, dir/noreturnposts is created to
silently drop ignored posts rather than returning them to their
senders.
- -U
- dir/subpostonly is removed.
- -w
- dir/nowarn is created to signal ezmlm-warn(1)
to do no work.
- -W
- dir/nowarn is removed.
- -x
- dir/mimeremove is created containing 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 view
dir/mimeremove. In addition
dir/msgsize is created containing ``30000:2'' causing
ezmlm-reject(1) to reject all posts that have a body of less than 2
bytes (empty) or more than 30000 bytes (too large).
- -y
- Confirm postings. dir/confirmpost is created to
signal ezmlm-store(1) to send a confirmation probe to the
sender of each post.
- -Y
- dir/confirmpost is removed.
- -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/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 plugin:host:port:user:password:datab:table
- The string, followed by the list name is placed in
dir/subdb, indicating what subscriber database
plugin and parameters to use.
- -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.
ezmlm(5), ezmlm-checksub(1), 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),
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |