7.2.2 - This version identifier must be on line 1 and start in pos 1.
#
# ezmlmrc 
# #######
# Controls the actions of ezmlm-make as patched with ezmlm-idx-0.31 or later.
#
# The base directory 'DIR' is always created by ezmlm-make, as is DIR/key.
# Everything else is done from here.
#
# ezmlm-make looks for this file, first as .ezmlmrc in the directory that the
# lists .qmail files will be placed in (if you've used the -c command line
# switch), then /etc/ezmlm/default/ezmlmrc.  Thus, you can customize
# ezmlm-make on a global level by placing a customized copy of ezmlmrc in
# /etc/ezmlm and on a user level by copying it to .ezmlmrc in the user's
# home directory AND use the ezmlm-make -c switch.
#
# Tags are:
#	</filename/>       : put succeeding text lines in DIR/filename
#	</-filename/>      : erase DIR/filename.
#	</+dirname/>       : create directory DIR/dirname
#	</:lname/dirname>  : symlink DIR/.qmail-list-lname -> DIR/dirname
#
# The name in the tag can be suffixed with '#' and any number of flags,
# corresponding to command line switches. The item will be created/extended
# only if all the flags listed are set. Files can be extended as long as they
# were the last one created, but not if another file has been started since
# then. Flags that are not recognized are silently ignored.
# 
# Thus, </filename#aP/> creates the file if and only if the list is archived
# (-a) and not public (-P). If the next tag is </filename#m/>, the file is
# extended with the lines up to the next tag if the list is message moderated
# (-m). If the next tag is </another/>, 'filename' is closed. Any further
# tags leading to the reopenining of 'filename' will overwrite the file, not
# extend it.
#
# A set of user-defined command line switches (xX, zZ) are available for
# customization.
#
# Substitutions made by ezmlm-make (at list creation or edit time) are:
# <#B#> ezmlm binaries path
# <#C#> digest code
# <#D#> dir
# <#F#> flags
# <#H#> host
# <#L#> local
# <#T#> dot
# <#0#> arg for -0.
# <#1#> ext1 [if dot is /path/.qmail-ext1-ext2-name]
# <#2#> ext2 [if dot is /path/.qmail-ext1-ext2-name]
# <#3#>...<#9#> arg for -3..9
# ext1 and ext2 are useful when a single user is controlling several
# virtual domains.
#
# -0 is used for the main list address when setting up sublists
# -3 is for the new from header if we want that header replaced
# -5 for list-owner address. Mail to list-owner will be forwarded to this addr.
# -6 for sql connection info
# -7 for contents of DIR/modpost
# -8 for contents of DIR/modsub
# -9 for contents of DIR/remote
#
# For demonstration purposes, the '-x' switch results in the following
# non-standard actions:
# - Removal of many non-text MIME parts from messages.
# - Limit posts to 2 bytes <= msg body size <= 40000
#
# Attempts to create links or directories that already exist, will result
# in a FATAL error. Attempts to open files that have already been closed
# or already exits, will cause the old file to be overwritten.
#
# Remove the old config files, as its presence causes complications.
</-config/>
</-flags/>
</outhost/>
<#H#>
</outlocal/>
<#L#>
</ezmlmrc/>
<#X#>
</dot/>
<#T#>
</digestcode/>
<#C#>
</-sublist#e^0/>
</sublist#0/>
<#0#>
</-fromheader#e^3/>
</fromheader#3/>
<#3#>
</+archive/>
</+bounce/>
# dir for editing text files
</+text/>
# dirs for digests
</+digest/>
</+digest/bounce/>
# for extra address db
</+allow/>
# for blacklist
</+deny/>
# moderator db & mod queue dirs. Needed for -m, -r -s, so we just
# make them by default.
</+mod/>
</+mod/pending/>
</+mod/accepted/>
</+mod/rejected/>
</+mod/unconfirmed/>
# links: dot -> dir/editor
</:/editor/>
</:-owner/owner/>
</:-digest-owner/owner/>
</:-return-default/bouncer/>
</:-digest-return-default/digest/bouncer/>
</:-default/manager/>
# for message moderation only
</:-accept-default/moderator/>
</:-reject-default/moderator/>
# for message confirmation only
</:-confirm-default/confirmer/>
</:-discard-default/confirmer/>
# Get rid of text/trailer when turning off the -t flag
</-text/trailer#eT/>
# We don't clean out text files to make it easier for users
# doing manual config by e.g. touching dir/remote.
#
# -6 Subscriber database plugin specification
</-subdb#^6e/>
</subdb#6/>
<#6#>
# -a Archived and indexed
</-archived#eA/>
</archived#a/>
</-indexed#eA/>
</indexed#a/>
# -b Archive requests only available to moderators
</-modgetonly#eB/>
</modgetonly#b/>
# -c N/A
# -d Message digests
</-digested#eD/>
</digested#d/>
# -e N/A
# -f subject line prefix
</-prefix#eF/>
</prefix#Ef/>
[<#L#>]
# -g Archive requests only available to subscribers
</-subgetonly#eG/>
</subgetonly#g/>
# -h No subscribe confirmation
</-nosubconfirm#eH/>
</nosubconfirm#h/>
# -i Enhanced indices created by ezmlm-archive
</-threaded#eI/>
</threaded#i/>
# -j No unsubscribe confirmation
</-nounsubconfirm#eJ/>
</nounsubconfirm#j/>
# -k is always on
# -l Moderator can list subscribers
</-modcanlist#eL/>
</modcanlist#l/>
# -m message moderation
</-modpost#eM/>
</modpost#m/>
<#7#>
# -mu Do not return timed-out posts
</-noreturnposts#eM/>
</-noreturnposts#eU/>
</noreturnposts#mu/>
# -n Moderator can edit text files
</-modcanedit#eN/>
</modcanedit#n/>
# -o Non-public: only moderators can post
</-modpostonly#eO/>
</modpostonly#o/>
# -p Allow subscriptions and access to the archive
</-public#eP/>
</public#p/>
# -q is always on
# -r remote admin
</-remote#eR/>
</remote#r/>
<#9#>
# -s subscription moderation
</-modsub#eS/>
</modsub#s/>
<#8#>
# -t Add the trailer to posts
</-addtrailer#eT/>
</addtrailer#t/>
# -u Only subscribers may post
</-subpostonly#eU/>
</subpostonly#u/>
# -v N/A
# -w No ezmlm-warn
</-nowarn#eW/>
</nowarn#w/>
# -x See below
# -y Sender confirmation
</-confirmpost#eY/>
</confirmpost#y/>
# List owner mail
</owner#5/>
<#5#>
</owner#^5/>
<#D#>/Mailbox
# The "manager" handles subscription and other requests.
</manager/>
|<#B#>/ezmlm-weed
|<#B#>/ezmlm-get '<#D#>'
|<#B#>/ezmlm-split '<#D#>'
|<#B#>/ezmlm-request '<#D#>'
|<#B#>/ezmlm-manage '<#D#>'
|<#B#>/ezmlm-clean '<#D#>' || exit 0
|<#B#>/ezmlm-warn '<#D#>' || exit 0
# manage message confirmations
</confirmer/>
|<#B#>/ezmlm-weed
|if test -f '<#D#>/subpostonly' -a -f '<#D#>/modpost'; then <#B#>/ezmlm-confirm '<#D#>' <#B#>/ezmlm-gate -Y '<#D#>' . digest allow mod; else <#B#>/ezmlm-confirm '<#D#>' <#B#>/ezmlm-store -Y '<#D#>'; fi
|if test -f '<#D#>/threaded'; then <#B#>/ezmlm-archive '<#D#>' || exit 0; fi
|<#B#>/ezmlm-clean '<#D#>' || exit 0
|<#B#>/ezmlm-warn '<#D#>' || exit 0
</editor/>
# reject shouldn't be configured for sublist.
# full reject is now default, to get To/Cc: listaddress requirement
|if test ! -f '<#D#>/sublist'; then <#B#>/ezmlm-reject '<#D#>'; fi
# reject posts from blacklisted addresses. Done for moderated
# lists as well - allows removal of unwanted noise.
|if test ! -f '<#D#>/sublist'; then <#B#>/ezmlm-checksub -n '<#D#>' deny; fi
# 8 different combinations of the -m/u/y options:
# -MUY -- no restrictions => store (does send)
# -mUY -- simple moderated => store
# -MUy -- sub confirmation => store
# -mUy -- sub confirmation + moderation => store
|if test ! -f '<#D#>/subpostonly'; then <#B#>/ezmlm-store '<#D#>'; fi
# -MuY -- user post only => checksub store (does send)
# -Muy -- sub post only + confirmation => checksub store
|if test -f '<#D#>/subpostonly' -a ! -f '<#D#>/modpost'; then <#B#>/ezmlm-checksub '<#D#>' . digest allow mod && <#B#>/ezmlm-store '<#D#>'; fi
# -muY -- sub post ok, non-sub moderated => gate
|if test -f '<#D#>/subpostonly' -a -f '<#D#>/modpost' -a ! -f '<#D#>/confirmpost'; then <#B#>/ezmlm-gate '<#D#>' . digest allow mod; fi
# -muy -- confirmed sender; then sub post, non-sub moderated => store
|if test -f '<#D#>/subpostonly' -a -f '<#D#>/modpost' -a -f '<#D#>/confirmpost'; then <#B#>/ezmlm-store '<#D#>'; fi
# Always run ezmlm-clean to check for old messages
|<#B#>/ezmlm-clean '<#D#>' || exit 0
# ezmlm-archive here for normal lists. Put into moderator
# for mess-mod lists / into confirmer for mess-confirm lists.
|if test -f '<#D#>/threaded'; then <#B#>/ezmlm-archive '<#D#>' || exit 0; fi
|<#B#>/ezmlm-warn '<#D#>' || exit 0
|if test -e '<#D#>/digested' && <#B#>/ezmlm-tstdig '<#D#>'; then <#B#>/ezmlm-get '<#D#>' || exit 0; fi
# bouncer for list and digest
</bouncer/>
|<#B#>/ezmlm-weed
|<#B#>/ezmlm-return -D '<#D#>'
</digest/bouncer/>
|<#B#>/ezmlm-weed
|<#B#>/ezmlm-return -d '<#D#>'
# moderator is set up only for message moderated lists. However, '-e' does
# not remove it since we can't remove the symlinks to it (they're outside
# of the list dir.
</moderator/>
|<#B#>/ezmlm-weed
|<#B#>/ezmlm-moderate '<#D#>'
|if test -f '<#D#>/threaded'; then <#B#>/ezmlm-archive '<#D#>' || exit 0; fi
|<#B#>/ezmlm-clean '<#D#>' || exit 0
|<#B#>/ezmlm-warn '<#D#>' || exit 0
</headerremove#E/>
return-path
return-receipt-to
content-length
precedence
x-confirm-reading-to
x-pmrqc
list-subscribe
list-unsubscribe
list-help
</headerremove#E^0/>
# For sublists, these should be left in
list-post
sender
# remove from header if -3 'new_from_line'
</#3E/>
from
</lock/>
</lockbounce/>
</digest/lockbounce/>
</digest/lock/>
# Headeradd needs to always exist but leave out stuff for sublists
</headeradd#E^0/>
# This is necessary for DomainKeys signing to work properly
Sender: <<#l#>@<#h#>>
# Good for mailing list stuff (and vacation program)
Precedence: bulk
# To prevent indexing by findmail.com
X-No-Archive: yes
# rfc2369, first from main list only, others from sublist only
List-Post: <mailto:<#L#>@<#H#>>
</headeradd#E/>
List-Help: <mailto:<#l#>-help@<#h#>>
List-Unsubscribe: <mailto:<#l#>-unsubscribe@<#h#>>
List-Subscribe: <mailto:<#l#>-subscribe@<#h#>>
# add new from line "From: arg" if -3 'arg'
</#3E/>
From: <#3#>
# max & min message size
</msgsize#xE/>
30000:2
# remove mime parts if -x
</-mimeremove#eX/>
</mimeremove#Ex/>
application/excel
application/rtf
application/msword
application/ms-tnef
text/html
text/rtf
text/enriched
text/x-vcard
application/activemessage
application/andrew-inset
application/applefile
application/atomicmail
application/dca-rft
application/dec-dx
application/mac-binhex40
application/mac-compactpro
application/macwriteii
application/news-message-id
application/news-transmission
application/octet-stream
application/oda
application/pdf
application/postscript
application/powerpoint
application/remote-printing
application/slate
application/wita
application/wordperfect5.1
application/x-bcpio
application/x-cdlink
application/x-compress
application/x-cpio
application/x-csh
application/x-director
application/x-dvi
application/x-hdf
application/x-httpd-cgi
application/x-koan
application/x-latex
application/x-mif
application/x-netcdf
application/x-stuffit
application/x-sv4cpio
application/x-sv4crc
application/x-tar
application/x-tcl
application/x-tex
application/x-texinfo
application/x-troff
application/x-troff-man
application/x-troff-me
application/x-troff-ms
application/x-ustar
application/x-wais-source
audio/basic
audio/mpeg
audio/x-aiff
audio/x-pn-realaudio
audio/x-pn-realaudio
audio/x-pn-realaudio-plugin
audio/x-realaudio
audio/x-wav
image/gif
image/ief
image/jpeg
image/png
image/tiff
image/x-cmu-raster
image/x-portable-anymap
image/x-portable-bitmap
image/x-portable-graymap
image/x-portable-pixmap
image/x-rgb
image/x-xbitmap
image/x-xpixmap
image/x-xwindowdump
text/x-sgml
video/mpeg
video/quicktime
video/x-msvideo
video/x-sgi-movie
x-conference/x-cooltalk
x-world/x-vrml
# These can also be excluded, but for many lists it is desirable
# to allow them. Uncomment to add to mimeremove.
# application/zip
# application/x-gtar
# application/x-gzip
# application/x-sh
# application/x-shar
# chemical/x-pdb
