pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/mail/mailman Update to 2.1.3 from pkgsrc-wip via Todd ...
details: https://anonhg.NetBSD.org/pkgsrc/rev/202cd68a66d1
branches: trunk
changeset: 465180:202cd68a66d1
user: xtraeme <xtraeme%pkgsrc.org@localhost>
date: Tue Dec 23 11:02:13 2003 +0000
description:
Update to 2.1.3 from pkgsrc-wip via Todd Vierling. This also closes
PR pkg/22820.
Changes:
- Closed a cross-site scripting exploit in the create cgi script.
- Improvements in the performance of the bounce processor.
Now, instead of processing each bounce immediately (which
can cause severe lock contention), bounce events are queued.
Every 15 minutes by default, the queued bounce events are
processed en masse, on a list-per-list basis, so that each
list only needs to be locked once.
- When some or all of a message's recipients have temporary
delivery failures, the message is moved to a "retry" queue.
This queue wakes up occasionally and moves the file back to
the outgoing queue for attempted redelivery. This should
fix most observed OutgoingRunner 100% cpu consumption,
especially for bounces to local recipients when using the
Postfix MTA.
- Optional support for fsync()'ing qfile data after writing.
Under some catastrophic system failures (e.g. power lose),
it would be possible to lose messages because the data
wasn't sync'd to disk. By setting SYNC_AFTER_WRITE to True
in Mailman/Queue/Switchboard.py, you can force Mailman to
fsync() queue files after flushing them. The benefits are
debatable for most operating environments, and you must
ensure that your Python has the os.fsync() function defined
before enabling this feature (it isn't, even on all
Unix-like operating systems).
And more... please review Changelog to see a complete list of changes.
diffstat:
mail/mailman/MESSAGE | 20 +-
mail/mailman/Makefile | 150 +--
mail/mailman/PLIST | 1680 ++++++++++++++++++++++++++++++++-----
mail/mailman/distinfo | 19 +-
mail/mailman/files/install.local | 20 -
mail/mailman/patches/patch-aa | 81 +-
mail/mailman/patches/patch-ab | 35 +-
mail/mailman/patches/patch-ac | 20 +-
mail/mailman/patches/patch-ad | 25 +-
mail/mailman/patches/patch-ae | 14 +-
mail/mailman/patches/patch-af | 16 +-
mail/mailman/patches/patch-ag | 21 +
12 files changed, 1597 insertions(+), 504 deletions(-)
diffs (truncated from 2277 to 300 lines):
diff -r 272542e381a5 -r 202cd68a66d1 mail/mailman/MESSAGE
--- a/mail/mailman/MESSAGE Tue Dec 23 10:37:56 2003 +0000
+++ b/mail/mailman/MESSAGE Tue Dec 23 11:02:13 2003 +0000
@@ -1,21 +1,27 @@
===========================================================================
-$NetBSD: MESSAGE,v 1.2 2002/09/24 12:30:15 wiz Exp $
+$NetBSD: MESSAGE,v 1.3 2003/12/23 11:02:13 xtraeme Exp $
+
+Mailman needs to know your mail domain and Web server hostname. Edit
+${PREFIX}/lib/mailman/Mailman/mm_cfg.py and insert your hostname
+in place of "localhost" in DEFAULT_EMAIL_HOST and DEFAULT_URL_HOST.
You will need to make mailman accessible through your HTTP server.
If you are running Apache, then you may add the following line to httpd.conf:
Include ${PKG_SYSCONFDIR}/mailman.conf
-to make mailman accessible through:
-
+to make mailman and its archive accessible through, respectively,
+
http://www.domain.com/mailman/
-
-and the archive accessible though
http://www.domain.com/pipermail/
You will also need to add some crontab entries for the user ${MAILMAN_USER}.
You can use ${EXECDIR}/cron/crontab.in as template.
-See the files in ${DOCDIR} for how to use mailman, especially
-${DOCDIR}/INSTALL starting at section 5 for post-install configurations.
+
+See the files in ${DOCDIR} for how to use mailman,
+especially the sections:
+
+ 4, starting with 'Create a "site-wide" mailing list'.
+ 5, 'Customizing Mailman'
===========================================================================
diff -r 272542e381a5 -r 202cd68a66d1 mail/mailman/Makefile
--- a/mail/mailman/Makefile Tue Dec 23 10:37:56 2003 +0000
+++ b/mail/mailman/Makefile Tue Dec 23 11:02:13 2003 +0000
@@ -1,8 +1,9 @@
-# $NetBSD: Makefile,v 1.7 2003/09/05 21:18:52 bouyer Exp $
+# $NetBSD: Makefile,v 1.8 2003/12/23 11:02:13 xtraeme Exp $
-DISTNAME= mailman-2.0.12
+DISTNAME= mailman-2.1.3
CATEGORIES= mail www
-MASTER_SITES= ${MASTER_SITE_GNU:=mailman/}
+MASTER_SITES= http://www.list.org/ \
+ ${MASTER_SITE_GNU:=mailman/}
EXTRACT_SUFX= .tgz
MAINTAINER= bouyer%NetBSD.org@localhost
@@ -16,6 +17,11 @@
MESSAGE_SUBST+= PKG_SYSCONFDIR=${PKG_SYSCONFDIR}
MESSAGE_SUBST+= DOCDIR=${DOCDIR}
+GNU_CONFIGURE= yes
+GNU_CONFIGURE_PREFIX= ${EXECDIR}
+
+MAKE_FLAGS+= DIRSETGID=${TRUE}
+
EXECDIR= ${PREFIX}/lib/mailman
MAILMAN_DATADIR?= /var/db/mailman
EGDIR= ${PREFIX}/share/examples/mailman
@@ -29,110 +35,68 @@
FILES_SUBST+= MAILMAN_USER=${MAILMAN_USER}
FILES_SUBST+= MAILMAN_GROUP=${MAILMAN_GROUP}
FILES_SUBST+= MAILMAN_DATADIR=${MAILMAN_DATADIR}
-
-PKG_GROUPS= ${MAILMAN_GROUP}
-PKG_USERS= ${MAILMAN_USER}:${MAILMAN_GROUP}::Mailman\\ user::${SH}
+PLIST_SUBST+= PYVERSSUFFIX=${PYVERSSUFFIX}
-# We have some extra steps to do at postinstall time
-INSTALL_EXTRA_TMPL= files/install.local
-
-OWN_DIRS_PERMS= ${EXECDIR} root ${MAILMAN_GROUP} 755
+PKG_GROUPS= ${MAILMAN_GROUP}
+PKG_USERS= ${MAILMAN_USER}:${MAILMAN_GROUP}::Mailman\\ user::${SH}
-OWN_DIRS_PERMS= ${MAILMAN_DATADIR} ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS= ${MAILMAN_DATADIR}/logs ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/archives ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/lists ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/locks ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/qfiles ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/data ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/spam ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/filters ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/archives/public ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/archives/private ${MAILMAN_USER} ${MAILMAN_GROUP} 775
+OWN_DIRS_PERMS+= ${EXECDIR} root ${MAILMAN_GROUP} 755
+OWN_DIRS_PERMS+= ${MAILMAN_DATADIR} ${MAILMAN_USER} ${MAILMAN_GROUP} 755
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/archives ${MAILMAN_USER} ${MAILMAN_GROUP} 775
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/archives/public ${MAILMAN_USER} ${MAILMAN_GROUP} 775
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/archives/private ${MAILMAN_USER} ${MAILMAN_GROUP} 771
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/data ${MAILMAN_USER} ${MAILMAN_GROUP} 775
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/lists ${MAILMAN_USER} ${MAILMAN_GROUP} 775
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/locks ${MAILMAN_USER} ${MAILMAN_GROUP} 775
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/logs ${MAILMAN_USER} ${MAILMAN_GROUP} 775
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/qfiles ${MAILMAN_USER} ${MAILMAN_GROUP} 775
+MAKE_DIRS_PERMS+= ${MAILMAN_DATADIR}/spam ${MAILMAN_USER} ${MAILMAN_GROUP} 775
-CONF_FILES+= ${EGDIR}/mailman.conf ${PKG_SYSCONFDIR}/mailman.conf
-CONF_FILES+= ${EXECDIR}/Mailman/mm_cfg.py.dist ${EXECDIR}/Mailman/mm_cfg.py
-
-NO_BIN_ON_FTP= requires compiled-in hardcoded uid/gid
-NO_BIN_ON_CDROM= ${NO_BIN_ON_FTP}
+CONF_FILES+= ${EGDIR}/mailman.conf ${PKG_SYSCONFDIR}/mailman.conf
+CONF_FILES+= ${EXECDIR}/Mailman/mm_cfg.py.dist ${EXECDIR}/Mailman/mm_cfg.py
-PYTHON_VERSIONS_ACCEPTED= 21 20
-PYTHON_PATCH_SCRIPTS= Mailman/Archiver/pipermail.py
-PYTHON_PATCH_SCRIPTS+= Mailman/pythonlib/cgi.py
-PYTHON_PATCH_SCRIPTS+= Mailman/pythonlib/smtplib.py
-PYTHON_PATCH_SCRIPTS+= admin/bin/Release.py
-PYTHON_PATCH_SCRIPTS+= admin/bin/faq2ht.py
-PYTHON_PATCH_SCRIPTS+= admin/bin/mm2do
-PYTHON_PATCH_SCRIPTS+= bin/add_members
-PYTHON_PATCH_SCRIPTS+= bin/arch
-PYTHON_PATCH_SCRIPTS+= bin/check_db
-PYTHON_PATCH_SCRIPTS+= bin/check_perms
-PYTHON_PATCH_SCRIPTS+= bin/clone_member
-PYTHON_PATCH_SCRIPTS+= bin/config_list
-PYTHON_PATCH_SCRIPTS+= bin/digest_arch
-PYTHON_PATCH_SCRIPTS+= bin/dumpdb
-PYTHON_PATCH_SCRIPTS+= bin/find_member
-PYTHON_PATCH_SCRIPTS+= bin/list_lists
-PYTHON_PATCH_SCRIPTS+= bin/list_members
-PYTHON_PATCH_SCRIPTS+= bin/mmsitepass
-PYTHON_PATCH_SCRIPTS+= bin/move_list
-PYTHON_PATCH_SCRIPTS+= bin/newlist
-PYTHON_PATCH_SCRIPTS+= bin/remove_members
-PYTHON_PATCH_SCRIPTS+= bin/rmlist
-PYTHON_PATCH_SCRIPTS+= bin/sync_members
-PYTHON_PATCH_SCRIPTS+= bin/update
-PYTHON_PATCH_SCRIPTS+= bin/version
-PYTHON_PATCH_SCRIPTS+= bin/withlist
-PYTHON_PATCH_SCRIPTS+= contrib/qmail-to-mailman.py
-PYTHON_PATCH_SCRIPTS+= contrib/rotatelogs.py
-PYTHON_PATCH_SCRIPTS+= contrib/securelinux_fix.py
-PYTHON_PATCH_SCRIPTS+= cron/bumpdigests
-PYTHON_PATCH_SCRIPTS+= cron/checkdbs
-PYTHON_PATCH_SCRIPTS+= cron/gate_news
-PYTHON_PATCH_SCRIPTS+= cron/mailpasswds
-PYTHON_PATCH_SCRIPTS+= cron/nightly_gzip
-PYTHON_PATCH_SCRIPTS+= cron/qrunner
-PYTHON_PATCH_SCRIPTS+= cron/senddigests
-PYTHON_PATCH_SCRIPTS+= filters/bowa-strip
-PYTHON_PATCH_SCRIPTS+= misc/Cookie.py
-PYTHON_PATCH_SCRIPTS+= scripts/answer_majordomo_mail
-PYTHON_PATCH_SCRIPTS+= scripts/mailcmd
-PYTHON_PATCH_SCRIPTS+= scripts/mailowner
-PYTHON_PATCH_SCRIPTS+= scripts/owner
-PYTHON_PATCH_SCRIPTS+= scripts/post
-PYTHON_PATCH_SCRIPTS+= scripts/request
+PYTHON_VERSIONS_ACCEPTED= 22 21
+PYTHON_PATCH_SCRIPTS+= Mailman/Archiver/pipermail.py
+PYTHON_PATCH_SCRIPTS+= Mailman/Post.py
+PYTHON_PATCH_SCRIPTS+= admin/bin/Release.py
+PYTHON_PATCH_SCRIPTS+= admin/bin/faq2ht.py
+PYTHON_PATCH_SCRIPTS+= admin/bin/mm2do
+PYTHON_PATCH_SCRIPTS+= bin/msgfmt.py
+
+APACHE_GROUP?= www
-MAILMAN_CONFIGURE_ARGS= --with-python=${PYTHONBIN}
-MAILMAN_CONFIGURE_ARGS+= -prefix=${EXECDIR}
-MAILMAN_CONFIGURE_ARGS+= --with-var-prefix=${MAILMAN_DATADIR}
-MAILMAN_CONFIGURE_ARGS+= --with-username=${MAILMAN_USER}
-MAILMAN_CONFIGURE_ARGS+= --with-groupname=${MAILMAN_GROUP}
-MAILMAN_CONFIGURE_ARGS+= --with-mail-gid=${MAILMAN_MAILGROUP}
+CONFIGURE_ARGS+= --with-cgi-gid=${APACHE_GROUP}
+CONFIGURE_ARGS+= --with-cgi-ext=.cgi
+CONFIGURE_ARGS+= --with-groupname=${MAILMAN_GROUP}
+CONFIGURE_ARGS+= --with-mail-gid=${MAILMAN_MAILGROUP}
+CONFIGURE_ARGS+= --with-python=${PYTHONBIN}
+CONFIGURE_ARGS+= --with-username=${MAILMAN_USER}
+CONFIGURE_ARGS+= --with-var-prefix=${MAILMAN_DATADIR}
+CONFIGURE_ARGS+= --without-permcheck
-# we can't do the configure things before install, because the user/group has
-# to exist and this is only done after build
-do-build: #nothing
+# Put in externally invalid defaults (MESSAGE directs how to fix it)
+CONFIGURE_ARGS+= --with-mailhost=localhost
+CONFIGURE_ARGS+= --with-urlhost=localhost
+
+post-patch:
+ @${SED} ${FILES_SUBST_SED} ${FILESDIR}/mailman.conf.dist \
+ >${WRKDIR}/mailman.conf.dist
+ ${RM} -f ${WRKSRC}/[A-Z]*.orig
pre-install:
- @${SED} ${FILES_SUBST_SED} ${FILESDIR}/mailman.conf.dist \
- > ${WRKDIR}/mailman.conf.dist
-
-do-install:
${INSTALL} -d -o ${MAILMAN_USER} -g ${MAILMAN_GROUP} -m775 ${EXECDIR}
${INSTALL_DATA_DIR} ${DOCDIR}
- cd ${WRKSRC}; \
- ./configure ${MAILMAN_CONFIGURE_ARGS}; \
- ${MAKE} install
- cd ${WRKSRC}; \
- for i in ACKNOWLEDGMENTS BUGS FAQ INSTALL NEWS README README.BSD \
- README.EXIM README.LINUX README.NETSCAPE README.QMAIL \
- README.SENDMAIL TODO UPGRADING; do \
+ ${INSTALL_DATA_DIR} ${EXECDIR}/support
+
+post-install:
+ cd ${WRKSRC} && for i in [A-IN-U]*; do \
${INSTALL_DATA} $$i ${DOCDIR}/; \
done
${INSTALL_DATA_DIR} ${EGDIR}
- cd ${WRKDIR}; ${INSTALL_DATA} mailman.conf.dist ${EGDIR}/mailman.conf
- ${CHOWN} -R root ${EXECDIR}
+ ${INSTALL_DATA} ${WRKDIR}/mailman.conf.dist ${EGDIR}/mailman.conf
+ ${CHOWN} -R root:${MAILMAN_GROUP} ${EXECDIR}
${CHMOD} -R g-w ${EXECDIR}
+ ${CHMOD} g+s ${EXECDIR}/cgi-bin/*
.include "../../lang/python/application.mk"
.include "../../mk/bsd.pkg.mk"
diff -r 272542e381a5 -r 202cd68a66d1 mail/mailman/PLIST
--- a/mail/mailman/PLIST Tue Dec 23 10:37:56 2003 +0000
+++ b/mail/mailman/PLIST Tue Dec 23 11:02:13 2003 +0000
@@ -1,290 +1,1462 @@
-@comment $NetBSD: PLIST,v 1.1.1.1 2002/08/23 15:28:17 bouyer Exp $
-
-share/examples/mailman/mailman.conf
-share/doc/mailman/ACKNOWLEDGMENTS
-share/doc/mailman/BUGS
-share/doc/mailman/FAQ
-share/doc/mailman/INSTALL
-share/doc/mailman/NEWS
-share/doc/mailman/README
-share/doc/mailman/README.BSD
-share/doc/mailman/README.EXIM
-share/doc/mailman/README.LINUX
-share/doc/mailman/README.NETSCAPE
-share/doc/mailman/README.QMAIL
-share/doc/mailman/README.SENDMAIL
-share/doc/mailman/TODO
-share/doc/mailman/UPGRADING
-lib/mailman/bin/digest_arch
-lib/mailman/bin/mmsitepass
-lib/mailman/bin/newlist
-lib/mailman/bin/rmlist
-lib/mailman/bin/add_members
-lib/mailman/bin/list_members
-lib/mailman/bin/remove_members
-lib/mailman/bin/clone_member
-lib/mailman/bin/update
-lib/mailman/bin/arch
-lib/mailman/bin/sync_members
-lib/mailman/bin/check_db
-lib/mailman/bin/withlist
-lib/mailman/bin/check_perms
-lib/mailman/bin/find_member
-lib/mailman/bin/version
-lib/mailman/bin/move_list
-lib/mailman/bin/config_list
-lib/mailman/bin/list_lists
-lib/mailman/bin/dumpdb
-lib/mailman/bin/paths.py
-lib/mailman/bin/paths.pyc
-lib/mailman/templates/admindbpreamble.html
-lib/mailman/templates/handle_opts.html
-lib/mailman/templates/headfoot.html
-lib/mailman/templates/listinfo.html
-lib/mailman/templates/options.html
-lib/mailman/templates/roster.html
-lib/mailman/templates/subscribe.html
-lib/mailman/templates/adminsubscribeack.txt
-lib/mailman/templates/adminunsubscribeack.txt
-lib/mailman/templates/admlogin.txt
-lib/mailman/templates/approve.txt
-lib/mailman/templates/bounce.txt
-lib/mailman/templates/checkdbs.txt
-lib/mailman/templates/convert.txt
-lib/mailman/templates/cronpass.txt
-lib/mailman/templates/help.txt
-lib/mailman/templates/masthead.txt
-lib/mailman/templates/newlist.txt
-lib/mailman/templates/nopass.txt
-lib/mailman/templates/postack.txt
-lib/mailman/templates/postauth.txt
-lib/mailman/templates/postheld.txt
-lib/mailman/templates/reenable.txt
-lib/mailman/templates/refuse.txt
-lib/mailman/templates/subauth.txt
-lib/mailman/templates/subscribeack.txt
-lib/mailman/templates/userpass.txt
-lib/mailman/templates/verify.txt
-lib/mailman/scripts/paths.py
-lib/mailman/scripts/answer_majordomo_mail
-lib/mailman/scripts/mailcmd
-lib/mailman/scripts/mailowner
Home |
Main Index |
Thread Index |
Old Index