diff --git a/net-mail/mailman/ChangeLog b/net-mail/mailman/ChangeLog new file mode 100644 index 00000000..c575cf0f --- /dev/null +++ b/net-mail/mailman/ChangeLog @@ -0,0 +1,430 @@ +# ChangeLog for net-mail/mailman +# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/ChangeLog,v 1.115 2008/11/14 11:07:45 hanno Exp $ + + 14 Nov 2008; Hanno Boeck files/README.gentoo-r3: + Typos in exim doc, thanks to Martin DiViaio in #244545. + + 14 Aug 2008; nixnut ChangeLog: + Stable on ppc wrt bug 233920 + + 08 Aug 2008; Markus Meier mailman-2.1.11.ebuild: + amd64/x86 stable, bug #233920 + + 06 Aug 2008; Friedrich Oslage mailman-2.1.11.ebuild: + Stable on sparc, bug #233920 + +*mailman-2.1.11 (04 Jul 2008) + + 04 Jul 2008; Hanno Boeck + +files/mailman-2.1.9-icons.patch, +files/50_mailman.conf-r1, + +files/README.gentoo-r3, +mailman-2.1.11.ebuild: + Version bump, many changes taken from Jaco Kroon's ebuilds in bug #208789. + + 08 Feb 2008; Hanno Boeck mailman-2.1.9-r3.ebuild: + Stable on amd64. + + 07 Feb 2008; Tobias Scherbaum + mailman-2.1.9-r3.ebuild: + ppc stable, bug #208710 + + 07 Feb 2008; Raúl Porcel mailman-2.1.9-r3.ebuild: + sparc stable wrt security #208710 + + 05 Feb 2008; Dawid Węgliński mailman-2.1.9-r3.ebuild: + Stable on x86 for security bug #208710 + +*mailman-2.1.9-r3 (05 Feb 2008) + + 05 Feb 2008; Hanno Boeck + +files/mailman-2.1.9-fix-XSS.patch, +mailman-2.1.9-r3.ebuild: + Patch XSS issues, CVE-2008-0564. + + 31 Jan 2008; Benedikt Böhm mailman-2.1.9.ebuild, + mailman-2.1.9-r1.ebuild, mailman-2.1.9-r2.ebuild: + fix depend.apache usage wrt #208033 + + 22 Jan 2008; Hanno Boeck +files/README.gentoo-r2, + mailman-2.1.9-r2.ebuild: + Change documentation for new paths, issue a warning about mailman user + homedir, change dep to virtual/httpd-cgi. + + 26 Nov 2007; Hanno Boeck mailman-2.1.9-r2.ebuild: + Make user and group configurable, resolves #194862, thanks to Sebastian + Wieseler. + + 26 Nov 2007; Hanno Boeck files/README.gentoo: + Precisions of doc, resolves #156434, thanks to Sylvain Demers. + + 26 Nov 2007; Hanno Boeck mailman-2.1.9-r2.ebuild: + Add possibility to adjust cgi extension. + + 24 Nov 2007; Hanno Boeck mailman-2.1.9-r2.ebuild: + Fix multilib-strict and change wrong variable name in info part. + +*mailman-2.1.9-r2 (26 Sep 2007) + + 26 Sep 2007; Hanno Boeck +mailman-2.1.9-r2.ebuild: + Much improved ebuild, masked for now. + +*mailman-2.1.9-r1 (13 Sep 2007) + + 13 Sep 2007; Hanno Boeck +mailman-2.1.9-r1.ebuild: + Make customized installation paths possible, with great help from hansmi and Sebastian Wieseler. + + 13 Sep 2007; Michael Hanselmann + -mailman-2.1.9_rc1.ebuild: + Drop old version. + + 31 Jul 2007; Piotr Jaroszyński + mailman-2.1.9_rc1.ebuild, mailman-2.1.9.ebuild: + (QA) Add missing virtual/cron dep, bug #162618. + + 29 Jul 2007; Christian Heim mailman-2.1.9_rc1.ebuild, + mailman-2.1.9.ebuild: + Fixing the DEPEND/RDEPEND for the move of net-www/apache to + www-servers/apache (#78622). + + 16 Jun 2007; Christoph Mende mailman-2.1.9.ebuild: + Stable on amd64 wrt bug 164720 + + 12 Jun 2007; Marius Mauch mailman-2.1.9_rc1.ebuild, + mailman-2.1.9.ebuild: + Replacing einfo with elog + + 12 May 2007; Luca Longinotti mailman-2.1.9_rc1.ebuild, + mailman-2.1.9.ebuild: + Apache 1.X masking (fix ebuilds to not require apache-1*). + + 06 May 2007; Tobias Scherbaum + mailman-2.1.9.ebuild: + ppc stable, bug #164720 + + 03 May 2007; Gustavo Zacarias mailman-2.1.9.ebuild: + Stable on sparc wrt #164720 + + 03 May 2007; Raúl Porcel mailman-2.1.9.ebuild: + x86 stable wrt #164720 + + 28 Apr 2007; Sven Wegener mailman-2.1.9_rc1.ebuild, + mailman-2.1.9.ebuild: + Fix *initd, *confd and *envd calls (#173884, #174266) + +*mailman-2.1.9 (24 Nov 2006) + + 24 Nov 2006; Hanno Boeck files/README.gentoo, + +mailman-2.1.9.ebuild: + Version bump, fix a bump of smaller issues. + + 11 Sep 2006; Thomas Cort mailman-2.1.9_rc1.ebuild: + Stable on amd64 wrt security Bug #139976. + + 10 Sep 2006; Jason Wever mailman-2.1.9_rc1.ebuild: + Stable on SPARC wrt security bug #139976. + + 08 Sep 2006; Joshua Jackson mailman-2.1.9_rc1.ebuild: + Stable x86; bug #139976 + + 07 Sep 2006; Tobias Scherbaum + mailman-2.1.9_rc1.ebuild: + ppc stable, bug #139976 + +*mailman-2.1.9_rc1 (07 Sep 2006) + + 07 Sep 2006; Hanno Boeck +mailman-2.1.9_rc1.ebuild: + Version bump, contains security fixes. + + 21 Jul 2006; Hanno Boeck mailman-2.1.8_rc1.ebuild: + Fix GID for qmail (bug #137254). + + 21 Jul 2006; Hanno Boeck mailman-2.1.5-r4.ebuild, + mailman-2.1.5-r5.ebuild, mailman-2.1.6_rc4.ebuild, mailman-2.1.6.ebuild, + mailman-2.1.7.ebuild, mailman-2.1.8_rc1.ebuild: + Fix Slot from O (the letter) to 0 (zero). + + 08 May 2006; Hanno Boeck metadata.xml, + mailman-2.1.8_rc1.ebuild: + Make ebuild fully support INSTALLDIR (bug #84708) and add myself as maintainer. + + 29 Apr 2006; Luis Medinas mailman-2.1.8_rc1.ebuild: + Stable on amd64. For security bug #129136. + + 17 Apr 2006; Mark Loeser mailman-2.1.8_rc1.ebuild: + Stable on x86; bug #129136 + + 16 Apr 2006; Jason Wever mailman-2.1.8_rc1.ebuild: + Stable on SPARC wrt security bug #129136. + + 15 Apr 2006; Tobias Scherbaum + mailman-2.1.8_rc1.ebuild: + ppc stable, bug #129136 + +*mailman-2.1.8_rc1 (14 Apr 2006) + + 14 Apr 2006; Martin Holzer + +files/mailman-2.1.8_rc1-directory-check.patch, +mailman-2.1.8_rc1.ebuild: + Security bump. see bug #129136 + + 13 Feb 2006; Jason Wever mailman-2.1.7.ebuild: + Stable on SPARC wrt security bug #119313. + + 08 Feb 2006; Chris Gianelloni mailman-2.1.7.ebuild: + Marking stable on x86 wrt bug #119313. + + 07 Feb 2006; Simon Stelling mailman-2.1.7.ebuild: + stable on amd64 wrt bug 119313 + +*mailman-2.1.7 (03 Jan 2006) + + 03 Jan 2006; Martin Holzer + +files/mailman-2.1.7-directory-check.patch, +mailman-2.1.7.ebuild: + Version bumped. + + 03 Jan 2006; Martin Holzer mailman-2.1.6_rc4.ebuild, + mailman-2.1.6.ebuild: + changing postfix mailgid. closes #106403 + + 23 Aug 2005; Andrej Kacian mailman-2.1.5-r2.ebuild, + mailman-2.1.5-r3.ebuild, mailman-2.1.5-r4.ebuild, mailman-2.1.5-r5.ebuild, + mailman-2.1.6_beta1.ebuild, mailman-2.1.6_beta1-r1.ebuild, + mailman-2.1.6_rc4.ebuild, mailman-2.1.6.ebuild: + Use -1 for shell argument to enewuser. Bug #103421. + +*mailman-2.1.6 (06 Jul 2005) + + 06 Jul 2005; Martin Holzer + +files/mailman-2.1.6-directory-check.patch, +mailman-2.1.6.ebuild: + Version bumped. + +*mailman-2.1.6_rc4 (24 May 2005) + + 24 May 2005; Martin Holzer + +files/mailman-2.1.6_rc4-directory-check.patch, +mailman-2.1.6_rc4.ebuild: + Version bumped. MTA now configured with USE flag + +*mailman-2.1.6_beta1-r1 (01 Mar 2005) + + 01 Mar 2005; Elfyn McBratney +files/50_mailman.conf, + +mailman-2.1.5-r5.ebuild, +mailman-2.1.6_beta1-r1.ebuild: + Rev bumps. Update to use the new apache paths. Closes #77916. + + 16 Feb 2005; Elfyn McBratney mailman-2.1.5-r2.ebuild, + mailman-2.1.5-r3.ebuild, mailman-2.1.5-r4.ebuild, + mailman-2.1.6_beta1.ebuild: + Add slash after ${ROOT} in pkg_config. + +*mailman-2.1.6_beta1 (12 Feb 2005) + + 12 Feb 2005; Tuấn Văn + +files/mailman-2.1.6_beta1-directory-check.patch, + +mailman-2.1.6_beta1.ebuild: + New version. New directory-check.patch, thanks to Brian Harring + + 10 Feb 2005; Jan Brinkmann mailman-2.1.5-r4.ebuild: + stable on amd64. see #81109 + + 09 Feb 2005; Gustavo Zacarias mailman-2.1.5-r4.ebuild: + Stable on sparc wrt #81109 + + 09 Feb 2005; Olivier Crête mailman-2.1.5-r4.ebuild: + Stable on x86, bug #81109 + + 09 Feb 2005; Tuấn Văn + +files/mailman-2.1.5-true_path.patch: + revision bump with true_path patch. + + 19 Jan 2005; Karol Wojtaszek + mailman-2.1.5-r3.ebuild: + Stable on amd64, bug #77524 + + 16 Jan 2005; Tuấn Văn mailman-2.1.5-r3.ebuild: + stable on x86. + + 16 Jan 2005; Jason Wever mailman-2.1.5-r3.ebuild: + Stable on sparc wrt security bug #77524. + +*mailman-2.1.5-r3 (15 Jan 2005) + + 15 Jan 2005; Tuấn Văn + +files/mailman-2.1.5-driver.cvs.patch, +mailman-2.1.5-r3.ebuild: + revision bump to resolve bug #77524. + + 11 Nov 2004; Tuan Van mailman-2.1.5-r2.ebuild: + QA: illegal einfo/ewarn. Bug #70848. + + 08 Aug 2004; Jason Wever mailman-2.1.5-r2.ebuild: + Stable on sparc wrt bug #58918. + + 08 Aug 2004; Tom Martin mailman-2.1.5-r2.ebuild: + Stable on amd64 for bug 58918. + + 07 Aug 2004; Tuan Van mailman-2.1.5-r2.ebuild: + Do not run `check_perms_grsecurity.py -f` on regular system. + + 07 Aug 2004; Tuan Van mailman-2.1.5-r2.ebuild: + fix to get check_perms_grsecurity.py run. + +*mailman-2.1.5-r2 (28 Jul 2004) + + 28 Jul 2004; Tuan Van +mailman-2.1.5-r2.ebuild: + fix bug #58644. Revision bump. + + 27 Jul 2004; Tuan Van mailman-2.1.5-r1.ebuild: + switch to enew{group,user}. + add enew{group/user} to pkg_postinst wrt bug #58526. + + 22 Jul 2004; Tuan Van mailman-2.1.5-r1.ebuild: + stable on x86. + +*mailman-2.1.5-r1 (21 Jul 2004) + + 21 Jul 2004; Tuan Van + +files/mailman-2.1.5-directory-check.patch, +mailman-2.1.5-r1.ebuild: + Revision bump to resolve bug #53533, #56250. Thanks to Jim Ramsay + and Brian Harring . + + 10 Jul 2004; Danny van Dyk mailman-2.1.5.ebuild: + Marked ~amd64. + + 11 Jun 2004; Aron Griffis mailman-2.1.4.ebuild, + mailman-2.1.5.ebuild: + Fix use invocation + + 09 Jun 2004; Martin Holzer mailman-2.1.5.ebuild: + marking x86 stable. + + 01 Jun 2004; Jason Wever mailman-2.1.5.ebuild: + Marked stable on sparc wrt bug #51671. + + 01 Jun 2004; Martin Holzer mailman-2.1.5.ebuild: + added more keepdir and removed sed. + +*mailman-2.1.5 (31 May 2004) + + 31 May 2004; +mailman-2.1.5.ebuild: + Version bump for a security vulnerability; closes bug #52043. + + 14 May 2004; Luca Barbato mailman-2.1.4.ebuild: + Marked ~ppc + + 12 Mar 2004; Martin Holzer mailman-2.1.4.ebuild: + Correcting version in einfo. Closes bug #44464. + + 23 Feb 2004; Sven Blumenstein mailman-2.1.4.ebuild: + Stable on sparc. Thanks to Josh Grebe for testing! + + 31 Jan 2004; Martin Holzer files/mailman.rc: + adding -s option to start. Closes 34278. + + 10 Jan 2004; Martin Holzer mailman-2.1.4.ebuild: + typo in config_protection. doing needed keepdir to work + + 09 Jan 2004; Martin Holzer mailman-2.1.4.ebuild: + disabling python languages. Closes 34727 + + 08 Jan 2004; Martin Holzer files/README.gentoo: + updating readme. Closes 36725 + + 06 Jan 2004; Martin Holzer mailman-2.1.4.ebuild: + adding locks dir + +*mailman-2.1.4 (04 Jan 2004) + + 04 Jan 2004; Martin Holzer mailman-2.1.4.ebuild: + Version bumped. Closes 37208 + + 04 Jan 2004; Martin Holzer mailman-2.1.2-r1.ebuild, + mailman-2.1.2.ebuild, mailman-2.1.3.ebuild: + mailman has now home, but config_protect was not included. Closes 35536 + + 14 Dec 2003; mailman-2.1.1-r2.ebuild, + mailman-2.1.1-r3.ebuild, mailman-2.1.2-r1.ebuild, mailman-2.1.2.ebuild, + mailman-2.1.3.ebuild: + QA: fixing chown user.group to user:group, bug #35127 + +*mailman-2.1.3 (21 Nov 2003) + + 21 Nov 2003; Martin Holzer mailman-2.1.3.ebuild: + Version bumped. + + 20 Nov 2003; Martin Holzer mailman-2.1.2-r1.ebuild, + mailman-2.1.2.ebuild: + adding spam dir. Closes #31920 + +*mailman-2.1.2-r1 (30 Jul 2003) + + 30 Jul 2003; Nick Hadaway mailman-2.1.2-r1.ebuild, + files/README.gentoo: + Reworked the apache configuration steps in the readme and in the + ebuild. Revision bumped as there have been lots of changes since + 2.1.2 was initially added to portage. + + 26 Jul 2003; Nick Hadaway mailman-2.1.2.ebuild: + Removed invalid apache use flag and adjusted routines accordingly. + + 16 Jul 2003; Nick Hadaway mailman-2.1.2.ebuild: + Added apache and apache2 to IUSE and made pkg_config procedure + compatible with both installations types. + + 09 Jul 2003; Nick Hadaway files/README.gentoo: + Updated the readme to be a little more explicit and complete. + + 08 Jun 2003; Todd Berman mailman-2.1.1-r2.ebuild, + mailman-2.1.1-r3.ebuild, mailman-2.1.2.ebuild: + Fixed IUSE. (thanks again rac) + + 22 May 2003; Todd Berman mailman-2.1.2.ebuild: + Added INSTALL to documentation. Closed bug #18351 + +*mailman-2.1.2 (19 May 2003) + + 19 May 2003; Todd Berman mailman-2.1.1-r2.ebuild, + mailman-2.1.1-r3.ebuild, mailman-2.1.2.ebuild, files/README.gentoo, + files/mailman.2.1.1-r2.conf, files/mailman.2.1.1-r3.conf, + files/mailman.conf: + Version bump. Hopefully fixed install location issues. Hopefully fixed misc + issues with mailman install. (new install location is /usr/local/) + +*mailman-2.1.1-r3 (13 May 2003) + + 13 May 2003; Todd Berman mailman-2.1.1-r3.ebuild: + Changed install dir to /home/ instead of /var/. bumped r# + +*mailman-2.1.1-r2 (29 Apr 2003) + + 29 Apr 2003; Todd Berman mailman-2.1.1-r2.ebuild: + Changed mailman's gid to daemon to fix bug #19257. + +*mailman-2.1.1-r1 (18 Apr 2003) + + 18 Apr 2003; Martin Holzer Manifest, + mailman-2.1.1-r1.ebuild: + Adding contrib stuff. Closes #18425. + +*mailman-2.1.1 (17 Feb 2003) + + Daniel Ahlberg : + Security update. + +*mailman-2.1 (21 Jan 2003) + + 03 Feb 2003; Nick Hadaway mailman-2.1.ebuild, + files/sendmail.rc : + Added an rc file. + + 21 Jan 2003; Nick Hadaway mailman-2.1.ebuild, + files/digest-mailman-2.1 : + Version bump. Added some logic to keep the old mm_cfg.py as requested + in bug #12589 + +*mailman-2.0.12 (16 Jul 2002) + + 04 Jan 2002; Martin Holzer mailman-2.0.1.2.ebuild ChangeLog : + Fixed einfo text. This closes #13078. + + 16 Jul 2002; Ben Lutgens mailman-2.0.1.2.ebuild, + ChangeLog, files/digest-mailman-2.0.2.1, files/mailman.conf, + files/README.gentoo : + + Brand new package, based on submission by Joby Walker + diff --git a/net-mail/mailman/Manifest b/net-mail/mailman/Manifest new file mode 100644 index 00000000..88d5a4d2 --- /dev/null +++ b/net-mail/mailman/Manifest @@ -0,0 +1,14 @@ +AUX 50_mailman.conf 429 RMD160 54104453464b725adc18e5fb66bee265089013f6 SHA1 7b002917ae358587fc121f8c06c54c76dd0d9934 SHA256 8a93c5f9b2012122c6e85445620d5eb388e1bc38cb2102158bb62681cb61d3ec +AUX 50_mailman.conf-r1 592 RMD160 2f2be797205a63b728fe89a3367bbfb0e1f5d5dc SHA1 12a9d7276eb796c7512ece411a56f4b45f861a7d SHA256 4512a9dd6cba38a080654cbe172941a053fdc8b33afb65748d76716e9d00a029 +AUX README.gentoo-r2 5537 RMD160 8d753bb466666bac03ee4da4b7e35456d66dfec3 SHA1 f2702f1dbcab75397795b55883972a047b39463e SHA256 3809aa17e4e9a244cdf7c06af1605c3ce660329b0e279a93c4c3650b8d9ffa42 +AUX README.gentoo-r3 6804 RMD160 8885ce718cee4c1ff7fba103b6be314dfbf794c2 SHA1 343a4af9782136775fa3fe20d132d1e70b5468da SHA256 9db15d248be59d98f038718b50d5a02f08f5fc0870bf0f0ebec4c5d008c4e31b +AUX mailman-2.1.8_rc1-directory-check.patch 1287 RMD160 3bf6d1216a79a32d68340cb0df5db9b5f44a3931 SHA1 ad2b689ce7911b509f999cd849d0402c36ded97c SHA256 2d31eda834429a55edad1fea3c379ecb3e8f05c03fac82f172989caeab85314d +AUX mailman-2.1.9-fix-XSS.patch 11287 RMD160 b4dff793463c976cef7bdfe2cded986a8f7820ab SHA1 d01f299044ddaf8c0c6df53cb7b8ec73f3f183a4 SHA256 cd2ffb0e19dd12205d375f3c83b7d6a3177c0f3389bf15db37bce1e63e459307 +AUX mailman-2.1.9-icons.patch 555 RMD160 d0beb080e0dd4c753ce5e075b3c7db424b5474ef SHA1 786edc8b3ed11920aaaa23a8f3c0e4f9ae190a87 SHA256 cd78a7447febcbe1901144a190ef14cf9075b8055cc275e0405fc748f9c855f0 +AUX mailman-python2.6.patch 7094 RMD160 d854b5465331ccde122022d0dfb6174bdc677702 SHA1 c687cd2f485abfc348fc67e067a845e83d57956d SHA256 8f28e2c81865b71874768dafcc4e9d6548dd61998776d99f90dc9edb54018f75 +AUX mailman.conf 385 RMD160 bec3c71140385fa88078ffb38be14bfd8ec068c6 SHA1 64e15fce12231bac8e9a5dd831d9c4f134df77a1 SHA256 fdd86c4a72318ade5dfe0f075ce62470979f93d8a4c862993dc32e7bdb422eab +AUX mailman.rc 597 RMD160 be0a574298a1d8d547a4ca76f864dd5fee9b897d SHA1 f464f5ba7310934d300a9af7c614fdf7498f7d2b SHA256 ef4f5482cf68ba44a0fbb83acde29295bd8dcb6512d259d14387dfc29beeb625 +DIST mailman-2.1.11.tgz 7992229 RMD160 667297720aae9fef07600eab6fbf3d2cfc205c8b SHA1 068f1927f4d8dd0896b5064bdf6d102798491b72 SHA256 66f2e1d27b6d1f253a8ebbe218cacaab947e6b421f7513fbaea2314b24f06bda +EBUILD mailman-2.1.11.ebuild 5866 RMD160 3839dd8d7834488f9b6a4c01a96e45baf8eab58e SHA1 3428d2f48007b03fdacdee6b1355047020ded800 SHA256 1c569c8cf216adc43914b87616b21b04fa325e1c42794685c07990d163247601 +MISC ChangeLog 15386 RMD160 23fafa958971a8f6a195cacfdbc8721f6d93ab9f SHA1 e60358623d0cf2b76c58feb30f2947b659af65e3 SHA256 065c59baa40d3c83b4b1b465e8afa1d27593c759acb050cc616bfb97db141143 +MISC metadata.xml 218 RMD160 30759d93f0209fdd74f29393ae54999fe6b2bdff SHA1 486b307ff1dae10aef7d18472460a21bc2decdfb SHA256 09421ca1b9299683d07f68ddbbd3ed97251dac613121b420841a3251da7fcb89 diff --git a/net-mail/mailman/files/50_mailman.conf b/net-mail/mailman/files/50_mailman.conf new file mode 100644 index 00000000..dc076dab --- /dev/null +++ b/net-mail/mailman/files/50_mailman.conf @@ -0,0 +1,18 @@ + + ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/" + + + AllowOverride None + Options None + Order allow,deny + Allow from all + + + Alias /pipermail/ "/usr/local/mailman/archives/public/" + + AllowOverride None + Options ExecCGI FollowSymLinks + Order allow,deny + Allow from all + + diff --git a/net-mail/mailman/files/50_mailman.conf-r1 b/net-mail/mailman/files/50_mailman.conf-r1 new file mode 100644 index 00000000..82a23214 --- /dev/null +++ b/net-mail/mailman/files/50_mailman.conf-r1 @@ -0,0 +1,24 @@ + + ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/" + + AllowOverride None + Options None + Order allow,deny + Allow from all + + + Alias /pipermail/ "/usr/local/mailman/archives/public/" + + AllowOverride None + Options ExecCGI FollowSymLinks + Order allow,deny + Allow from all + + + Alias /mailman-icons/ "/usr/local/mailman/icons/" + + AllowOverride None + Order allow,deny + Allow from all + + diff --git a/net-mail/mailman/files/README.gentoo-r2 b/net-mail/mailman/files/README.gentoo-r2 new file mode 100644 index 00000000..5149b1fe --- /dev/null +++ b/net-mail/mailman/files/README.gentoo-r2 @@ -0,0 +1,149 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/files/README.gentoo-r2,v 1.1 2008/01/22 15:47:37 hanno Exp $ + +Follow these instructions to finish setting up mailman. This file and the +original ebuild were tweaked by me but were graciously +submitted by Joby Walker (YOU RULE!) +2003 Jul 09: updated by Jesus Perez and re-tweaked by me +for 2.1.x. + +Please view the documentation on Mailman at: http://www.list.org/ + +This documentation assumes you're using the default gentoo path +(/usr/lib/mailman/), if you've changed it with MAILMAN_PREFIX, adjust them +accordingly. + +1) If this is your first time installing mailman, after your "emerge mailman", +you need to add -D MAILMAN to /etc/conf.d/apache or /etc/conf.d/apache2 and restart +apache. + +2) In your /etc/conf.d/apache (for apache 1.x) + or /etc/conf.d/apache2 (for apache 2.x) + file add the additional option to the + APACHE_OPTS or APACHE2_OPTS variable: + + -D MAILMAN + +3) Make sure mailman is a part of the cron group + +4) This must be done as user mailman: + + su - mailman + +Add the cron jobs: + + cd cron + crontab crontab.in + cd .. + +Create the site password: + + bin/mmsitepass + +and main list: + + bin/newlist mailman + + +5) Change back to root: + + exit + +(Postfix users: read the notes at the end of this file before you continue) +Add this to /etc/mail/aliases (and see point 9 for notes): + mailman: "|/usr/lib/mailman/mail/mailman post mailman" + mailman-admin: "|/usr/lib/mailman/mail/mailman admin mailman" + mailman-bounces: "|/usr/lib/mailman/mail/mailman bounces mailman" + mailman-confirm: "|/usr/lib/mailman/mail/mailman confirm mailman" + mailman-join: "|/usr/lib/mailman/mail/mailman join mailman" + mailman-leave: "|/usr/lib/mailman/mail/mailman leave mailman" + mailman-owner: "|/usr/lib/mailman/mail/mailman owner mailman" + mailman-request: "|/usr/lib/mailman/mail/mailman request mailman" + mailman-subscribe: "|/usr/lib/mailman/mail/mailman subscribe mailman" + mailman-unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe mailman" + +For courier, the aliases have to go to /etc/courier/aliases and you have to skip +the quotes. + +Run newaliases (only if you use sendmail). + + newaliases + +Copy the web icons: + cp /usr/lib/mailman/icons/* /var/www/localhost/icons + +6) Start the mailman daemon: + + /etc/init.d/mailman start + +and add it to default runlevel (optional but recommended): + + rc-update add mailman default + +7) For each list created (either with web interface or with bin/newlist) +this must be added to /etc/mail/aliases (see smrsh notes below) +replace with the name of the list: + + : "|/usr/lib/mailman/mail/mailman post " + -admin: "|/usr/lib/mailman/mail/mailman admin " + -bounces: "|/usr/lib/mailman/mail/mailman bounces " + -confirm: "|/usr/lib/mailman/mail/mailman confirm " + -join: "|/usr/lib/mailman/mail/mailman join " + -leave: "|/usr/lib/mailman/mail/mailman leave " + -owner: "|/usr/lib/mailman/mail/mailman owner " + -request: "|/usr/lib/mailman/mail/mailman request " + -subscribe: "|/usr/lib/mailman/mail/mailman subscribe " + -unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe " + +For courier, the aliases have to go to /etc/courier/aliases and you have to skip +the quotes. + +Run newaliases: + + newaliases + +smrsh notes +----------- +(if you use sendmail, you are surely using srmsh) you must note that +sendmail won't run any program outside of EBINDIR. I tried to change +EBINDIR using,define(`confEBINDIR', `/usr/lib/mailman/mail')dnl in +sendmail.mc but it didn't work, so mailman must be placed in EBINDIR, +which in Gentoo is /usr/adm/sm.bin, so you must run as root: + + ln -s /usr/lib/mailman/mail/mailman /usr/adm/sm.bin/mailman + +And the lines in /etc/mail/aliases which refer to +/usr/lib/mailman/mail/mailman must be changed to mailman: + + : "|mailman post " + -admin: "|mailman admin " + -bounces: "|mailman bounces " + -confirm: "|mailman confirm " + -join: "|mailman join " + -leave: "|mailman leave " + -owner: "|mailman owner " + -request: "|mailman request " + -subscribe: "|mailman subscribe " + -unsubscribe: "|mailman unsubscribe " + + +Other Helpful things to know... +------------------------------- +run "bin/check_perms -f" from the root mailman directory +(/usr/lib/mailman) to check and fix permission problems. + +The INSTALL file is located in /usr/share/doc/mailman-$VERSION/ + +Postfix notes +------------- +If you're using Postfix, don't manually change your /etc/mail/aliases +file, as described above. Instead, follow these instructions: + +http://list.org/mailman-install/node13.html + +This will set up Mailman and Postfix to automatically generate the new +aliases when you create new lists. It will also make sure that Postfix +uses the correct group ID when it's talking to Mailman, otherwise you +will get security errors from Mailman. + diff --git a/net-mail/mailman/files/README.gentoo-r3 b/net-mail/mailman/files/README.gentoo-r3 new file mode 100644 index 00000000..e5e0e3bd --- /dev/null +++ b/net-mail/mailman/files/README.gentoo-r3 @@ -0,0 +1,182 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/files/README.gentoo-r3,v 1.2 2008/11/14 11:07:55 hanno Exp $ + +Follow these instructions to finish setting up mailman. This file and the +original ebuild were tweaked by me but were graciously +submitted by Joby Walker (YOU RULE!) +2003 Jul 09: updated by Jesus Perez and re-tweaked by me +for 2.1.x. + +Please view the documentation on Mailman at: http://www.list.org/ + +This documentation assumes you're using the default gentoo path +(/usr/lib/mailman/), if you've changed it with MAILMAN_PREFIX, adjust them +accordingly. + +1) If this is your first time installing mailman, after your "emerge mailman", +you need to add -D MAILMAN to /etc/conf.d/apache or /etc/conf.d/apache2 and restart +apache. + +2) In your /etc/conf.d/apache (for apache 1.x) + or /etc/conf.d/apache2 (for apache 2.x) + file add the additional option to the + APACHE_OPTS or APACHE2_OPTS variable: + + -D MAILMAN + +3) Make sure mailman is a part of the cron group + +4) This must be done as user mailman: + + su - mailman + +Add the cron jobs: + + cd cron + crontab crontab.in + cd .. + +Create the site password: + + bin/mmsitepass + +and main list: + + bin/newlist mailman + + +5) Change back to root: + + exit + +(Postfix users: read the notes at the end of this file before you continue) +Add this to /etc/mail/aliases (and see point 9 for notes): + mailman: "|/usr/lib/mailman/mail/mailman post mailman" + mailman-admin: "|/usr/lib/mailman/mail/mailman admin mailman" + mailman-bounces: "|/usr/lib/mailman/mail/mailman bounces mailman" + mailman-confirm: "|/usr/lib/mailman/mail/mailman confirm mailman" + mailman-join: "|/usr/lib/mailman/mail/mailman join mailman" + mailman-leave: "|/usr/lib/mailman/mail/mailman leave mailman" + mailman-owner: "|/usr/lib/mailman/mail/mailman owner mailman" + mailman-request: "|/usr/lib/mailman/mail/mailman request mailman" + mailman-subscribe: "|/usr/lib/mailman/mail/mailman subscribe mailman" + mailman-unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe mailman" + +For courier, the aliases have to go to /etc/courier/aliases and you have to skip +the quotes. + +Run newaliases (only if you use sendmail). + + newaliases + +6) Start the mailman daemon: + + /etc/init.d/mailman start + +and add it to default runlevel (optional but recommended): + + rc-update add mailman default + +7) For each list created (either with web interface or with bin/newlist) +this must be added to /etc/mail/aliases (see smrsh notes below) +replace with the name of the list: + + : "|/usr/lib/mailman/mail/mailman post " + -admin: "|/usr/lib/mailman/mail/mailman admin " + -bounces: "|/usr/lib/mailman/mail/mailman bounces " + -confirm: "|/usr/lib/mailman/mail/mailman confirm " + -join: "|/usr/lib/mailman/mail/mailman join " + -leave: "|/usr/lib/mailman/mail/mailman leave " + -owner: "|/usr/lib/mailman/mail/mailman owner " + -request: "|/usr/lib/mailman/mail/mailman request " + -subscribe: "|/usr/lib/mailman/mail/mailman subscribe " + -unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe " + +For courier, the aliases have to go to /etc/courier/aliases and you have to skip +the quotes. + +Run newaliases: + + newaliases + +smrsh notes +----------- +(if you use sendmail, you are surely using srmsh) you must note that +sendmail won't run any program outside of EBINDIR. I tried to change +EBINDIR using,define(`confEBINDIR', `/usr/lib/mailman/mail')dnl in +sendmail.mc but it didn't work, so mailman must be placed in EBINDIR, +which in Gentoo is /usr/adm/sm.bin, so you must run as root: + + ln -s /usr/lib/mailman/mail/mailman /usr/adm/sm.bin/mailman + +And the lines in /etc/mail/aliases which refer to +/usr/lib/mailman/mail/mailman must be changed to mailman: + + : "|mailman post " + -admin: "|mailman admin " + -bounces: "|mailman bounces " + -confirm: "|mailman confirm " + -join: "|mailman join " + -leave: "|mailman leave " + -owner: "|mailman owner " + -request: "|mailman request " + -subscribe: "|mailman subscribe " + -unsubscribe: "|mailman unsubscribe " + +exim notes +---------- +You can write an exim stanza for the router and transport that looks something +like (Derived from, and in part taken from cpanel): + +mailman_virtual_router: + driver = accept + require_files = /var/lib/mailman/lists/${lc::$local_part}/config.pck + local_part_suffix_optional + local_part_suffix = -admin : \ + -bounces : -bounces+* : \ + -confirm : -confirm+* : \ + -join : -leave : \ + -owner : -request : \ + -subscribe : -unsubscribe + transport = mailman_virtual_transport + +mailman_virtual_transport: + driver = pipe + command = /usr/lib/mailman/mail/mailman \ + '${if def:local_part_suffix \ + {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \ + {post}}' \ + ${lc:$local_part} + current_directory = /usr/lib/mailman + home_directory = /usr/lib/mailman + user = mailman + group = mailman + +Note the double colon in the require files. See +http://wiki.exim.org/FAQ/General_Debugging/Q0060 for more information. + +This should be modified if you're using the vhosts USE flag, specifically you +need to modify the location of the config.pck file, to be +${lc::$local_part}-${lc::$domain} instead of simply ${lc::$local_part}, and for the +transport you need to change the last part of the command in the same fashion. + +Other Helpful things to know... +------------------------------- +run "bin/check_perms -f" from the root mailman directory +(/usr/lib/mailman) to check and fix permission problems. + +The INSTALL file is located in /usr/share/doc/mailman-$VERSION/ + +Postfix notes +------------- +If you're using Postfix, don't manually change your /etc/mail/aliases +file, as described above. Instead, follow these instructions: + +http://list.org/mailman-install/node13.html + +This will set up Mailman and Postfix to automatically generate the new +aliases when you create new lists. It will also make sure that Postfix +uses the correct group ID when it's talking to Mailman, otherwise you +will get security errors from Mailman. + diff --git a/net-mail/mailman/files/mailman-2.1.8_rc1-directory-check.patch b/net-mail/mailman/files/mailman-2.1.8_rc1-directory-check.patch new file mode 100644 index 00000000..d8542fcf --- /dev/null +++ b/net-mail/mailman/files/mailman-2.1.8_rc1-directory-check.patch @@ -0,0 +1,30 @@ +--- bin/check_perms.org 2005-05-25 00:04:15.000000000 +0200 ++++ bin/check_perms 2005-05-25 00:04:35.000000000 +0200 +@@ -331,6 +331,8 @@ + print _('checking permissions on list data') + # BAW: This needs to be converted to the Site module abstraction + for dir in os.listdir(mm_cfg.LIST_DATA_DIR): ++ if not S_ISDIR(statmode(os.path.join(mm_cfg.LIST_DATA_DIR,dir))): ++ continue + for file in checkfiles: + path = os.path.join(mm_cfg.LIST_DATA_DIR, dir, file) + if STATE.VERBOSE: +--- bin/update.org 2005-05-25 00:04:30.000000000 +0200 ++++ bin/update 2005-05-25 00:04:35.000000000 +0200 +@@ -34,6 +34,7 @@ + """ + + import os ++import stat + import md5 + import sys + import time +@@ -425,7 +426,7 @@ + # Now update for the Mailman 2.1.5 qfile format. For every filebase in + # the qfiles/* directories that has both a .pck and a .db file, pull the + # data out and re-queue them. +- for dirname in os.listdir(mm_cfg.QUEUE_DIR): ++ for dirname in [x for x in os.listdir(mm_cfg.QUEUE_DIR) if stat.S_ISDIR(os.stat(os.path.join(mm_cfg.QUEUE_DIR,x)).st_mode)]: + dirpath = os.path.join(mm_cfg.QUEUE_DIR, dirname) + if dirpath == mm_cfg.BADQUEUE_DIR: + # The files in qfiles/bad can't possibly be pickles diff --git a/net-mail/mailman/files/mailman-2.1.9-fix-XSS.patch b/net-mail/mailman/files/mailman-2.1.9-fix-XSS.patch new file mode 100644 index 00000000..b80c50dc --- /dev/null +++ b/net-mail/mailman/files/mailman-2.1.9-fix-XSS.patch @@ -0,0 +1,275 @@ +=== modified file 'Mailman/Cgi/edithtml.py' +--- Mailman/Cgi/edithtml.py 2006-08-30 14:54:22 +0000 ++++ Mailman/Cgi/edithtml.py 2007-12-04 19:52:18 +0000 +@@ -1,4 +1,4 @@ +-# Copyright (C) 1998-2006 by the Free Software Foundation, Inc. ++# Copyright (C) 1998-2007 by the Free Software Foundation, Inc. + # + # This program is free software; you can redistribute it and/or + # modify it under the terms of the GNU General Public License +@@ -159,7 +159,20 @@ + doc.AddItem('
') + return + code = cgi_info['html_code'].value +- code = re.sub(r'<([/]?script.*?)>', r'<\1>', code) ++ if Utils.suspiciousHTML(code): ++ doc.AddItem(Header(3, ++ _("""The page you saved contains suspicious HTML that could ++potentially expose your users to cross-site scripting attacks. This change ++has therefore been rejected. If you still want to make these changes, you ++must have shell access to your Mailman server. ++ """))) ++ doc.AddItem(_('See ')) ++ doc.AddItem(Link( ++'http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq04.048.htp', ++ _('FAQ 4.48.'))) ++ doc.AddItem(Header(3,_("Page Unchanged."))) ++ doc.AddItem('
') ++ return + langdir = os.path.join(mlist.fullpath(), mlist.preferred_language) + # Make sure the directory exists + omask = os.umask(0) + +=== modified file 'Mailman/Gui/General.py' +--- Mailman/Gui/General.py 2006-08-30 14:54:22 +0000 ++++ Mailman/Gui/General.py 2007-12-04 19:52:18 +0000 +@@ -1,4 +1,4 @@ +-# Copyright (C) 2001-2006 by the Free Software Foundation, Inc. ++# Copyright (C) 2001-2007 by the Free Software Foundation, Inc. + # + # This program is free software; you can redistribute it and/or + # modify it under the terms of the GNU General Public License +@@ -436,17 +442,21 @@ + # Convert any html entities to Unicode + mlist.subject_prefix = Utils.canonstr( + val, mlist.preferred_language) ++ elif property == 'info': ++ if val <> mlist.info: ++ if Utils.suspiciousHTML(val): ++ doc.addError(_("""The info attribute you saved ++contains suspicious HTML that could potentially expose your users to cross-site ++scripting attacks. This change has therefore been rejected. If you still want ++to make these changes, you must have shell access to your Mailman server. ++This change can be made with bin/withlist or with bin/config_list by setting ++mlist.info. ++ """)) ++ else: ++ mlist.info = val + else: + GUIBase._setValue(self, mlist, property, val, doc) + +- def _escape(self, property, value): +- # The 'info' property allows HTML, but let's sanitize it to avoid XSS +- # exploits. Everything else should be fully escaped. +- if property <> 'info': +- return GUIBase._escape(self, property, value) +- # Sanitize tags but nothing else. Not the best +- # solution, but expedient. +- return re.sub(r'(?i)<([/]?script.*?)>', r'<\1>', value) + + def _postValidate(self, mlist, doc): + if not mlist.reply_to_address.strip() and \ + +=== modified file 'Mailman/Gui/GUIBase.py' +--- Mailman/Gui/GUIBase.py 2005-08-27 01:40:17 +0000 ++++ Mailman/Gui/GUIBase.py 2007-11-18 20:01:26 +0000 +@@ -1,4 +1,4 @@ +-# Copyright (C) 2002-2004 by the Free Software Foundation, Inc. ++# Copyright (C) 2002-2007 by the Free Software Foundation, Inc. + # + # This program is free software; you can redistribute it and/or + # modify it under the terms of the GNU General Public License +@@ -12,7 +12,8 @@ + # + # You should have received a copy of the GNU General Public License + # along with this program; if not, write to the Free Software +-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, ++# USA. + + """Base class for all web GUI components.""" + +@@ -122,10 +127,6 @@ + # Validate all the attributes for this category + pass + +- def _escape(self, property, value): +- value = value.replace('<', '<') +- return value +- + def handleForm(self, mlist, category, subcat, cgidata, doc): + for item in self.GetConfigInfo(mlist, category, subcat): + # Skip descriptions and legacy non-attributes +@@ -144,10 +145,9 @@ + elif not cgidata.has_key(property): + continue + elif isinstance(cgidata[property], ListType): +- val = [self._escape(property, x.value) +- for x in cgidata[property]] ++ val = [x.value for x in cgidata[property]] + else: +- val = self._escape(property, cgidata[property].value) ++ val = cgidata[property].value + # Coerce the value to the expected type, raising exceptions if the + # value is invalid. + try: + +=== modified file 'Mailman/Utils.py' +--- Mailman/Utils.py 2007-11-25 08:04:30 +0000 ++++ Mailman/Utils.py 2007-12-04 19:52:18 +0000 +@@ -876,3 +876,154 @@ + except (LookupError, UnicodeError, ValueError, HeaderParseError): + # possibly charset problem. return with undecoded string in one line. + return EMPTYSTRING.join(s.splitlines()) ++ ++ ++# Patterns and functions to flag possible XSS attacks in HTML. ++# This list is compiled from information at http://ha.ckers.org/xss.html, ++# http://www.quirksmode.org/js/events_compinfo.html, ++# http://www.htmlref.com/reference/appa/events1.htm, ++# http://lxr.mozilla.org/mozilla/source/content/events/src/nsDOMEvent.cpp#59, ++# http://www.w3.org/TR/DOM-Level-2-Events/events.html and ++# http://www.xulplanet.com/references/elemref/ref_EventHandlers.html ++# Many thanks are due to Moritz Naumann for his assistance with this. ++_badwords = [ ++ ' 'multipart/mixed': ++ if msg.get_content_type() <> 'multipart/mixed': + return None + # simple state machine + # 0 == nothing seen +diff -ur mailman-2.1.11/Mailman/Bouncers/GroupWise.py mailman-2.1.11-py26/Mailman/Bouncers/GroupWise.py +--- mailman-2.1.11/Mailman/Bouncers/GroupWise.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/Bouncers/GroupWise.py 2008-10-15 13:29:26.000000000 +0200 +@@ -30,7 +30,7 @@ + + + def find_textplain(msg): +- if msg.get_type(msg.get_default_type()) == 'text/plain': ++ if msg.get_content_type(msg.get_default_type()) == 'text/plain': + return msg + if msg.is_multipart: + for part in msg.get_payload(): +@@ -44,7 +44,7 @@ + + + def process(msg): +- if msg.get_type() <> 'multipart/mixed' or not msg['x-mailer']: ++ if msg.get_content_type() <> 'multipart/mixed' or not msg['x-mailer']: + return None + if msg['x-mailer'][:3].lower() not in ('nov', 'ntm', 'int'): + return None +diff -ur mailman-2.1.11/Mailman/Bouncers/Microsoft.py mailman-2.1.11-py26/Mailman/Bouncers/Microsoft.py +--- mailman-2.1.11/Mailman/Bouncers/Microsoft.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/Bouncers/Microsoft.py 2008-10-15 13:29:52.000000000 +0200 +@@ -25,7 +25,7 @@ + + + def process(msg): +- if msg.get_type() <> 'multipart/mixed': ++ if msg.get_content_type() <> 'multipart/mixed': + return None + # Find the first subpart, which has no MIME type + try: +diff -ur mailman-2.1.11/Mailman/Bouncers/Netscape.py mailman-2.1.11-py26/Mailman/Bouncers/Netscape.py +--- mailman-2.1.11/Mailman/Bouncers/Netscape.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/Bouncers/Netscape.py 2008-10-15 13:30:04.000000000 +0200 +@@ -61,7 +61,7 @@ + leaves = [] + flatten(msg, leaves) + for i, subpart in zip(range(len(leaves)-1), leaves): +- if subpart.get_type() == 'text/plain': ++ if subpart.get_content_type() == 'text/plain': + plainmsg = subpart + break + if not plainmsg: +diff -ur mailman-2.1.11/Mailman/Bouncers/Postfix.py mailman-2.1.11-py26/Mailman/Bouncers/Postfix.py +--- mailman-2.1.11/Mailman/Bouncers/Postfix.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/Bouncers/Postfix.py 2008-10-15 13:29:01.000000000 +0200 +@@ -71,14 +71,14 @@ + + + def process(msg): +- if msg.get_type() not in ('multipart/mixed', 'multipart/report'): ++ if msg.get_content_type() not in ('multipart/mixed', 'multipart/report'): + return None + # We're looking for the plain/text subpart with a Content-Description: of + # `notification'. + leaves = [] + flatten(msg, leaves) + for subpart in leaves: +- if subpart.get_type() == 'text/plain' and \ ++ if subpart.get_content_type() == 'text/plain' and \ + subpart.get('content-description', '').lower() == 'notification': + # then... + return findaddr(subpart) +diff -ur mailman-2.1.11/Mailman/Handlers/Decorate.py mailman-2.1.11-py26/Mailman/Handlers/Decorate.py +--- mailman-2.1.11/Mailman/Handlers/Decorate.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/Handlers/Decorate.py 2008-10-15 13:30:23.000000000 +0200 +@@ -130,7 +130,7 @@ + wrap = False + except (LookupError, UnicodeError): + pass +- elif msg.get_type() == 'multipart/mixed': ++ elif msg.get_content_type() == 'multipart/mixed': + # The next easiest thing to do is just prepend the header and append + # the footer as additional subparts + payload = msg.get_payload() +diff -ur mailman-2.1.11/Mailman/Handlers/Scrubber.py mailman-2.1.11-py26/Mailman/Handlers/Scrubber.py +--- mailman-2.1.11/Mailman/Handlers/Scrubber.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/Handlers/Scrubber.py 2008-10-15 13:26:42.000000000 +0200 +@@ -189,7 +189,7 @@ + # Now walk over all subparts of this message and scrub out various types + format = delsp = None + for part in msg.walk(): +- ctype = part.get_type(part.get_default_type()) ++ ctype = part.get_content_type() + # If the part is text/plain, we leave it alone + if ctype == 'text/plain': + # We need to choose a charset for the scrubbed message, so we'll +@@ -300,7 +300,7 @@ + # will transform the url into a hyperlink. + elif part.get_payload() and not part.is_multipart(): + payload = part.get_payload(decode=True) +- ctype = part.get_type() ++ ctype = part.get_content_type() + # XXX Under email 2.5, it is possible that payload will be None. + # This can happen when you have a Content-Type: multipart/* with + # only one part and that part has two blank lines between the +diff -ur mailman-2.1.11/Mailman/Handlers/Tagger.py mailman-2.1.11-py26/Mailman/Handlers/Tagger.py +--- mailman-2.1.11/Mailman/Handlers/Tagger.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/Handlers/Tagger.py 2008-10-15 13:30:37.000000000 +0200 +@@ -69,11 +69,11 @@ + # or if the outer type is multipart/alternative and there is a text/plain + # part. Anything else, and the body is ignored for header-scan purposes. + found = None +- if msg.get_type('text/plain') == 'text/plain': ++ if msg.get_content_type('text/plain') == 'text/plain': + found = msg +- elif msg.is_multipart() and msg.get_type() == 'multipart/alternative': ++ elif msg.is_multipart() and msg.get_content_type() == 'multipart/alternative': + for found in msg.get_payload(): +- if found.get_type('text/plain') == 'text/plain': ++ if found.get_content_type('text/plain') == 'text/plain': + break + else: + found = None +diff -ur mailman-2.1.11/Mailman/SecurityManager.py mailman-2.1.11-py26/Mailman/SecurityManager.py +--- mailman-2.1.11/Mailman/SecurityManager.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/SecurityManager.py 2008-10-15 12:55:04.000000000 +0200 +@@ -49,6 +49,11 @@ + + import os + import re ++ ++from warnings import filterwarnings ++filterwarnings('ignore', '.* sha module', DeprecationWarning) ++filterwarnings('ignore', '.* md5 module', DeprecationWarning) ++ + import sha + import time + import Cookie +diff -ur mailman-2.1.11/Mailman/Utils.py mailman-2.1.11-py26/Mailman/Utils.py +--- mailman-2.1.11/Mailman/Utils.py 2008-06-30 18:29:46.000000000 +0200 ++++ mailman-2.1.11-py26/Mailman/Utils.py 2008-10-15 12:47:17.000000000 +0200 +@@ -28,6 +28,10 @@ + + import os + import re ++ ++from warnings import filterwarnings ++filterwarnings('ignore', '.* sha module', DeprecationWarning) ++ + import cgi + import sha + import time diff --git a/net-mail/mailman/files/mailman.conf b/net-mail/mailman/files/mailman.conf new file mode 100644 index 00000000..4d8facd1 --- /dev/null +++ b/net-mail/mailman/files/mailman.conf @@ -0,0 +1,17 @@ +ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/" + + + AllowOverride None + Options None + Order allow,deny + Allow from all + + +Alias /pipermail/ "/usr/local/mailman/archives/public/" + + + AllowOverride None + Options ExecCGI FollowSymLinks + Order allow,deny + Allow from all + diff --git a/net-mail/mailman/files/mailman.rc b/net-mail/mailman/files/mailman.rc new file mode 100644 index 00000000..bc5a6886 --- /dev/null +++ b/net-mail/mailman/files/mailman.rc @@ -0,0 +1,27 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/files/mailman.rc,v 1.5 2004/07/14 23:50:52 agriffis Exp $ + +depend() { + need net + use logger +} + +start() { + ebegin "Starting mailman" + su - mailman -c 'bin/mailmanctl -s start' >/dev/null 2>&1 + eend $? +} + +stop() { + ebegin "Stopping mailman" + su - mailman -c 'bin/mailmanctl stop' >/dev/null 2>&1 + eend $? +} + +svc_restart() { + ebegin "Restarting mailman" + su - mailman -c 'bin/mailmanctl restart' >/dev/null 2>&1 + eend $? +} diff --git a/net-mail/mailman/mailman-2.1.11.ebuild b/net-mail/mailman/mailman-2.1.11.ebuild new file mode 100644 index 00000000..0beca3da --- /dev/null +++ b/net-mail/mailman/mailman-2.1.11.ebuild @@ -0,0 +1,160 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/mailman-2.1.11.ebuild,v 1.4 2008/08/15 15:26:26 nixnut Exp $ + +inherit eutils python multilib + +DESCRIPTION="A python-based mailing list server with an extensive web interface" +SRC_URI="mirror://sourceforge/${PN}/${P}.tgz" +HOMEPAGE="http://www.list.org/" + +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="amd64 ppc sparc x86" +IUSE="" + +DEPEND=">=dev-lang/python-2.3 + virtual/mta + virtual/cron + virtual/httpd-cgi" + +pkg_setup() { + INSTALLDIR=${MAILMAN_PREFIX:-"/usr/$(get_libdir)/mailman"} + VAR_PREFIX=${MAILMAN_VAR_PREFIX:-"/var/lib/mailman"} + CGIUID=${MAILMAN_CGIUID:-apache} + CGIGID=${MAILMAN_CGIGID:-apache} + MAILUSR=${MAILMAN_MAILUSR:-mailman} + MAILUID=${MAILMAN_MAILUID:-280} + MAILGRP=${MAILMAN_MAILGRP:-mailman} + MAILGID=${MAILMAN_MAILGID:-280} + + # Bug #58526: switch to enew{group,user}. + # need to add mailman here for compile process. + # Duplicated at pkg_postinst() for binary install. + enewgroup ${MAILGRP} ${MAILGID} + enewuser ${MAILUSR} ${MAILUID} /bin/bash ${INSTALLDIR} mailman -G cron -c "mailman" +} + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}/${PN}-2.1.8_rc1-directory-check.patch" || die "patch failed." + epatch "${FILESDIR}/${PN}-2.1.9-icons.patch" || die "patch failed." + epatch "${FILESDIR}/${PN}-python2.6.patch" || die "patch failed." +} + +src_compile() { + econf --without-permcheck \ + --prefix="${INSTALLDIR}" \ + --with-mail-gid=${MAILGID} \ + --with-cgi-gid=${CGIGID} \ + --with-cgi-ext="${MAILMAN_CGIEXT}" \ + --with-var-prefix="${VAR_PREFIX}" \ + --with-username=${MAILUSR} \ + --with-groupname=${MAILGRP} \ + || die "configure failed" + + emake || die "make failed" +} + +src_install () { + emake "DESTDIR=${D}" doinstall || die + + insinto /etc/apache2/modules.d + newins "${FILESDIR}/50_mailman.conf-r1" 50_mailman.conf + dosed "s:/usr/local/mailman/cgi-bin:${INSTALLDIR}/cgi-bin:g" /etc/apache2/modules.d/50_mailman.conf + dosed "s:/usr/local/mailman/icons:${INSTALLDIR}/icons:g" /etc/apache2/modules.d/50_mailman.conf + dosed "s:/usr/local/mailman/archives:${VAR_PREFIX}/archives:g" /etc/apache2/modules.d/50_mailman.conf + + newdoc "${FILESDIR}/README.gentoo-r3" README.gentoo || die "newdoc failed" + + dodoc ACK* BUGS FAQ NEWS README* TODO UPGRADING INSTALL contrib/mailman.mc \ + contrib/README.check_perms_grsecurity contrib/virtusertable || die "dodoc failed" + + exeinto ${INSTALLDIR}/bin + doexe build/contrib/*.py contrib/majordomo2mailman.pl contrib/auto \ + contrib/mm-handler* || die + + dodir /etc/mailman + mv "${D}/${INSTALLDIR}/Mailman/mm_cfg.py" "${D}/etc/mailman" + dosym /etc/mailman/mm_cfg.py ${INSTALLDIR}/Mailman/mm_cfg.py + + # Save the old config for updates from pre-2.1.9-r2 + # To be removed some distant day + for i in /var/mailman /home/mailman /usr/local/mailman ${INSTALLDIR} + do + if [ -f ${i}/Mailman/mm_cfg.py ] && ! [ -L ${i}/Mailman/mm_cfg.py ]; then + cp ${i}/Mailman/mm_cfg.py "${D}/etc/mailman/mm_cfg.py" + fi + done + + newinitd "${FILESDIR}/mailman.rc" mailman + + keepdir ${VAR_PREFIX}/logs + keepdir ${VAR_PREFIX}/locks + keepdir ${VAR_PREFIX}/spam + keepdir ${VAR_PREFIX}/archives/public + keepdir ${VAR_PREFIX}/archives/private + keepdir ${VAR_PREFIX}/lists + keepdir ${VAR_PREFIX}/qfiles + + chown -R ${MAILUSR}:${MAILGRP} "${D}/${VAR_PREFIX}" "${D}/${INSTALLDIR}" "${D}"/etc/mailman/* + chown ${CGIUID}:${MAILGRP} "${D}/${VAR_PREFIX}/archives/private" + chmod 2775 "${D}/${INSTALLDIR}" "${D}/${INSTALLDIR}"/templates/* \ + "${D}/${INSTALLDIR}"/messages/* "${D}/${VAR_PREFIX}" "${D}/${VAR_PREFIX}"/{logs,lists,spam,locks,archives/public} + chmod 2770 "${D}/${VAR_PREFIX}/archives/private" + chmod 2770 "${D}/${VAR_PREFIX}/qfiles" + chmod 2755 "${D}/${INSTALLDIR}"/cgi-bin/* "${D}/${INSTALLDIR}/mail/mailman" + +} + +pkg_postinst() { + python_mod_optimize ${INSTALLDIR}/bin/ ${INSTALLDIR}/Mailman + + enewgroup ${MAILGRP} ${MAILGID} + enewuser ${MAILUSR} ${MAILUID} -1 ${INSTALLDIR} mailman -G cron -c "mailman" + elog + elog "Please read /usr/share/doc/${PF}/README.gentoo.bz2 for additional" + elog "Setup information, mailman will NOT run unless you follow" + elog "those instructions!" + elog + + elog "An example Mailman configuration file for Apache has been installed into:" + elog " ${APACHE2_MODULES_CONFDIR}/50_mailman.conf" + elog + elog "To enable, you will need to add \"-D MAILMAN\" to" + elog "/etc/conf.d/apache2." + elog + + ewarn "Default-Configuration has changed deeply in 2.1.9-r2. You can configure" + ewarn "mailman with the following variables:" + ewarn "MAILMAN_PREFIX (default: /usr/$(get_libdir)/mailman)" + ewarn "MAILMAN_VAR_PREFIX (default: /var/lib/mailman)" + ewarn "MAILMAN_CGIUID (default: apache)" + ewarn "MAILMAN_CGIGID (default: apache)" + ewarn "MAILMAN_CGIEXT (default: empty)" + ewarn "MAILMAN_MAILUSR (default: mailman)" + ewarn "MAILMAN_MAILUID (default: 280)" + ewarn "MAILMAN_MAILGRP (default: mailman)" + ewarn "MAILMAN_MAILGID (default: 280)" + ewarn + ewarn "Config file is now symlinked in /etc/mailman, so etc-update works." + ewarn + ewarn "If you're upgrading from below 2.1.9-r2 or changed MAILMAN_PREFIX, you" + ewarn "NEED to make a few manual updates to your system:" + ewarn + ewarn "1. Update your mailman users's home directory: usermod -d ${INSTALLDIR} mailman" + ewarn "2. Re-import the crontab: su - mailman -c 'crontab cron/crontab.in'" + ewarn "3. Copy your old mm_cfg.py file to /etc/mailman/mm_cfg.py" + ewarn + ewarn "Additionally if you've modified MAILMAN_VAR_PREFIX (or upgraded from" + ewarn "a pre 2.1.9-r2 installation), you should move your old lists/ and" + ewarn "archives/ directory to the new location, ensuring that the" + ewarn "permissions is correct. See bug #208789 for a discussion." + ebeep +} + +pkg_postrm() { + INSTALLDIR=${MAILMAN_PREFIX:-"/usr/$(get_libdir)/mailman"} + python_mod_cleanup ${INSTALLDIR}/bin ${INSTALLDIR}/Mailman +} diff --git a/net-mail/mailman/metadata.xml b/net-mail/mailman/metadata.xml new file mode 100644 index 00000000..b507dbb0 --- /dev/null +++ b/net-mail/mailman/metadata.xml @@ -0,0 +1,6 @@ + + + +net-mail +hanno@gentoo.org +