Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
ezmlm-make(1)		    General Commands Manual		 ezmlm-make(1)

       ezmlm-make - create a new mailing list

       ezmlm-make  [  -+  ][ -a..zABD..Z ][ -C03..9 arg	] dir [	dot local host
       [digestcode] ]

       ezmlm-make sets up a new	mailing	list, local@host, along	 with  several
       extra addresses to handle administrative	requests.

       All  mailing  list  information is stored in a new directory, dir.  dir
       must be an absolute pathname, starting with a slash.  dot  must	be  an
       absolute	 file name starting with a slash. Arguments other than dir may
       be omitted when editing an existing list, using the -e  or  -+  options
       (see below).

       ezmlm-make  is  controlled  by a	template, .ezmlmrc.  Described here is
       the behavior with the default template file.  ezmlm-make	will  print  a
       warning	message	 before	 continuing,  if  the ezmlmrc version does not
       match the ezmlm-make version.

       ezmlm-make also creates dir/config, where it stores  all	 configuration
       information.  By	 reading  this	file,  you can rapidly get information
       about how the list is set up.  ezmlm-make when used with	the -e	switch
       will  read  information from this file. Thus, when using	ezmlm-make -e,
       you only	need to	specify	the desired switches and switch	arguments  and
       dir.   With  the	-+ switch all switches become sticky, i.e. the default
       for all switches	(and command line arguments) becomes the switches  and
       arguments  active  for  the  list to be edited. Note that the choice of
       config file also	is sticky, except when running ezmlm-make as root.

       ezmlm-make sets up four .qmail files:  dot,  dot-owner,	dot-return-de-
       fault,  and  dot-default.   You	should	make sure that messages	to lo-
       cal@host, local-owner@host, etc.	are controlled by these	.qmail files.

       For message moderated lists, ezmlm-make sets up two  additional	.qmail
       files: dot-accept-default and dot-reject-default.

       For digested lists, ezmlm-make sets up another two .qmail file: dot-di-
       gest-return-default and dot-digest-owner.

       If digestcode is	specified, digest creation by ezmlm-get(1) via trigger
       messages	to the local/@host-dig.digestcode address is enabled.

       By  default,  ezmlm-make	 sets  up lists	to add a ``X-No-Archive: yes''
       header to outgoing messages.  Public archiving servers  will  interpret
       this header as a	request	not to archive messages	from the list. It this
       in not what you desire, remove this header from ezmlmrc for global  ef-
       fects, or from dir/headeradd for	the specific list.

       Typical use of ezmlm-make by a normal user:

	  ezmlm-make ~joe/SOS ~joe/.qmail-sos joe-sos

       Typical use of ezmlm-make by alias:

	  ezmlm-make ~alias/SOS	~alias/.qmail-sos sos
	  chown	-R alias ~alias/SOS

       Typical use of ezmlm-make by a normal user enabling automatic digests:

	  ezmlm-make -d	~joe/SOS ~joe/.qmail-sos joe-sos

       Typical	use  of	ezmlm-make to change an	existing list in ~joe/SOS to a
       message moderated list with remote administration, and enabling the re-
       mote  administrator(s)  to  retrieve  a	subscriber  list  and  to edit
       dir/text	files (digest are still	enabled):

	  ezmlm-make -emrldn ~joe/SOS

       Mail can	arrive at any time!  For safe editing, turn on the sticky  bit
       of  the	home directory before editing the list setup, then turn	it off
       again (see dot-qmail(5)).

       Moderator addresses are added with

	 ezmlm-sub ~joe/SOS mod	mod1@host1 mod2@host2 ...

       ezmlm-make also creates the necessary text files	in dir/text/.

       ezmlm-make has a	large number of	switches to  control  all  aspects  of
       list  generation.  Only defaults	or a small subset of switches are nec-
       essary for most list setups. Other options are present primarily	to al-
       low  a  external	 CGI  script  or other graphical user interface	to use
       ezmlm-make to manipulate	ezmlm list setups.

       To create the list ``tl@virtual.dom''  where  ``virtual.dom''  is  con-
       trolled	by ``vu'' (virtual.dom:vu), change identity to ``vu'' or chown
       files to	that user after:

	    ezmlm-make ~vu/dir ~vu/.qmail-tl tl	virtual.dom

       Thus, create the	list exactly as	for a list under ``alias''.

       All ezmlm-make letter switches except -v	and -V are available  for  in-
       terpretation  via  ezmlmrc.   Switches  -e, -E, -c, and -C have special
       meaning within the program.  ezmlmrc customization should  respect  the
       function	of the switches	described here.

       -+   Switches  currently	 active	for the	list will be used, as modified
	    by the current command line.  Thus,	-+ makes switches  ``sticky''.
	    By	default,  only	switches specified on the current command line
	    will be used.  This	switch implies -e as it	is meaningless	except
	    in	edit mode. Note	that the config	file choice (see -c and	-C) is
	    also sticky.  ezmlmrc(5) is	set up so that most  text  files  (and
	    DIR/headeradd, DIR/headerkeep, and DIR/headerremove) are not over-
	    written if they already exist so as	to preserve manual  customiza-
	    tions.  If	local  is specified ezmlm-make overrides this behavior
	    and	all files are rewritten. You can also force ezmlm-make to  re-
	    write all files by using -++.

       -a   (Default.)	Archived  and configured with ezmlm-get(1) for archive
	    access.  ezmlm-make	will touch  dir/archived  and  dir/indexed  so
	    that ezmlm-send(1) will archive new	messages.

       -A   Not	archived.

       -b   Block archive. Only	moderators are allowed to access the archive.

       -B   (Default.)	 Archive access	is open	to anyone or subscribers only,
	    depending on the -g	switch.

       -c   Config.  Use .ezmlmrc (see CONFIGURATION) from the directory where
	    dot	 resides.   ezmlm-make	otherwise uses the system wide ezmlmrc
	    file (normally /etc/ezmlm/default/ezmlmrc).	  The  -c  switch  may
	    cause you to execute ezmlm-make based on a configuration file con-
	    trolled by another user.  ezmlm-make does not allow	periods	in any
	    tag	 to  restrict all actions to within dir.  Be careful with this
	    option setting up lists for	other users, especially	 when  running
	    ezmlm-make as root.

       -C arg
	    Like -c, but use file arg as the ezmlmrc file.  Use	-C '' to over-
	    ride a default when	using -+ or -e.	 If the	given path is a	direc-
	    tory  instead  of  a  file,	 the  actual  ezmlmrc file is taken as
	    arg/ezmlmrc, and the other ezmlm-idx programs will use the	direc-
	    tory to look up files (such	as text	files) that are	not present in
	    the	list directory.

       -d   Digest.  ezmlm-make	will set up the	local-digest@host digest  list
	    to	disseminate  digest  of	the list messages. By default, this is
	    done when 30 messages, 48 hours, or	64 kbytes of message body text
	    have  accumulated  since  the  last	digest.	Edit the dir/digcount,
	    dir/digsize, or dir/digtime	files to override these	defaults.  See
	    ezmlm-tstdig(1) and	ezmlm-get(1) for more info.

       -D   (Default.)	No digest.  Do not set up the digest list.

       -e   Edit.   ezmlm-make	will remove links before creating them and ac-
	    cept if directories	to be created are already present.  will  also
	    (via entries in ezmlmrc) remove flags that are present but not de-
	    sired for the current list.	 Thus, this option can be used to  re-
	    configure  existing	 lists	without	 affecting  moderator and sub-
	    scriber lists or message archive. All desired ezmlm-make  switches
	    need to be specified. To make all switches sticky, i.e. only spec-
	    ify	the ones changed from the previous  setup,  use	 -+.   Command
	    line  arguments  other  than  dir can be omitted.  In the unlikely
	    case where dot is changed, you must	manually remove	the old	links.
	    Mail can arrive at any time!  For safe editing, turn on the	sticky
	    bit	of the home directory before using  the	 edit  function,  then
	    turn  it  off  again  (see dot-qmail(5)).  ezmlmrc(5) is set up so
	    that most  text  files  (and  DIR/headeradd,  DIR/headerkeep,  and
	    DIR/headerremove)  are not overwritten if they already exist so as
	    to preserve	manual customizations. If local	 is  specified	ezmlm-
	    make  overrides this behavior and all files	are rewritten. You can
	    also force ezmlm-make to rewrite all files by using	-ee.

       -E   (Default.)	No edit.  ezmlm-make  will  abort  if  directories  or
	    links to be	created	already	exist. This prevents accidental	recon-
	    figuration of a pre-existing list, since the first	action	is  to
	    create the list directory.

       -f   Prefix.  ezmlm-make	will set up the	list so	that the outgoing sub-
	    ject will be prefixed with the list	name.

       -F   (Default.)	No prefix.

       -g   Guard archive.  Archive access requests from unrecognized  SENDERs
	    will  be  rejected.	  This	restriction is safe, since replies are
	    sent to the	SENDER address.

       -G   (Default.)	Do not guard archive.  Archive access request from any
	    SENDER will	be serviced.

       -h   Help  subscription.	 Subscriptions	do  not	 require confirmation.
	    Strongly recommended against, since	anyone can subscribe  any  ad-
	    dress, but may be useful for some subscription moderated lists.

       -H   (Default.)	 Subscription requires confirmation by reply to	a mes-
	    sage sent to the subscription address.

       -i   Indexed for	WWW archive access.  ezmlm-make	will create  the  list
	    so	that ezmlm-archive(1) is invoked to maintain an	index suitable
	    for	use by ezmlm-cgi(1).

       -I   (Default.)	The list is created without ezmlm-archive(1).

       -j   Jump off. Unsubscribe does not require confirmation. Strongly rec-
	    ommended  against,	since  anyone can unsubscribe any address, but
	    may	be useful in some situations.

       -J   (Default.)	Unsubscribe requires confirmation by a reply to	a mes-
	    sage sent to the subscription address.


       -K   Ignored  for  backwards  compatibility.  The dir/deny/ subscribers
	    directory is always	created	to allow  denying  messages  from  se-
	    lected  addresses.	 This  is  useful  in  combination with	the -u
	    switch to temporarily restrain offenders,  such  as	 misconfigured
	    auto-responders  or	 automatic  spammers.	It can also be used in
	    combination	with -m	to filter out SENDERs from whom	the moderators
	    do	not want to see	posts (again, bad re-mailers and spammers come
	    to mind).

	    To add/remove blacklisted addresses:

	    ezmlm-sub dir deny bad@host

	    ezmlm-unsub	dir deny bad@host

       -l   List subscribers.  ezmlm-make sets up the list so that remote  ad-
	    ministrators  can  request	a subscriber list, and search the sub-
	    scriber log.

       -L   (Default.)	The subscriber list cannot be obtained.

       -m   Message moderation.	(Please	note that the -u switch	 modifies  the
	    action  of	this  switch.)	 ezmlm-make will touch dir/modpost and
	    create dir/mod/ and	dir/mod/subscribers/, where the	moderator  ad-
	    dresses  are  stored.   ezmlm-make	also creates dir/mod/pending/,
	    dir/mod/accepted/, and dir/mod/rejected/.  These  directories  are
	    used  to  queue  messages awaiting moderation.  dir/editor will be
	    set	up to run ezmlm-store(1) to store  incoming  messages  in  the
	    moderation	queue  and send	moderation requests to the moderators.
	    dir/moderator will be set up to run	ezmlm-moderate to process mod-
	    erator accept or reject requests.

	    To add/remove moderators:

	    ezmlm-sub dir mod moderator@host

	    ezmlm-unsub	dir mod	moderator@host

       -M   (Default.)	Message	posting	is not moderated.

       -n   New	text file.  ezmlm-make sets up the list	to allow remote	admin-
	    istrators to edit files in dir/text/.

       -N   (Default.)	Not new	text file.  Text file editing not allowed.

       -o   Others rejected.  Posts from addresses other than  moderators  are
	    rejected.  This is applicable to message moderated lists only (see
	    -m).  The switch has no effect on other lists.

       -O   (Default.)	Others not rejected.  For moderated lists,  all	 posts
	    are	 forwarded  to the moderators.	The switch has effects only on
	    message moderated lists.

       -p   (Default.) Public.	ezmlm-make  will  touch	 dir/public,  so  that
	    ezmlm-manage(1) will respond to administrative requests and	ezmlm-
	    get	will allow archive retrieval.

       -P   Private.  ezmlm-manage(1) and ezmlm-get(1) will allow only	digest
	    creation,  remote  administration, and archive retrieval by	remote
	    administrators, (if	the list is configured with these options).


       -Q   Ignored for	backwards compatibility.  The request address  is  al-
	    ways serviced.  Commands sent in the subject to local-request@host
	    are	processed by ezmlm-request(1).

       -r   Remote admin.  ezmlm-make enables remote administration by	touch-
	    ing	 dir/remote.   Moderator(s)  can unsubscribe and subscribe any
	    address.  See the -m option	on how moderator addresses are	stored
	    and	manipulated.

       -R   (Default.) No remote administration.

       -s   Subscription  moderation.  ezmlm-make enables subscription modera-
	    tion by touching dir/modsub.  This affects subscriptions for  both
	    the	 main list and the digest list.	 See the -m option on how mod-
	    erator addresses are stored	and manipulated.

       -S   (Default.) Subscriptions are not moderated.

       -t   Trailer.  ezmlm-make will create dir/text/trailer to  set  up  the
	    list to add	a trailer to outgoing messages.

       -T   No trailer.	 (Default.)

       -u   User  posts	 only.	 ezmlm-make sets up the	list so	that posts and
	    archive access is restricted to subscribers.  These	are  addresses
	    subscribed	to the main list, the digest, or added manually	to the
	    address database in	dir/allow/ which accommodates  addresses  from
	    e.g.  subscribers  working	from  an address other than their sub-
	    scriber address.

	    Posts from unrecognized SENDER addresses will be  rejected.	  This
	    is relatively easily defeated for posts.  More secure alternatives
	    are	message	moderated lists	 configured  with  the	ezmlm-make  -m
	    switch (without the	-u switch).

	    There  is no reason	to combine of SENDER checks on posts with mes-
	    sage moderation. Therefore,	the combination	of the -u switch  with
	    the	-m switch is used for a	configuration with SENDER restrictions
	    (like with -u alone), with the difference that posts from non-sub-
	    scribers  will  be	sent for moderation instead of being rejected.
	    This allows	the list admin to let non-subscribers  post  occasion-
	    ally,  as well as to catch subscribers posting from	non-subscriber

       -U   (Default.)	Do not restrict	posts based on SENDER address.

       -v   Display ezmlm-make version information.

       -V   Display ezmlm-make version information.

       -w   Remove the ezmlm-warn(1) invocations from the list	setup.	It  is
	    assumed  that  ezmlm-warn(1)  for  both  local@host	 and local-di-
	    gest@host will be run by other means, such as crond.  As the  main
	    list  will	have  only sublists as subscribers, it is desirable to
	    log	bounces	and feedback messages rather than to remove a bouncing

       -W   (Default.)	 No  address  restriction. Normal use of ezmlm-warn(1)
	    and	ezmlm-return(1).

       -x   eXtra.  ezmlm-make will configure the  list	 with  a  few  extras:
	    dir/mimeremove  will  be  configured  to strip annoying mime parts
	    such as excel spreadsheets,	rtf text, html text etc	from the  mes-
	    sages. Messages consisting solely of this Content-type will	be re-
	    jected. See	ezmlm-send(1) and ezmlm-reject(1) for more info.

       -y   sender confirmation.  ezmlm-make will configure the	list so	 post-
	    ing	requires sender	confirmation.

       -Y   (Default.) No sender confirmation is required.

       -0 mainlist@host
	    Make the list a sublist of list mainlist@host.

       -3 fromarg
	    ezmlm-make sets up the list	to replace the ``From:'' header	of the
	    message with ``From: fromarg''.

       -5 owner@host
	    ezmlm-make will configure the list to forward mail directed	to the
	    list owner to owner@host.

       -6 plugin:host:port:user:password:datab:table
	    Subscriber	database  info.	 Use  the database plugin named	plugin
	    which connects to host (default localhost),	on  port  number  port
	    (default port for SQL server) as user with password	using database
	    datab (default "ezmlm") and	the table  root	 name  table  (default

       -7 /msg_mod_path
	    Make /path the path	to the database	for message moderators,	if the
	    list is set	up for message moderation.  /msg_mod_path must	be  an
	    absolute  pathname,	 starting with a slash.	If not,	it will	be ig-

       -8 /sub_mod_path
	    Make /sub_mod_path the path	to the database	for subscription  mod-
	    erators,  if  the  list  is	 set  up  for subscription moderation.
	    /sub_mod_path must be an absolute pathname,	starting with a	slash.
	    If not, it will be ignored.

       -9 /rem_adm_path
	    Make  /path	the path to the	database for remote administrators, if
	    the	list is	set up for remote administration.  /rem_adm_path  must
	    be an absolute pathname, starting with a slash. If not, it will be

       When ezmlm-make is used with the	-e switch, and the list	was previously
       created or edited with a	new (ezmlm-idx >= 0.23)	version	of ezmlm-make,
       all arguments other than	dir can	be omitted. In	this  case,  arguments
       will  be	 read  from  dir/config.  The appropriate flags	must always be
       specified. To override dot, local, host,	or code, all arguments must be

       This  version  of ezmlm-make is template	driven.	The template file con-
       sists of	plain text with	four types of tags. Both 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 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.

	      An alternative to	specify	that a flag, e.g. ``4''	should not  be
	      active is	to prefix the switch with ``^'', e.g. use ``^4''.  The
	      ``E'' flag is treated in a special manner. When the list is  be-
	      ing  edited,  it	evaluates to false if the file already exists,
	      true if it does not. Thus, files using this  condition  are  not
	      overwritten when editing.	This is	useful for files that you fre-
	      quently customize	manually.

	      dir/filename will	be erased, if the options after	the ``#''  are
	      active, in this case not archived	and edit.

	      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.

	      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#>, the set of all active flags
       for  <#F#>,  the	 config	file used for <#X#>, 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#>, <#n#>, <#A#>, <#R#>, will be substituted on-the-fly where
       appropriate for the local or local-digest local part of	the  list  ad-
       dress,  the  host,  the subscriber address or the moderation accept ad-
       dress, the message number, and the subscription reply address or	moder-
       ation  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.  <#h#> makes it possible to share	some files be-
       tween lists.  <#n#> is defined only by programs where this makes	sense,
       i.e.  ezmlm-send(1) and ezmlm-get(1)

       In  the	absence	of -e and -+ switches, ezmlm-make will create the list
       directory before	processing the template	file, and create dir/key after
       all other actions.

       ezmlm-make will use /etc/ezmlm/default/ezmlmrc.	This can be overridden
       with the	-c and -C switches.

       ezmlm-make deals	with the template file as us-ascii.  Any occurrence of
       the  characters	``</''	at the beginning of a line will	disrupt	ezmlm-
       make operation.	Any occurrence of tags with the	format ``<#X#>''  with
       with  'X' being any digit, 'B', 'C', 'D', 'F', 'H', 'L',	or 'T' will be
       substituted by ezmlm-make.  Any occurrence of a tag of this format with
       'X'  being 'h', 'l', 'A', or 'R'	will be	substituted by ezmlm-store and
       ezmlm-manage at run time.  ezmlm-send will substitute tags with 'h' and
       'l',  and tags with 'n' will be replaced	by the current message number.
       ezmlm-get will substitute tags ``<#h#>'', ``<#l#>'' in  the  same  way.
       The  tag	 ``<#n#>'' will	be replaced by the digest message number which
       is the number of	the first message in the digest.

       In practice, these character sequences are unlikely  to	occur  in  any
       multi-byte  character  set  text. They also will	not occur by chance in
       single-byte character sets where	'<', '/', and  '#'  retain  their  us-
       ascii codes.

       ezmlm-make  cannot deal with ezmlmrc lines containing NUL (they will be
       truncated at the	NUL). This needs to be fixed to	make it	8-bit clean.

       ezmlm-clean(1),	 ezmlm-get(1),	 ezmlm-manage(1),   ezmlm-moderate(1),
       ezmlm-send(1), ezmlm-store(1), ezmlm-sub(1), ezmlm-unsub(1), ezmlm(5)



Want to link to this manual page? Use this URL:

home | help