ezmlm-web release:

* released source and debian file
master
lars 14 years ago
parent b93f629a9c
commit db6538cda5
  1. 180
      ezmlm-web-3.3/INSTALL
  2. 112
      ezmlm-web-3.3/MANIFEST
  3. 110
      ezmlm-web-3.3/Makefile.PL
  4. 230
      ezmlm-web-3.3/README
  5. 47
      ezmlm-web-3.3/README.crypto
  6. 12
      ezmlm-web-3.3/TODO
  7. 121
      ezmlm-web-3.3/UPGRADING
  8. 174
      ezmlm-web-3.3/changelog
  9. 33
      ezmlm-web-3.3/copyright
  10. 69
      ezmlm-web-3.3/debian/README.Debian
  11. 11
      ezmlm-web-3.3/debian/changelog
  12. 1
      ezmlm-web-3.3/debian/compat
  13. 24
      ezmlm-web-3.3/debian/control
  14. 35
      ezmlm-web-3.3/debian/copyright
  15. 1
      ezmlm-web-3.3/debian/dirs
  16. 4
      ezmlm-web-3.3/debian/docs
  17. 1
      ezmlm-web-3.3/debian/ezmlm-web.examples
  18. 5
      ezmlm-web-3.3/debian/ezmlm-web.manpages
  19. 1
      ezmlm-web-3.3/debian/patches/00list
  20. 86
      ezmlm-web-3.3/debian/rules
  21. 13
      ezmlm-web-3.3/examples/apache.conf.dist
  22. 134
      ezmlm-web-3.3/examples/ezmlmwebrc.dist
  23. 26
      ezmlm-web-3.3/examples/ezmlmwebrc.minimal-dist
  24. 7
      ezmlm-web-3.3/examples/htaccess.dist
  25. 66
      ezmlm-web-3.3/examples/multidomain.conf.dist
  26. 5
      ezmlm-web-3.3/examples/webusers.dist
  27. 2918
      ezmlm-web-3.3/ezmlm-web.cgi
  28. 1256
      ezmlm-web-3.3/intl/cs/LC_MESSAGES/ezmlm-web.po
  29. 1256
      ezmlm-web-3.3/intl/da/LC_MESSAGES/ezmlm-web.po
  30. 1374
      ezmlm-web-3.3/intl/de/LC_MESSAGES/ezmlm-web.po
  31. 1328
      ezmlm-web-3.3/intl/en/LC_MESSAGES/ezmlm-web.po
  32. 1366
      ezmlm-web-3.3/intl/es/LC_MESSAGES/ezmlm-web.po
  33. 1241
      ezmlm-web-3.3/intl/ezmlm-web.pot
  34. 1256
      ezmlm-web-3.3/intl/fi/LC_MESSAGES/ezmlm-web.po
  35. 1264
      ezmlm-web-3.3/intl/fr/LC_MESSAGES/ezmlm-web.po
  36. 1265
      ezmlm-web-3.3/intl/hu/LC_MESSAGES/ezmlm-web.po
  37. 1261
      ezmlm-web-3.3/intl/it/LC_MESSAGES/ezmlm-web.po
  38. 1260
      ezmlm-web-3.3/intl/ja/LC_MESSAGES/ezmlm-web.po
  39. 1260
      ezmlm-web-3.3/intl/nl/LC_MESSAGES/ezmlm-web.po
  40. 1256
      ezmlm-web-3.3/intl/pl/LC_MESSAGES/ezmlm-web.po
  41. 1612
      ezmlm-web-3.3/intl/pt/LC_MESSAGES/ezmlm-web.po
  42. 1340
      ezmlm-web-3.3/intl/pt_BR/LC_MESSAGES/ezmlm-web.po
  43. 1340
      ezmlm-web-3.3/intl/ru/LC_MESSAGES/ezmlm-web.po
  44. 1347
      ezmlm-web-3.3/intl/sl/LC_MESSAGES/ezmlm-web.po
  45. 1256
      ezmlm-web-3.3/intl/sv/LC_MESSAGES/ezmlm-web.po
  46. 8
      ezmlm-web-3.3/lang/README
  47. 359
      ezmlm-web-3.3/lang/en.hdf
  48. 25
      ezmlm-web-3.3/man/ezmlm-web-make-suid.1
  49. 21
      ezmlm-web-3.3/man/ezmlm-web.wrapper.1
  50. 157
      ezmlm-web-3.3/man/ezmlmwebrc.5
  51. 60
      ezmlm-web-3.3/man/webusers.5
  52. 5
      ezmlm-web-3.3/package.exclude
  53. 76
      ezmlm-web-3.3/scripts/debian.sh
  54. 84
      ezmlm-web-3.3/scripts/fetch_po_files.sh
  55. 337
      ezmlm-web-3.3/scripts/update_language_files.py
  56. 40
      ezmlm-web-3.3/spec/actions-spec.txt
  57. 62
      ezmlm-web-3.3/spec/hdf-spec.txt
  58. 22
      ezmlm-web-3.3/spec/release-policy.txt
  59. 15
      ezmlm-web-3.3/suid-wrapper/Makefile
  60. 38
      ezmlm-web-3.3/suid-wrapper/ezmlm-web-make-suid
  61. 38
      ezmlm-web-3.3/suid-wrapper/index.c
  62. 1
      ezmlm-web-3.3/suid-wrapper/index.h
  63. 23
      ezmlm-web-3.3/template/config_admin.cs
  64. 23
      ezmlm-web-3.3/template/config_all.cs
  65. 23
      ezmlm-web-3.3/template/config_archive.cs
  66. 23
      ezmlm-web-3.3/template/config_gpgezmlm.cs
  67. 23
      ezmlm-web-3.3/template/config_main.cs
  68. 3
      ezmlm-web-3.3/template/config_options/admin_edit_text.cs
  69. 3
      ezmlm-web-3.3/template/config_options/admin_enabled.cs
  70. 3
      ezmlm-web-3.3/template/config_options/admin_get_subscribers.cs
  71. 7
      ezmlm-web-3.3/template/config_options/admin_path.cs
  72. 3
      ezmlm-web-3.3/template/config_options/archive_access.cs
  73. 3
      ezmlm-web-3.3/template/config_options/archive_deny_unknown.cs
  74. 3
      ezmlm-web-3.3/template/config_options/archive_enabled.cs
  75. 3
      ezmlm-web-3.3/template/config_options/archive_mod_only.cs
  76. 3
      ezmlm-web-3.3/template/config_options/archive_remove_private_header.cs
  77. 3
      ezmlm-web-3.3/template/config_options/block_deny.cs
  78. 3
      ezmlm-web-3.3/template/config_options/block_nonmod_post.cs
  79. 3
      ezmlm-web-3.3/template/config_options/block_others_archive.cs
  80. 3
      ezmlm-web-3.3/template/config_options/block_others_post.cs
  81. 9
      ezmlm-web-3.3/template/config_options/charset_select.cs
  82. 3
      ezmlm-web-3.3/template/config_options/confirm_post.cs
  83. 3
      ezmlm-web-3.3/template/config_options/confirm_selection.cs
  84. 3
      ezmlm-web-3.3/template/config_options/confirm_sub.cs
  85. 3
      ezmlm-web-3.3/template/config_options/confirm_unsub.cs
  86. 13
      ezmlm-web-3.3/template/config_options/copylines.cs
  87. 5
      ezmlm-web-3.3/template/config_options/create_listaddress.cs
  88. 2
      ezmlm-web-3.3/template/config_options/create_listname.cs
  89. 3
      ezmlm-web-3.3/template/config_options/digest_enabled.cs
  90. 3
      ezmlm-web-3.3/template/config_options/digest_settings.cs
  91. 3
      ezmlm-web-3.3/template/config_options/from_address.cs
  92. 8
      ezmlm-web-3.3/template/config_options/gnupg_keycomment.cs
  93. 15
      ezmlm-web-3.3/template/config_options/gnupg_keyexpires.cs
  94. 8
      ezmlm-web-3.3/template/config_options/gnupg_keyname.cs
  95. 11
      ezmlm-web-3.3/template/config_options/gnupg_keysize.cs
  96. 6
      ezmlm-web-3.3/template/config_options/gpgezmlm_allowkeysubmission.cs
  97. 6
      ezmlm-web-3.3/template/config_options/gpgezmlm_encrypttoall.cs
  98. 6
      ezmlm-web-3.3/template/config_options/gpgezmlm_nokeynocrypt.cs
  99. 6
      ezmlm-web-3.3/template/config_options/gpgezmlm_requiresigs.cs
  100. 6
      ezmlm-web-3.3/template/config_options/gpgezmlm_signmessages.cs
  101. Some files were not shown because too many files have changed in this diff Show More

@ -0,0 +1,180 @@
The following notes will guide you through the installation of ezmlm-web:
$Id$
OVERVIEW:
0 - important notes
1 - get it
2 - install executable and shared files
3 - configuration file
4 - create a suid cgi wrapper
5 - [optional] configure access control (http authentication)
6 - [optional] configure multi domain support
7 - css stylesheet file
8 - final test
9 - troubleshooting
10 - report problems
------------------------------------------------------------------------------
0. IMPORTANT: you need the perl module Mail::Ezmlm and others to use
ezmlm-web! The file README contains the complete list of necessary
modules.
1. Choose a distribution form
1a) source installation
Get ezmlm-web and extract the archive:
tar xzf ezmlm-web-3.x.tar.gz
(for source installation continue with step 2)
1b) debian package
This is the (by far) most convenient way to install ezmlm-web.
Read debian/README.Debian for details.
(debian users may stop reading here)
2. Execute the following lines to install the cgi script and the shared data
files to the appropriate locations.
perl Makefile.PL
make
make install
3. Edit the examples/ezmlmwebrc.dist file and alter the variables to suit
your particular system.
Be careful about the $LIST_DIR variable. This script assumes that
all users store their mailing lists in the same sub directory of the
home directory (eg ~/lists). You can override this for an individual
user by recompiling the C wrapper to call ezmlm-web.cgi with a -d
option.
Other configurable options are documented in the ezmlmwebrc file
itself. I have tried to keep the amount of information that you need to
supply to a minimum and also make reasonable guesses about default
values.
Finally, copy the ezmlmwebrc file to one of
the following places:
1) the home directory of the user that runs ezmlm-web.cgi (~/.ezmlmwebrc)
2) /etc/ezmlm-web/ezmlmwebrc
3) /etc/ezmlm/ezmlmwebrc [deprecated]
(ezmlm-web will look for it in these places in the given order)
See the manpage of ezmlmwebrc (5) for a complete description of all
configuration settings.
4. For every user/virtual host that needs to manage mailing lists, you
need to create a suid wrapper owned by the user whom the mailing lists
belong to. This wrapper needs to reside somewhere accessible by
the web server. I suggest that you put it in a sub directory
of each user/virtual host's home directory (eg.
/home/luser/public_html/ezmlm for Apache).
Create a suid wrapper by issuing the following command:
ezmlm-web-make-suid
The copies don't actually have to be called index.cgi, but it is nice
for web servers that can resolve a cgi script as an index page. It is
important to make sure that whichever directory you choose to put them can
i: Execute CGI Scripts and
ii: Be access controlled (here I mean both web and user access) by
some method (eg .htaccess for Apache).
Alternatively you can also manage multiple domains/users/virtual hosts
with a single suid-wrapper. Take a look at examples/multidomain.conf for
details.
5. Install some method of securing access to the page. The following
information is applicable to Apache web servers ... Detailed
information on user authentication can be obtained from the Apache
documentation (http://www.apache.org) and ApacheWeek
(http://www.apacheweek.com/features/userauth).
5.1 Ensure that your Apache setup will allow .htaccess file to control
access in the directory that contains. This is controlled by the
AllowOverride tag in access.conf. (Also ensure you have the
necessary Apache modules installed)
5.2 Create a htpasswd file. This is done using the htpasswd command that
comes with Apache. Its command line syntax is;
htpasswd [-c] passwordfile username
You need to put the passwordfile somewhere that is not accessible by
people through the web, and create an entry for each user you want
to have access ... See the ApacheWeek article for more details.
5.3 Create a .htaccess file in the directory that contains index.cgi.
Note that using Apache's built in access control, you can only control
access to directories, not individual files, hence the need for a
sub-directory in step 5.
The format of the .htaccess file should be along the lines of this;
AuthName EZ Mailing List Manager
AuthType Basic
AuthUserFile /path/to/passwordfile
require valid-user # or require user username
You may use examples/htaccess.dist as a template.
Again, see the ApacheWeek article for details.
6. You may skip this step if you manage only one directory containing mailing
lists. For more than one domain or multiple user directories you should
follow the instructions below. BEWARE: this is an advanced setting.
1) copy examples/multidomain.conf.dist to /etc/ezmlm-web/multidomain.conf
2) add your mailing list parent directories to this file
3) uncomment the respective line in your ezmlmwebrc file
The web interface should now show a "Change domain" link in the navigation
bar to the left.
Direct links to a specifc domain use the following format:
http://BASE_URL/ezmlm-web?domain=foo
Note that since version 3.3 webusers file has to explictly let users create
and manage lists. If you are relying on the user beeing able to create lists
if no webusers file exists, then you will have to explicitly create one with
the appropiate permissions.
7. Copy the stylesheet files (/usr/local/share/ezmlm-web/www-data/*.css)
to a location of your choice. It has to be accessible by an URL - maybe
a place like "/var/www/ezmlm-web/" could be appropriate.
Now you may have to adapt the "HTML_CSS_COMMON" and "HTML_CSS_COLOR"
settings in your ezmlmwebrc file.
Alternatively you can also use the mapping feature of your web server.
Take a look at examples/apache.conf.dist for an example.
8. Test the installation with your favourite web browser. You should be
asked for a username and password (supplied in 6.2) and then be presented
with a screen entitled "ezmlm-web". You can then try to create and edit
mailing lists ... Have Fun :)
If you see a slightly disordered screen, the you probably did not set the
HTML_CSS_COMMON option correctly. Check it again.
If you do not see a colorful screen, then you probably did not set the
HTML_CSS_COLOR option correctly. Check it again.
9. If anything failes - take a look at the web server's error log
(e.g. /var/log/apache/error.log).
10. If the error log of your web server does not to solve your problem:
- take a look at https://systemausfall.org/toolforge/ezmlm-web
- subscribe to the mailinglist: ezmlm-web-subscribe@lists.systemausfall.org
- send me an email: ezmlm-web@sumpfralle.de
- report a bug at https://systemausfall.org/trac/ezmlm-web

@ -0,0 +1,112 @@
ezmlm-web.cgi
changelog
copyright
UPGRADING
template/gnupg_public.cs
template/config_all.cs
template/gnupg_import.cs
template/config_subscription.cs
template/language_select.cs
template/config_encryption.cs
template/config_archive.cs
template/gnupg_convert.cs
template/main.cs
template/config_processing.cs
template/gnupg_generate_key.cs
template/config_admin.cs
template/config_posting.cs
template/help_tag_substitution.cs
template/config_main.cs
template/config_options/block_others_post.cs
template/config_options/admin_get_subscribers.cs
template/config_options/confirm_sub.cs
template/config_options/msgsize_max.cs
template/config_options/archive_deny_unknown.cs
template/config_options/confirm_post.cs
template/config_options/gnupg_keysize.cs
template/config_options/gnupg_sign_messages.cs
template/config_options/admin_enabled.cs
template/config_options/confirm_unsub.cs
template/config_options/confirm_selection.cs
template/config_options/mainlist.cs
template/config_options/create_listname.cs
template/config_options/mimereject.cs
template/config_options/mod_post_path.cs
template/config_options/digest_enabled.cs
template/config_options/gnupg_keyexpires.cs
template/config_options/trailer.cs
template/config_options/prefix.cs
template/config_options/mysql.cs
template/config_options/msgsize_min.cs
template/config_options/mimefilter.cs
template/config_options/mod_sub.cs
template/config_options/admin_path.cs
template/config_options/webusers.cs
template/config_options/lang_select.cs
template/config_options/digest_settings.cs
template/config_options/subscribe_selection.cs
template/config_options/mod_sub_path.cs
template/config_options/gnupg_keyname.cs
template/config_options/reply_to_self.cs
template/config_options/mailman_requests.cs
template/config_options/public.cs
template/config_options/block_deny.cs
template/config_options/admin_edit_text.cs
template/config_options/mod_post.cs
template/config_options/copylines.cs
template/config_options/headeradd.cs
template/config_options/from_address.cs
template/config_options/create_listaddress.cs
template/config_options/posting_selection.cs
template/config_options/warn_remove.cs
template/config_options/headerfilter.cs
template/config_options/gnupg_keycomment.cs
template/config_options/archive_enabled.cs
template/config_options/gnupg_plain_without_key.cs
template/config_options/block_nonmod_post.cs
template/config_options/block_others_archive.cs
template/config_options/archive_remove_private_header.cs
template/config_options/owner_address.cs
template/config_options/archive_mod_only.cs
template/config_options/charset_select.cs
template/config_options/archive_access.cs
template/textfile_edit.cs
template/modpath_info.cs
template/ui/easy.hdf
template/ui/expert.hdf
template/ui/normal.hdf
template/domain_select.cs
template/mime_type_examples.txt
template/list_delete.cs
template/header.cs
template/list_create.cs
template/interface_select.cs
template/footer.cs
template/textfiles.cs
template/show_subscription_log.cs
template/list_select.cs
template/subscribers.cs
template/macros.cs
template/gnupg_secret.cs
template/nav.cs
www-data/horiz_grad_blue.png
www-data/color-red-blue.css
www-data/vert_grad_red.png
www-data/horiz_grad_blue_long.png
www-data/color-blue-gray.css
www-data/graphics-template.svg
www-data/default.css
man/ezmlm-web-make-suid.1
man/ezmlm-web.wrapper.1
man/webusers.5
man/ezmlmwebrc.5
examples/ezmlmwebrc.minimal-dist
examples/apache.conf.dist
examples/htaccess.dist
examples/multidomain.conf.dist
examples/webusers.dist
examples/ezmlmwebrc.dist
suid-wrapper/index.h
suid-wrapper/index.c
suid-wrapper/ezmlm-web-make-suid
suid-wrapper/Makefile

@ -0,0 +1,110 @@
# $Id$
use strict;
use ExtUtils::MakeMaker;
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
# the contents of the Makefile that is written.
WriteMakefile(
'NAME' => 'ezmlm-web',
'AUTHOR' => 'Lars Kruse <devel@sumpfralle.de>',
'VERSION_FROM' => 'ezmlm-web.cgi', # finds $VERSION
'DISTNAME' => 'ezmlm-web',
'PREREQ_PM' => {
'Mail::Ezmlm' => 0.07,
'Mail::Address' => 1.15,
'CGI' => 2.6,
'CGI::Carp' => 1.06,
'DB_File' => 1.65,
'Getopt::Std' => 1.0,
'File::Find' => 0.0,
'File::Copy' => 2.02,
'File::Path' => 1.07,
'Text::ParseWords' => 3.0 },
'MAN1PODS' => { 'ezmlm-web.cgi' => 'blib/man1/ezmlm-web.cgi.1p' },
'dist' => { COMPRESS => 'gzip', SUFFIX => 'gz' }
);
sub MY::postamble {
my ($self, $datadir) = @_;
my $SHAREDIR = "\$(DESTINSTALLSHARE)/$self->{NAME}";
return <<ENDOFTEXT
# REALINSTALLBIN is introduced later depending on "site" or "vendor" installation
export REALINSTALLBIN
export NOECHO
export CC
real_install_bin_: REALINSTALLBIN := \$(INSTALLSITEBIN)
real_install_bin_: install_suid_wrapper install_cgi
real_install_bin_site: REALINSTALLBIN := \$(INSTALLSITEBIN)
real_install_bin_site: install_suid_wrapper install_cgi
real_install_bin_vendor: REALINSTALLBIN := \$(INSTALLVENDORBIN)
real_install_bin_vendor: install_suid_wrapper install_cgi
real_install_bin_perl: REALINSTALLBIN := \$(INSTALLBIN)
real_install_bin_perl: install_suid_wrapper install_cgi
real_build_bin_: REALINSTALLBIN := \$(INSTALLSITEBIN)
real_build_bin_: build_suid_wrapper
real_build_bin_site: REALINSTALLBIN := \$(INSTALLSITEBIN)
real_build_bin_site: build_suid_wrapper
real_build_bin_vendor: REALINSTALLBIN := \$(INSTALLVENDORBIN)
real_build_bin_vendor: build_suid_wrapper
real_build_bin_perl: REALINSTALLBIN := \$(INSTALLBIN)
real_build_bin_perl: build_suid_wrapper
subdirs:: real_build_bin_\$(INSTALLDIRS)
clean_subdirs: clean_suid_wrapper
build_suid_wrapper:
\$(MAKE) -C suid-wrapper build
clean_suid_wrapper:
\$(MAKE) -C suid-wrapper clean
make_real_bin: real_install_bin_\$(INSTALLDIRS)
\$(MKPATH) \$(DESTDIR)\$(REALINSTALLBIN)
install_cgi: make_real_bin
install -c -m 755 ezmlm-web.cgi \$(DESTDIR)\$(REALINSTALLBIN)/ezmlm-web.cgi
install_suid_wrapper: build_suid_wrapper make_real_bin
\$(NOECHO) echo "WARNING: \$(REALINSTALLBIN)"
install -c -m 0755 suid-wrapper/index.cgi \$(DESTDIR)\$(REALINSTALLBIN)/ezmlm-web.wrapper
install -c -m 0755 suid-wrapper/ezmlm-web-make-suid.configured \$(DESTDIR)\$(REALINSTALLBIN)/ezmlm-web-make-suid
install:: real_install_bin_\$(INSTALLDIRS) install_share_\$(INSTALLDIRS)
install_share_site:: DESTINSTALLSHARE := \$(DESTDIR)\$(PREFIX)/local/share
install_share_site:: install_share
install_share_vendor:: DESTINSTALLSHARE := \$(DESTDIR)\$(PREFIX)/share
install_share_vendor:: install_share
install_share:
install -d -m 0755 $SHAREDIR
install -d -m 0755 $SHAREDIR/lang
for file in lang/*.hdf ; \\
do install -c -m 0644 \$\$file $SHAREDIR/lang/ ; \\
done
install -d -m 0755 $SHAREDIR/www-data
for file in www-data/*.css www-data/*.png ; \\
do install -c -m 0644 \$\$file $SHAREDIR/www-data/ ; \\
done
install -d -m 0755 $SHAREDIR/template
install -d -m 0755 $SHAREDIR/template/config_options
install -d -m 0755 $SHAREDIR/template/ui
for file in template/*.cs template/*.txt ; \\
do install -c -m 0644 \$\$file $SHAREDIR/template/ ; \\
done
for file in template/config_options/*.cs ; \\
do install -c -m 0644 \$\$file $SHAREDIR/template/config_options/ ; \\
done
for file in template/ui/*.hdf ; \\
do install -c -m 0644 \$\$file $SHAREDIR/template/ui/ ; \\
done
ENDOFTEXT
}

@ -0,0 +1,230 @@
=================
| ezmlm-web-3.3 |
=================
$Id$
If you only want to know how to install ezmlm-web, then you should
read INSTALL.
Contents
========
I. Copyright Stuff
II. Requirements
III. Multi-level list access
IV. Multilingual interface
V. Encryption support
VI. Bugs && Bug Reports
VII. Acknowledgements
VIII. Availability
I. Copyright Stuff - essentially the FreeBSD licence ...
==================
ezmlm-web - version 3.3 - 12/10/02008
Copyright (C) 1998, Guy Antony Halse, All Rights Reserved.
Copyright (C) 02005-02007, Lars Kruse, All Rights Reserved.
Please send bug reports and comments to ezmlm-web@sumpfralle.de
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
Neither name Guy Antony Halse nor the names of any contributors may be used
to endorse or promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
II. Requirements
================
This version of ezmlm-web requires the following;
* qmail v1.03
* ezmlm-idx v0.40 or higher
* clearsilver v0.10.3 (only perl support is necessary)
* Perl v5.004 and the following modules;
+ Mail::Ezmlm v0.07
+ Mail::Address v1.15 OR Email::Address
+ CGI v2.6
+ CGI::Carp v1.06
+ DB_File v1.65
+ Getopt::Std v4.1
+ File::Find v?
+ File::Copy v2.02
+ File::Path v1.07
+ Text::ParseWords v3.24
+ MIME::QuotedPrint v?
+ Encode (optional)
The version number indicates the version of the module that ezmlm-web was
developed with. Earlier versions may work, but then they haven't been
tested. Have a look on http://www.CPAN.org/, http://www.qmail.org/, and
http://www.ezmlm.org/ for anything you are missing. Of course, newer
versions are expected to work as well.
To install perl modules you may use the cpan command line interface.
Just run "cpan" and type something like "install Mail::Ezmlm".
You can download clearsilver (a templating engine) from http://clearsilver.net.
III. Multi-Level Access
=======================
Ezmlm-web has a multi-level access system. This depends on a file called
webusers being present in $LIST_DIR. If the file is not present, then ANY
valid user has access to all lists. If, however, this file exists a number
of constraints come into place.
- The webusers file is scanned for either the list name (case insensitive) or
an ALL (case sensitive) entry.
- The list entry (or ALL) is scanned for the current user (as set in
$REMOTE_USER) or an ALL (user) entry.
- If any valid match is made, then the user is allowed to edit the list.
Otherwise the user is politely told to go away ;-)
If list creation is allowed and the webusers file exists, then the person who
creates the list is the default owner. There is no way to create users
through the web interface, as this depends on your authentication system.
The format of a webusers file is as follows:
list1: user1 user2 user3
ALL: user1 user2
list2: ALL
Once this file exists, the ezmlm-web script will allow the list users to
configure their access lists along with any other options.
You can permit some users to create lists by adding a line similar to the
following to your webusers file:
ALLOW_CREATE: user2 user3
If there is no line starting with "ALLOW_CREATE:" in the webusers file, then
no one will be allowed to create lists. This behaviour is new for ezmlm-web
since version 2.2. To stay compatible to old installations, the commandline
option "-c" for ezmlm-web.cgi will still allow everyone to create lists. The
use of this option is deprecated, since the line "ALLOW_CREATE: ALL" provides
the same effect in a cleaner way.
You find the details of the format of webusers (5) file in the respective
manpage.
IV. Multilingual interface
==========================
One of the great new features since version 2.0 is that it is essentially
language independant. All of the fixed strings, help, etc is defined in the
files of the lang directory. Of course you can change them or create a new
translation.
The default fallback language can be selected in ezmlmwebrc with the
"HTML_LANGUAGE" option. ezmlm-web tries to determine the language of the
current user by evaluating the http header information of the browser.
Additionally the user may select a different language via the web interface.
The currently supported languages are:
- English
- German
- Slovenian
- Portuguese (Brazil)
Please visit the translation center at http://translate.systemausfall.org
to contribute some translations for your native language. Thanks!
V. Encryption support
=====================
ezmlm-web supports encrypted mailinglists since v3.3.
See README.crypto for details.
VI. Bugs && Bug Reports
=======================
I don't know of any bugs ...
Ezmlm-web has been tested reasonably well, but not exhaustively. I know it
works on FreeBSD 4.0-STABLE, FreeBSD 3.4-RELEASE, RedHat 5.1, Redhat 6.0 and
Debian all using an Apache web server, but I would be interested to know
whether it works on other OSs and with other web servers.
Please mail bug reports and comments to
ezmlm-web@sumpfralle.de
Or (even better) submit a bug report at
https://systemausfall.org/trac/ezmlm-web
Or subscribe to the ezmlm-web mailinglist:
ezmlm-web-subscribe@lists.systemausfall.org
VII. Acknowledgements
=====================
* Guy Antony Halse (guy-ezmlm@rucus.ru.ac.za) - he created ezmlm-web
and maintained it till 02005
* Keith Burdis (keith@rucus.ru.ac.za) - For constantly bugging me (Guy) and
ensuring that I actually got round to writing some code :)
* Bryan Kilian (bryan@rucus.ru.ac.za) and the administrators of the
Litestep mailing list - For helping beta test and putting up with me (Guy)
pestering them.
* Several societies at Rhodes. For switching to my web interface and so
unknowingly helping to beta test it.
* Barry Irwin (bvi@moria.org) - For trusting me (Guy) and moving the Grahamstown
Foundation over to qmail and ezmlm - yet another beta tester :-)
* David Summers (david@summersoft.fay.ar.us) - For some ideas. And for
offering to make up an RPM version. I hope the offer still exists for
version 2.0 :-)
* Glen Stewart (glen_stewart@associate.com) - For a multitude of ideas.
* Fred Lindberg (lindberg@id.wustl.edu) for his useful posts to the
mailing list, suggestions, help, etc
* Galen Johnson (gjohnson@totalsports.net) - For some ideas on bugfixes.
* Reinin Ooyama (lenin@hasiru.net) - a Japanese translation and bugixes for v2.3
* Henning Rieger (age@systemausfall.org) - designed most of the new
interface for v3.0
* Clavdia Horvat - designed the new color scheme of v3.2 and translated to
Slovenian
* Carlinhos Cecconi - added the translation for Portugues do Brasil
* Hans F. Nordhaug - fixed MANIFEST file and reported typos
* Jose Luis Martinez - various code improvements; added the Spanish translation
* Anton Ponkratov - added the Russian translation
* kinnko - added the Japanese translation
VIII. Availability
=================
More information on ezmlm-web and developments to ezmlm-web can be found at:
https://systemausfall.org/toolforge/ezmlm-web/
The public subversion repository is at:
https://svn.systemausfall.org/svn/ezmlm-web/
The (inofficial) debian repository containing ezmlm-web is at:
http://systemausfall.org/toolforge/debian/
The translation web interface (powered by Pootle) is at:
http://translate.systemausfall.org
The website of Guy Antony Halse (the original author of ezmlm-web) is still at:
http://rucus.ru.ac.za/~guy/ezmlm/
The old ftp-archive of ezmlm-web is still available on:
ftp://rucus.ru.ac.za/pub/mail/ezmlm/

@ -0,0 +1,47 @@
This file describes how to manage encrypted mailing lists with ezmlm-web.
$Id$
Content:
1) Requirements
2) Installation of gpgpy-ezmlm
3) Setup of ezmlm-web
4) Notes
------------------------------
1) Requirements
To use encrypted mailing lists, you need to install gpg-ezmlm (see
http://www.synacklabs.net/projects/crypt-ml/).
gpg-ezmlm will handle your incoming and outgoing mails. It does not
support all the features of ezmlm-idx, but it should suffice for the
specialized needs of encrypted communication for small groups.
Install the perl module Mail::Ezmlm (>=0.08) to access gpg-ezmlm. You can
downloaded it from
https://systemausfall.org/toolforge/ezmlm-web/downloads/Ezmlm-Gpg.
Of course, you also need gnupg (it is required by gpg-ezmlm, too).
2) Installation
Follow the instructions in the README file of gpg-ezmlm.
Usually it should boil down to the following commands:
perl Makefile.PL
make
make test
make install
See INSTALL in the Mail::Ezmlm module
(https://systemausfall.org/toolforge/ezmlm-web/download/Ezmlm)
for details on how to install it.
3) Setup of ezmlm-web
Support for encrypted mailing lists can be enabled by setting the
ENCRYPTION_SUPPORT configuration setting in ezmlmwebrc to "1".
4) Notes
As soon as you installed all the necessary programs you will find a new
link in the navigation bar of ezmlm-web named "Encryption".

@ -0,0 +1,12 @@
Infos fuer Massen-Hosting:
http://www.fbis.ch/index-de.php?page=14&frameset=4
add "only for plain text mails" to the TrailerText string
check version history of Mail::Ezmlm
main page title should be a link to the domain/list selection
-> text configurable?
listname (incl. domain name) below the main title?

@ -0,0 +1,121 @@
This file contains some useful hints for upgrading from a previous version.
##############################################################################
------------------------------------------------------------------------------
UPGRADING ezmlm-web 3.2 to ezmlm-web 3.3
1) the file webusers is mandatory
The admin has to add ALLOW_CREATE or user-specific permissions to the
webusers file, to allow changes to mailing lists otherwise no changes are
allowed. If you have ezmlm-web running already, a webusers file has already
been created for you (this was actually a bug - see issue #51 in the bug
database).
This change should not have any negative impact on working installations.
------------------------------------------------------------------------------
UPGRADING ezmlm-web 3.1 to ezmlm-web 3.2
1) the following dependency was added:
- File::Path
2) CSS stylesheet file
The css stylesheet file changed significantly. Please update your copy.
Additionally the stylesheet file was splitted into a common and a color
scheme part. Thus you need to specify the location of your color scheme
CSS file (a URL) in your ezmlmwebrc as HTML_CSS_COLOR. Otherwise your web
interface will be plain black and white. Read 'man ezmlmwebrc' for details.
Be aware that at least one of the supplied color schemes requires some
images to be available in the directory of the stylesheet file.
The easiest approach would be to publish the 'www-data' directory via an
'Alias' (or something similar) with your favourite web server.
Take a look at examples/apache.conf.dist for an example.
3) possible locations of ezmlmwebrc
ezmlm-web does no longer search for a configuration file (ezmlmwebrc) in
the current directory, as this can be a security risk.
If you relied on this behavior (should be rare), then you have two options:
A) move your configuration file to one of the other possible locations
B) patch the source of ezmlm-web.cgi to include the deprecated
configuration file location. Do this on your own risk!
4) renamed configuration setting
The configuration setting 'HTML_CSS_FILE' is replaced by 'HTML_CSS_COMMON'
for clarity. 'HTML_CSS_COMMON' falls back to the value of 'HTML_CSS_FILE'
if it is undefined. Thus your setup should work as before. But you are
encouraged to replace the setting, as it might break your setup in a
future version of ezmlm-web.
------------------------------------------------------------------------------
UPGRADING ezmlm-web 3.0 to ezmlm-web 3.1
1) update the perl module Mail::Ezmlm to v0.07
------------------------------------------------------------------------------
UPGRADING ezmlm-web 2.3 to ezmlm-web 3.0
1) install clearsilver (see INSTALL for details)
2) copy the "template" directory somewhere (see INSTALL again)
3) set "TEMPLATE_DIR" in your ezmlmwebrc file to this directory
4) copy the languge directory somewhere and adjust the "LANGUAGE_DIR" setting
4) maybe you want to define "MAIL_DOMAIN" in your ezmlmwebrc
5) the search order for ezmlmwebrc has changed
from HOME -> SYSTEM -> CGI_DIR
to HOME -> CGI_DIR -> SYSTEM
------------------------------------------------------------------------------
UPGRADING ezmlm-web 2.2 to ezmlm-web 2.3
1) set the location (URL) of the css file in ezmlmwebrc
------------------------------------------------------------------------------
UPGRADING ezmlm-web 2.1 to ezmlm-web 2.2
1) Creating of new lists is now controlled by a line in the webusers file instead
of a commandline switch for ezmlm-web.cgi.
necessary changes:
- optional: remove switch "-c" when calling ezmlm-web.cgi (take a look at index.c)
- optional: add a line like "ALLOW_CREATE: john, myra" to the webusers file
2) The location of the webusers file is now defined in ezmlmwebrc. (default: $LIST_DIR/webusers)
necessary changes:
- optional: add a line like "$WEBUSERS_FILE = /home/ml/webusers" to ezmlmwebrc
3) A german translation is available.
- optional: include "lang/de.pm" in ezmlmwebrc (there you can also remove the english definitions)
or copy the new ezmlmwebrc :)
------------------------------------------------------------------------------
UPGRADING ezmlm-web 2.0 to ezmlm-web 2.1
There are no major changes that need to be made in order to upgrade. All
that is necessary is to add two new lines to your ezmlmwebrc ... In the top
section of the file add
$FILE_UPLOAD = 1;
and in the %HELPER section, you need to add
addaddressfile => 'or you may enter the filename of a plain text file containing multiple RFC822 email addresses, one per line',
(or just copy the new ezmlmwebrc :)
Have a look for these two lines in the new ezmlmwebrc included in this
distribution if you are unsure of how/where to put these.

@ -0,0 +1,174 @@
Version 3.3 - 10/12/02008
* add gnupg keyring management
* add gpg-ezmlm support - experimental (Closes: #42)
* fix bug for installations without 'webusers' file (Closes: #51)
* improve parsing of subscription log (Closes: #43)
* add posting model for moderated subscriber-only lists (Closes: #49)
* fix a bug in the authorization code regarding lower/uppercase (Closes: #53)
* add configuration of blacklisted interface options
* hide domains without accessible lists for improved privacy (Closes: #46)
* fixed ambiguity of MAIL_ADDRESS_PREFIX for virtualdomain (Closes: #45)
* relax possible characters in a list path (Closes: #48)
* added Spanish translation contributed by CAPSiDE
* added Russian translation contributed by Anton Ponkratov
* added Japanese translation contributed by kinneko
Version 3.2 - 08/15/02007
* support for multi-domain setups (multiple list directories)
* detect preferred interface language
* user-specific interface language selection
* user-specific interface types (easy/normal/expert)
* simplified rules for subscribing, posting and archive access
* support for listing of subscription log
* support for downloading the subscribers list as a text file
* configurable prefix for the local part of mailing list addresses
* support for more ezmlm-idx features: 'headerkeep', 'mimekeep' and 'copylines'
* "reply-to-self" is easier to use
* added configuration setting for site-specific links
* script for creating binary suid wrappers added
* handling of empty settings for ezmlm-idx 5.0 fixed (closes #21)
* bug in MySQL support fixed
* handling of the special character "dot" in listname and list address fixed
* prevent creation of dotqmail files containing uppercase characters (invalid)
* support regional language codes (e.g.: pt_BR)
* allow to reset the "owner" attribute
* the formerly required module "Encode" is now optional
* the perl module Email::Address can be used instead of Mail::Address
* most importantly: a new color scheme! (red/blue instead of blue/gray)
(the "classic" color scheme is still supported)
Version 3.1.4 - 03/26/02006
* new setting: DOTQMAIL_DIR (useful for multi domain vpopmail setups)
[suggested by Maurits Lamers]
* minor stylesheet change (circumvents IE rendering bug)
* case-insensitive check for mime type during address file upload
Version 3.1.3 - 02/22/02006
* fixed removal of dotqmail files
Version 3.1.2 - 02/15/02006
* honour DEFAULT_OPTIONS for new lists
* fixed portability issue of the suid-wrapper
Version 3.1.1 - 01/19/02006
* more careful removal of dotmail files
* allow dots in webuser names
* allow underscores in descriptive listname
Version 3.1 - 01/14/02006
* fully compatible with ezmlm-idx v5.0
* change language of list (idx >= 5.0)
* change charset of list (idx >= 5.0)
* 'modsub' and 'remote' can be changed independently
* improved configuration parsing
* requires Mail::Ezmlm v0.07
Version 3.0.2 - 01/11/02006
* fixed two confusing description strings
Version 3.0.1 - 01/06/02006
* allow several special characters in local part of mail address (RFC2822)
Version 3.0 - 12/25/02005
* complete interface rewritten for enhanced usability
* support for msgsize, mimereject, trailer
* fixed insecure writing of webusers data
* define a default MAIL_DOMAIN
* changed directory for safely removed mailinglists
* requires the clearsilver template engine
Version 2.3 - 10/06/02005
* css styles are used instead of tables
* permission check for upload of files fixed
* removed some taint errors
* file upload typo fixed
* update of webusers file fixed
* moderator unsubscribe fixed
Version 2.2 - 26/01/02005 (not officially released)
* German translation of the web interface - more translations can be added easily
* changed "ALT"-tags to "TITLE" - most browsers will display the tooltip texts now
* fixed security problems (permissions were not thoroughly checked)
* user-based permission for creating lists (can be set in webusersrc)
* the location of the webusers file is now an option in ezmlmwebrc
Version 2.1 - 25/09/00
* Fixed the multiple delete thing - finally!
* Fixed the '-' in username problem - The '-' in hostnames problem is fixed
in the new version of Mail::Ezmlm
* Fixed the '_' in list names problem
* Added support for file uploads of email addresses (multiple subscribe)
* Made error handling more friendly
Version 2.0 - 01/01/00
* Rewrote most of the code to take advantage of Mail::Ezmlm
* Made the webuser file more functional (users can alter it)
* Now handles all current, and future command line options
* Changed the colours :)
* Added support for ezmlm-cgi web archives
* Made it -w and use strict clean
* Moved all user config to a separate file
* Fixed the way we worked out list config - now complete
* Allowed a user specific config over-ride ``ezmlmwebrc''
* Allowed the printing of `nice' usernames (for Rhodes CS Dept)
* Took account of non-standard paths for moderators
* Removed all system() and `` calls from ezmlm-web.cgi
* Made `look and feel' virtually all user configurable
* Added a lot more context sensitive help
* Made ezmlm-web 99% language configurable - but no other templates yet :(
* Added support for creating databases
Version 1.0.3 - 03/10/98
* Fixed the alias-alias-alias-list bug in inlocal (bryan@rucus)
* Added a bit of online help
* Fixed the & in list owner (bryan@rucus)
* Added multi-level access to lists (based on idea by Glen Stewart)
Version 1.0.2 - 28/08/98
* Fixed the bug introduced in v1.0.1 :( (keith@rucus)
* Fixed the way we recreate config files (noticed by Glen Stewart)
* Made the script check return values of system calls properly
* Fixed some of the taint checking stuff ... reports less in the logs now.
Version 1.0.1 - 10/08/98
* Fixed a bug in the way 1.0 re-configured virtual hosts (bryan@rucus)
* Made the script read the /var/qmail/control files instead of explicitly
setting variables (for david@summersoft)
Version 1.0 - 01/08/98
* Complete re-write to convert to perl5 and CGI.pm
* Removed a lot of dependancy on the OS. Use builtin functions instead :)
* Added support for ezmlm-idx
* Added a lot more command line option support (-adfgiklmnpqsrstux5)
* Added support for digests and digest subscribers
* Added support for blacklists
* Allowed users to edit the config of existing lists
* Allowed the user to edit headeradd and headerremove as well as mimeremove
* Allowed user to edit any of the files in DIR/text
* Revised interface to make it more user-friendly and ergonomic.
* Changed the background colour for Kether (clb@rucus) *gryn*
* Removed a big bug in the delete_list function that had gone unnoticed.
Version 0.5 - 12/05/98 (Not Released)
* More bug fixes. Mainly for mathew@graham.
Version 0.4 - 28/04/98
* Fixed up virtual domain (inlocal) stuff as spotted by bryan@rucus
* Allowed the list directory to be automatically created if necessary.
Version 0.3 - 15/04/98
* Allow list deletion (for balin@moria.org)
* Made changes to allow it to run on RedHat 4.2 as well as FreeBSD 3.0
* Fixed some minor bugs (cosmetic irritaions really) that people noticed
* Sorted subscribers list into alphabetical order.
* Added command line switch to change list directory (for nxsy@moria.org)
* Wrote some documentation ...
Version 0.2 - 13/04/98 (Not Released)
* Allow list creation
* Allowed users to edit moderators
Version 0.1 - 10/04/98 (Not Released)
* University Vac - I was bored and started to play. The first version just
let people play with the subscribers list. No moderators, no nothing.

@ -0,0 +1,33 @@
ezmlm-web is distributed under the following BSD-style license:
Copyright (C) 1999/2000, Guy Antony Halse
Copyright (C) 2005-2007, Lars Kruse
All Rights Reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
Neither name Guy Antony Halse nor the names of any contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

@ -0,0 +1,69 @@
How to use ezmlm-web with debian
$Id$
Table of content
1 - install the package
2 - create user-sprecific suid binaries
3 - create a user-specific configuration
4 - enable stylesheet
5 - access control
6 - testing
#################################################################
1) install the package
The debian packages for ezmlm-web are not part of the main
debian distribution. Instead you have to use the debian repository
at systemausfall.org. Just add the following line to your
/etc/apt/sources.list:
deb http://systemausfall.org/toolforge/debian testing main contrib non-free
Now you may simply execute the following commands:
apt-get update
apt-get install ezmlm-web
2) create user-specific suid binaries
As perl-suid is considered deprecated, you have to compile a C-wrapper
for every user of your debian system, who wants to manage his mailing
lists with ezmlm-we.
Usually you do this only for your virtual mailing list user.
to create a wrapper, type the following:
ezmlm-web-make-suid USERNAME DESTINATION_FILE
e.g: ezmlm-web-make-suid john ~john/public_html/cgi-bin/ezmlm-web
3) create a user-specific configuration file (optional)
Copy /usr/share/doc/ezmlm-web/examples/ezmlmwebrc.dist to ~john/.ezmlmwebrc
and change its content according to your setup.
4) web server configuration
Adapt /usr/share/doc/ezmlm-web/examples/apache.conf.dist to your needs
and copy it to /etc/apache2/conf.d/ezmlm-web.
(for other web servers: use a similar setup)
5) access control (optional)
Configure access control for the fresh cgi binary. Maybe you can
use the htaccess.sample file in /usr/share/doc/ezmlm-web/examples as
a template.
Now you should create a webusers file to define the permissions of all
possible web users. An example webusers file can be found at
/usr/share/doc/ezmlm-web/examples/webusers.sample.
See /usr/share/doc/ezmlm-web/README for details about access control.
6) testing
Now you can access the ezmlm-web interface by using your web browser.
e.g. point it to http://localhost/~john/cgi-bin/ezmlm-web
If the web interface does not look like you would expect it, then you
may have to revise your stylesheet settings (HTML_CSS_COMMON and
HTML_CSS_COLOR in ezmlmwebrc).

@ -0,0 +1,11 @@
ezmlm-web (3.3-1) unstable; urgency=low
* upstream update
-- Lars Kruse <devel@sumpfralle.de> Sun, 12 Oct 2008 01:51:05 +0200
ezmlm-web (3.2-1) unstable; urgency=low
* upstream update
-- Lars Kruse <devel@sumpfralle.de> Wed, 15 Aug 2007 19:30:19 +0200

@ -0,0 +1,24 @@
Source: ezmlm-web
Section: admin
Priority: extra
Maintainer: Lars Kruse <devel@sumpfralle.de>
Build-Depends: debhelper (>>3.0.0), gcc (>= 2.95), dpatch
Standards-Version: 3.8.0
Homepage: https://systemausfall.org/toolforge/ezmlm-web
Package: ezmlm-web
Architecture: any
Depends: httpd-cgi, libemail-address-perl, libemail-ezmlm-perl (>= 0.07), libclearsilver-perl, ${perl:Depends}
Suggests: qmail-src, bash (>=2.0), gcc
Description: Web interface for ezmlm-idx mailing list administration
This web interface allows you to configure every part of an ezmlm-idx
mailing list.
Access control makes it possible, to share the administrative work in a
controlled way.
This package depends on the following programs, that are not part of the main
debian distribution:
* qmail - http://cr.yp.to/qmail.html
* ezmlm-idx - http://ezmlm.org/
* Mail::Ezmlm perl module via cpan or as a debian package from
https://systemausfall.org/toolforge/debian

@ -0,0 +1,35 @@
This package was debianized by Lars Kruse <devel@sumpfralle.de> on
Sa Apr 29 10:43:16 CEST 2006
It was downloaded from https://systemausfall.org/toolforge/ezmlm-web/download
Upstream Author: Lars Kruse <devel@sumpfralle.de>
Copyright:
Copyright (c) The Regents of the University of California.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.

@ -0,0 +1 @@
etc/ezmlm-web

@ -0,0 +1,4 @@
changelog
README
UPGRADING
TODO

@ -0,0 +1,5 @@
man/ezmlm-web-make-suid.1
man/ezmlm-web.wrapper.1
blib/man1/ezmlm-web.cgi.1p
man/ezmlmwebrc.5
man/webusers.5

@ -0,0 +1 @@
# no patches required

@ -0,0 +1,86 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# necessary for dpatch
.NOTPARALLEL:
configure: configure-stamp
configure-stamp: patch
dh_testdir
perl Makefile.PL INSTALLDIRS=vendor DESTDIR="$(CURDIR)/debian/ezmlm-web"
touch configure-stamp
build: build-stamp
build-stamp: configure-stamp
dh_testdir
$(MAKE)
# fix 'usr/local/' paths in various files
sed -i 's#usr/local/#usr/#g' examples/* suid-wrapper/* man/*
touch build-stamp
clean: clean-patched unpatch
clean-patched:
dh_testdir
dh_testroot
-$(MAKE) clean
rm -f build-stamp configure-stamp Makefile.old
dh_clean
patch: patch-stamp
patch-stamp:
dpatch apply-all
touch patch-stamp
unpatch:
dpatch deapply-all
rm -rf patch-stamp debian/patched
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
$(MAKE) install
install -c -m 644 examples/ezmlmwebrc.dist "$(CURDIR)/debian/ezmlm-web/etc/ezmlm-web/ezmlmwebrc"
# Build architecture-independent files here.
binary-indep: build install
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs
dh_installdocs
dh_installexamples
dh_install
dh_installman
dh_link
dh_strip
dh_compress
dh_fixperms
dh_perl
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure

@ -0,0 +1,13 @@
# example configuration of ezmlm-web for apache-style web servers
# you should copy this file to e.g. /etc/apache2/conf.d
# don't forget to restart the web server afterwards
# map the static content (css files and images) to the base URL /ezmlm-web/
Alias /ezmlm-web/ /usr/local/share/ezmlm-web/www-data/
# usually you will have to create a suid wrapper for ezmlm-web to enable
# write access to the mailing list directories
# see 'man ezmlm-web-make-suid' for details
# e.g.: 'ezmlm-web-make-suid ezmlm /usr/local/bin/ezmlm-web'
#ScriptAlias /ezmlm-web /usr/local/bin/ezmlm-web

@ -0,0 +1,134 @@
# Configuration file for ezmlm-web 3.3
# ===========================================================================
# This file is not just an ordinary configuration file - it contains valid
# perl statements that are executed just like any other perl script. When
# editing this file, be careful that it is still valid perl when you have
# finished (perl -w ezmlmwebrc ;-)
#
# See the manpage of ezmlmwebrc(5) for a list of all available configuration
# settings.
# ---------------------------------------------------------------------------
# Where do we store lists on this server ... Try "$HOME_DIR/lists".
# This directory will automatically be created if needed.
# BEWARE: the (resulting) path MUST be absolute (starting with a slash)!
$LIST_DIR = "$HOME_DIR/lists";
# Multi-Domain-Support
# This is a quite advanced setting for special installations.
# Most people should just ignore it.
# Anyway - if you want to control more than one directory containing
# different lists, then you should:
# 1) copy examples/multidomain.conf.dist to /etc/ezmlm-web/multidomain.conf
# 2) adjust /etc/ezmlm-web/multidomain.conf to your setup
# 3) uncomment the following line
# 4) make sure that your multi domain settings are not overriden by settings below
#warn "multidomain.conf failed" unless (defined do "/etc/ezmlm-web/multidomain.conf");
# Where do we store the dotqmail files of this user?
# (defaults to the home directory of the executing user)
# You will have to change this value, if you use a multi domain
# vpopmail setup. Otherwise just leave the setting turned off.
# BEWARE: the (resulting) path MUST be absolute (starting with a slash)!
#$DOTQMAIL_DIR = "/home/vpopmail/domain";
# Where is the webusers file for access-permissions
# defaults to "$LIST_DIR/webusers"
#$WEBUSERS_FILE = "$LIST_DIR/webusers";
# Where are the language files
# usually something like /usr/local/share/ezmlm-web/lang
$LANGUAGE_DIR = "/usr/local/share/ezmlm-web/lang";
# Where are the template files
# usually something like /usr/local/share/ezmlm-web/template
$TEMPLATE_DIR = "/usr/local/share/ezmlm-web/template";
# Safe list deletion?
# 0 = move List to $LIST_DIR/_deleted_lists -> recoverable :)
# 1 = allow user to delete list completely. No backup, therefore no recovery.
$UNSAFE_RM = 0;
# Who is the qmail alias user on this system (usually alias ;)
$ALIAS_USER = "alias";
# Where do the qmail control files live on this system ...
# defaults to /var/qmail/control
$QMAIL_BASE = $Mail::Ezmlm::QMAIL_BASE . '/control';
# default mailing list domain name (optional)
#$MAIL_DOMAIN = "lists.someserver.org";
# default prefix of the local part of the addresses of mailing lists
# useful for some qmail-ldap setups
#$MAIL_ADDRESS_PREFIX = "lists-";
# Do we want to allow ``pretty'' names - ie more human readable ones
# This will slow ezmlm-web down a bit for large lists
$PRETTY_NAMES = 1;
# Do we want to allow the users to be allowed to upload a file containing
# lists of email addresses to subscribe?
$FILE_UPLOAD = 1;
# What switches to we want ezmlm-web to have on as default. The ezmlm-make
# defaults are aBDFGHIJKLMNOpQRSTUWX (small means enabled, CAPITALS mean
# disabled). The defaults below should be reasonable - I use them ;)
$DEFAULT_OPTIONS = "aBDFGHiJkLMNOpQRSTUWx";
# Which interface type should be displayed by default?
# available values are: easy, normal and expert
#$DEFAULT_INTERFACE_TYPE = "normal";
# exclude some interface options from being displayed
# BEWARE: this does not protect the specific option from being changed.
# It just hides the visible interface items. Anyone can still craft a manual
# http request, that could change the specified options.
# See the list of filenames below $TEMPLATE_DIR/config_options/. The
# blacklist may contain any of these filenames (without '.cs' extension).
#$INTERFACE_OPTIONS_BLACKLIST = ('lang_select', 'mime_reject');
# What is the title of this document?
$HTML_TITLE = "ezmlm-web - a mailinglist administration interface";
# Optional: some permanent links (visible in the top right corner)
#@HTML_LINKS = (
# { name => 'ezmlm-web homepage',
# url => 'https://systemausfall.org/toolforge/ezmlm-web' },
# { name => 'domain\'s root',
# url => '/'},
# );
# use a cascading style sheet (css)
# the setting is interpreted as a URL
# this setting was formerly known as "HTML_CSS_FILE"
$HTML_CSS_COMMON = "/ezmlm-web/default.css";
# choose a coloring scheme - the available files are:
# color-blue-gray: default style used before v3.2
# color-red-blue: use gradients instead of plain colors (since v3.2)
#
# be aware, that some stylesheets may require additional graphic
# files in the same directory
$HTML_CSS_COLOR = "/ezmlm-web/color-red-blue.css";
# the default interface language
# all other available translation are available via the web interface
# the configured preferred browser language of a user can override this
# setting individually
$HTML_LANGUAGE = "en";
# enabled support for encrypted mailing lists - defaults to 0 (off)
# This include keyring management and mailing list handling in general.
#$ENCRYPTION_SUPPORT = 0;
# Define the default location of gnupg keyrings used for mailing list
# encryption. If the location starts with a slash ('/'), then it is considered
# to be an absolute path. Otherwise it is relative to the current list
# directory. For the ezmlm-gpg mailing list encryption system, the default
# (".gnupg") is usable.
#$GPG_KEYRING_DEFAULT_LOCATION = ".gnupg";

@ -0,0 +1,26 @@
# Minimal configuration file for ezmlm-web 3.3
# ===========================================================================
# This file is not just an ordinary configuration file - it contains valid
# perl statements that are executed just like any other perl script. When
# editing this file, be careful that it is still valid perl when you have
# finished (perl -w ezmlmwebrc ;-)
#
# See the manpage of ezmlmwebrc(5) for a list of all available configuration
# settings.
# ---------------------------------------------------------------------------
# Where do we store lists on this server ... Try "$HOME_DIR/lists".
# This directory will automatically be created if needed.
# BEWARE: the (resulting) path MUST be absolute (starting with a slash)!
$LIST_DIR = "$HOME_DIR/lists";
# Where are the language files
# usually something like /usr/local/share/ezmlm-web/lang
$LANGUAGE_DIR = "/usr/local/share/ezmlm-web/lang";
# Where are the template files
# usually something like /usr/local/share/ezmlm-web/template
$TEMPLATE_DIR = "/usr/local/share/ezmlm-web/template";

@ -0,0 +1,7 @@
#order deny,allow
#deny from all
#allow from .ru.ac.za
AuthName "EZ Mailing List Manager"
AuthType Basic
AuthUserFile /etc/ezmlm/.htusers
require valid-user

@ -0,0 +1,66 @@
# This is a configuration file for ezmlm-web setups with more than one
# mailing list directory.
#
# If you want to use multi-domain support, then you should somehow know
# what you are doing. You have been warned! ;)
#
# Usually you just need to adjust the $DOMAIN setting below.
# Use the existing example as a template.
#
# If your setup is a little bit more exotic, then you can change the code, too.
# In the end, the setting $LIST_DIR should either be an empty string or
# the path of a mailing list directory. You may also want to take care for the
# $DOTQMAIL_DIR, $MAILDOMAIN and $MAIL_ADDRESS_PREFIX settings.
#
# BEWARE: you may not define new variables as - otherwise they could collide
# with the names of variables of the ezmlm-web program.
#
# AGAIN: you have to remove any setting defined in this multidomain setup from
# the ezmlmwebrc file. Otherwise the settings below get overriden and are ignored.
#
{
# we do not want to spoil our namespace - but we need CGI input
use CGI ();
$CURRENT_DOMAIN = new CGI->param('domain');
};
# domain names may not contain any special characters
# you must define at least "name" and "list_dir" for each domain
%DOMAINS = (
foo => {
name => "Example Domain Foo",
list_dir => "/data/lists/foo",
dot_dir => "/var/vpopmail/lists/foo",
mail_domain => "lists.foo.org",
mail_prefix => "lists-",
webusers_file => "/data/lists/foo/webusers",
},
bar => {
name => "Example Domain Bar",
list_dir => "/data/lists/bar",
dot_dir => "/var/vpopmail/lists/bar",
mail_domain => "lists.bar.org",
mail_prefix => "lists-",
webusers_file => "/data/lists/bar/webusers",
},
);
# this simple code defines the most common list specific parameters in a sane way
if (defined($CURRENT_DOMAIN) && defined($DOMAINS{$CURRENT_DOMAIN})) {
$LIST_DIR = $DOMAINS{$CURRENT_DOMAIN}{'list_dir'}
if (defined $DOMAINS{$CURRENT_DOMAIN}{'list_dir'});
$DOTQMAIL_DIR = $DOMAINS{$CURRENT_DOMAIN}{'dot_dir'}
if (defined $DOMAINS{$CURRENT_DOMAIN}{'dot_dir'});
$MAIL_DOMAIN = $DOMAINS{$CURRENT_DOMAIN}{'mail_domain'}
if (defined $DOMAINS{$CURRENT_DOMAIN}{'mail_domain'});
$MAIL_ADDRESS_PREFIX = $DOMAINS{$CURRENT_DOMAIN}{'mail_prefix'}
if (defined $DOMAINS{$CURRENT_DOMAIN}{'mail_prefix'});
$WEBUSERS_FILE = $DOMAINS{$CURRENT_DOMAIN}{'webusers_file'}
if (defined $DOMAINS{$CURRENT_DOMAIN}{'webusers_file'});
} else {
$LIST_DIR = '';
}

@ -0,0 +1,5 @@
comm: guy arb
users: arb
members: ALL
ALL: root
ALLOW_CREATE: root guy

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff