summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenedikt Boehm <hollow@gentoo.org>2009-07-05 16:43:16 +0000
committerBenedikt Boehm <hollow@gentoo.org>2009-07-05 16:43:16 +0000
commit9d3bf19060cb7fc0307c37689a90aac66d64fddf (patch)
tree2c67f3b8edf1eb0ad7ca91376542388315f4fa3c /www-apache/mod_perl
parentFix dependency (boot needs python useflag), switch to EAPI-2 (diff)
downloadhistorical-9d3bf19060cb7fc0307c37689a90aac66d64fddf.tar.gz
historical-9d3bf19060cb7fc0307c37689a90aac66d64fddf.tar.bz2
historical-9d3bf19060cb7fc0307c37689a90aac66d64fddf.zip
fix #266035
Package-Manager: portage-2.2_rc33/cvs/Linux i686
Diffstat (limited to 'www-apache/mod_perl')
-rw-r--r--www-apache/mod_perl/ChangeLog9
-rw-r--r--www-apache/mod_perl/Manifest5
-rw-r--r--www-apache/mod_perl/files/CVE-2009-0796.patch47
-rw-r--r--www-apache/mod_perl/mod_perl-2.0.4-r1.ebuild (renamed from www-apache/mod_perl/mod_perl-2.0.3-r1.ebuild)91
4 files changed, 90 insertions, 62 deletions
diff --git a/www-apache/mod_perl/ChangeLog b/www-apache/mod_perl/ChangeLog
index 930f597af594..220a43e5128c 100644
--- a/www-apache/mod_perl/ChangeLog
+++ b/www-apache/mod_perl/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for www-apache/mod_perl
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-apache/mod_perl/ChangeLog,v 1.70 2009/05/26 17:52:59 arfrever Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-apache/mod_perl/ChangeLog,v 1.71 2009/07/05 16:43:16 hollow Exp $
+
+*mod_perl-2.0.4-r1 (05 Jul 2009)
+
+ 05 Jul 2009; Benedikt Böhm <hollow@gentoo.org>
+ +files/CVE-2009-0796.patch, -mod_perl-2.0.3-r1.ebuild,
+ +mod_perl-2.0.4-r1.ebuild:
+ fix #266035
26 May 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
mod_perl-2.0.3-r1.ebuild:
diff --git a/www-apache/mod_perl/Manifest b/www-apache/mod_perl/Manifest
index 46c6319a67c2..a97398796861 100644
--- a/www-apache/mod_perl/Manifest
+++ b/www-apache/mod_perl/Manifest
@@ -1,11 +1,12 @@
AUX 2.0.3/75_mod_perl.conf 1221 RMD160 5fe4dee7d3123be5f3cd8cd41bb54fd1b63f0328 SHA1 068bf3f674a13e1db51046851a837ee7501353b7 SHA256 e7c2f4b84e9c9fc73e421740736f67674ebc7e7f13f8b2f71c9360f746fd441a
AUX 2.0.3/apache2-mod_perl-startup.pl 478 RMD160 ef12070dd5e5707286e3c714ec3aeae78ce5cfd4 SHA1 80ece64910771b6c36d7b2d30373287bc1bf4b87 SHA256 f77741fb3bb18928fb15f95c6908a17d8f06d7efbb6785e0732f201347e26544
+AUX CVE-2009-0796.patch 1284 RMD160 b46e62380f82f7a05d62e9b65ae4c7d72a03aa8a SHA1 b4d79f705d6148b4cae34f05a4e01248839f8e72 SHA256 2ef34be0541cf9866d0af551e54d062c9c62d0e0f155d206bc710a3d125004d5
AUX RegistryCooker.patch 1226 RMD160 21c434c214e1d6104a7aafd2330cbc70c717f768 SHA1 be4887aa6ba38a8cba5f1ceff1ccdd69e539a44c SHA256 f0d3e610cdac459de535143acf1f9a2a319327f9f956455a5279b02915e4a637
AUX mod_perl-2.0.1-sneak-tmpdir.patch 337 RMD160 56c6023dc46bb5531fa44730f52b68b8333155f0 SHA1 96b2a385e5934d99222de545836329ea359b8115 SHA256 1f319a15e3d12a349c46c0783c7ad840d81d01ed41adda55c47d4ac31595615d
DIST mod_perl-2.0.3.tar.gz 3714974 RMD160 29662a131c1bef6e4adc551d4467d12931a4d919 SHA1 e5d8b3cd7273c284cfbd79acb953ce179322bdc9 SHA256 df257f233ed6a5c9f8589d6e059563f816bf417f164fc3364a2a434de13045f2
DIST mod_perl-2.0.4.tar.gz 3727717 RMD160 111b8f33e2dcc43ef7a0a7d557ceb467f0c55c6d SHA1 65299a16ec414a690a48a2bbe63acaa3c6bb897b SHA256 7da2046aa65dbef64ff5b71400bed4b6b82441e6313c8ca4becb85fb4a89a0f0
-EBUILD mod_perl-2.0.3-r1.ebuild 5340 RMD160 5a35f19222df26922e5243ea39ba89790beae510 SHA1 60f723f4bbb053c04ac36c1ce3d6c3650fbf4061 SHA256 a184647047f73f3ad8060971c2810a423349a3900784b8fb3377a67a9c149b4d
EBUILD mod_perl-2.0.3-r2.ebuild 4469 RMD160 75492db94d665dd016853630fb666b5c44a27bea SHA1 57371856b5196568fc866fc0cbc1feb94d4c3854 SHA256 7ce5b494646f2abb3a8d6e6f6ea5f76c20dcc20f56d1b415c91ab091b848b237
+EBUILD mod_perl-2.0.4-r1.ebuild 4328 RMD160 588e7c0000427f649a2a2b7dc8ee9fde732021bc SHA1 b61798d21c0d59d9203d7e54234d4b40e10bd251 SHA256 e3ec60851411099861ee6b7db9eac4397301c2a266adb018384e3628f0f307c7
EBUILD mod_perl-2.0.4.ebuild 4280 RMD160 69529b9aeb76ccac317c3ce2e2d3346618254bda SHA1 7973cf0cacd0712efc6dbe862a7f13e57eb04d71 SHA256 d5387720207c34a9f47a47eb3de93b244798990987c3d73c387aa1e9bc20879b
-MISC ChangeLog 19638 RMD160 0bf1b90443b309d329d6eb8c4e4be63e2ec0217a SHA1 acaa451aca4eaa81ba8c8cfa946623ea86265390 SHA256 bf12e3b8aa966b86c134e10f1949dc316c229964e02c496ca653b9df59ba932f
+MISC ChangeLog 19821 RMD160 367afdc11dad697733cf4a63543ddef569c1837e SHA1 fea2504d201e8c47ea41d8ae10141e5182c7df5c SHA256 43a4630f34012d123275572f9c7248b1a5b158b46b21f6183ea76b3a759622bd
MISC metadata.xml 289 RMD160 490c4256f14e1d9f37d432f700d4daea64a76b7c SHA1 e17d9d05b33898dddf745543d699ccb7348afc0a SHA256 a6c8f7ccb9eed3ab8dc936a39b96af61d48b48734852c78b80d85979508a13ce
diff --git a/www-apache/mod_perl/files/CVE-2009-0796.patch b/www-apache/mod_perl/files/CVE-2009-0796.patch
new file mode 100644
index 000000000000..c13db0de155a
--- /dev/null
+++ b/www-apache/mod_perl/files/CVE-2009-0796.patch
@@ -0,0 +1,47 @@
+--- perl/modperl/trunk/lib/Apache2/Status.pm 2007/12/31 08:05:11 607697
++++ perl/modperl/trunk/lib/Apache2/Status.pm 2009/04/01 15:39:56 760926
+@@ -29,7 +29,7 @@
+
+ use Apache2::Const -compile => qw(OK);
+
+-$Apache2::Status::VERSION = '4.00'; # mod_perl 2.0
++$Apache2::Status::VERSION = '4.01'; # mod_perl 2.0
+
+ use constant IS_WIN32 => ($^O eq "MSWin32");
+
+@@ -126,7 +126,7 @@
+ $r->print(symdump($r, $qs));
+ }
+ else {
+- my $uri = $r->uri;
++ my $uri = $r->location;
+ $r->print('<p>');
+ $r->print(
+ map { qq[<a href="$uri?$_">$status{$_}</a><br />\n] } sort { lc $a cmp lc $b } keys %status
+@@ -198,7 +198,7 @@
+ sub status_inc {
+ my ($r) = @_;
+
+- my $uri = $r->uri;
++ my $uri = $r->location;
+ my @retval = (
+ '<table border="1">',
+ "<tr>",
+@@ -289,7 +289,7 @@
+ my ($r) = @_;
+
+ local $_;
+- my $uri = $r->uri;
++ my $uri = $r->location;
+ my $cache = __PACKAGE__->registry_cache;
+
+ my @retval = "<h2>Compiled registry scripts grouped by their handler</h2>";
+@@ -765,7 +765,7 @@
+ my ($self, $package, $r) = @_;
+
+ my @m = qw(<table>);
+- my $uri = $r->uri;
++ my $uri = $r->location;
+ my $is_main = $package eq "main";
+
+ my $do_dump = has($r, "dumper");
diff --git a/www-apache/mod_perl/mod_perl-2.0.3-r1.ebuild b/www-apache/mod_perl/mod_perl-2.0.4-r1.ebuild
index c631863f1e5e..1a3026e1768c 100644
--- a/www-apache/mod_perl/mod_perl-2.0.3-r1.ebuild
+++ b/www-apache/mod_perl/mod_perl-2.0.4-r1.ebuild
@@ -1,14 +1,15 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-apache/mod_perl/mod_perl-2.0.3-r1.ebuild,v 1.12 2009/05/26 17:52:59 arfrever Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-apache/mod_perl/mod_perl-2.0.4-r1.ebuild,v 1.1 2009/07/05 16:43:16 hollow Exp $
inherit apache-module perl-module eutils multilib
+
DESCRIPTION="An embedded Perl interpreter for Apache2"
-SRC_URI="mirror://cpan/authors/id/P/PG/PGOLLUCCI/${P}.tar.gz"
+SRC_URI="mirror://apache/perl/${P}.tar.gz"
HOMEPAGE="http://perl.apache.org/"
LICENSE="GPL-2"
-KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE=""
SLOT="1"
@@ -19,33 +20,21 @@ DEPEND=">=dev-perl/Apache-Test-1.27
app-admin/sudo"
RDEPEND="${DEPEND}"
-APACHE2_MOD_CONF="75_${PN}.conf apache2-mod_perl-startup.pl"
-DOCFILES="Changes INSTALL LICENSE README STATUS"
+APACHE2_MOD_FILE="${S}/src/modules/perl/mod_perl.so"
+APACHE2_MOD_CONF="2.0.3/75_${PN}"
APACHE2_MOD_DEFINE="PERL"
+DOCFILES="Changes INSTALL LICENSE README STATUS"
+
need_apache2
pkg_setup() {
- perl-module_pkg_setup
+ has_apache_threads_in dev-lang/perl ithreads
}
src_unpack() {
- INSTALLED_MPM="$(/usr/sbin/apxs2 -q MPM_NAME)"
- eval `perl '-V:useithreads'`
- ITHREADS="${useithreads}"
- if [ "${INSTALLED_MPM}" != "prefork" ]; then
- if [ "${ITHREADS}" == "undef" ]; then
- eerror "You cannot build mod_perl on a threaded apache"
- eerror "with an unthreaded perl. You must either emerge"
- eerror "perl with ithreads in your USE flags, or emerge"
- eerror "apache without threading support"
- die
- fi
- fi
-
unpack ${A}
-
- cd ${S}
+ cd "${S}"
# I am not entirely happy with this solution, but here's what's
# going on here if someone wants to take a stab at another
@@ -74,34 +63,27 @@ src_unpack() {
# Robert Coie <rac@gentoo.org> 2003.05.06
- sed -i -e "s/sleep \$_/sleep \$_ << 2/" ${S}/Apache-Test/lib/Apache/TestServer.pm || die "problem editing TestServer.pm"
-
- # i wonder if this is the same sandbox issue, but TMPDIR is not
- # getting through via SetEnv. sneak it through here.
-
- # Bug 172676
- epatch "${FILESDIR}/RegistryCooker.patch"
+ sed -i -e "s/sleep \$_/sleep \$_ << 2/" \
+ "${S}"/Apache-Test/lib/Apache/TestServer.pm \
+ || die "problem editing TestServer.pm"
# rendhalver - this got redone for 2.0.1 and seems to fix the make test problems
- epatch ${FILESDIR}/mod_perl-2.0.1-sneak-tmpdir.patch
+ epatch "${FILESDIR}"/mod_perl-2.0.1-sneak-tmpdir.patch
+
+ epatch "${FILESDIR}"/CVE-2009-0796.patch
}
src_compile() {
perl Makefile.PL \
- PREFIX=${D}/usr \
+ PREFIX="${D}"/usr \
MP_TRACE=1 \
MP_DEBUG=1 \
MP_USE_DSO=1 \
- MP_APXS=/usr/sbin/apxs2 \
+ MP_APXS=${APXS} \
INSTALLDIRS=vendor </dev/null || die
# reported that parallel make is broken in bug 30257
emake -j1 || die
-
- # mcummings - disabling tests right, there's a bug i haven't found an override for
- # rendhalver - i seem to have fixed this so turning them back on again.
- # yet that sets /tmp as your tmp dir
- #hasq maketest $FEATURES && src_test
}
src_test() {
@@ -110,50 +92,41 @@ src_test() {
# write permissions accordingly in this case.
# IF YOU SUDO TO EMERGE AND HAVE !env_reset set testing will fail!
-
- if [ "`id -u`" == '0' ]; then
- chown nobody:nobody ${WORKDIR}
- chown nobody:nobody ${T}
+ if [[ "$(id -u)" == "0" ]]; then
+ chown nobody:nobody "${WORKDIR}"
+ chown nobody:nobody "${T}"
fi
# this does not || die because of bug 21325. kudos to smark for
# the idea of setting HOME.
-
TMPDIR="${T}" HOME="${T}/" make test
}
src_install() {
- dodir /usr/$(get_libdir)/apache2/modules
+ apache-module_src_install
+
+ dodir "${APACHE_MODULESDIR}"
make install \
- MODPERL_AP_LIBEXECDIR=${D}/usr/$(get_libdir)/apache2/modules \
- MODPERL_AP_INCLUDEDIR=${D}/usr/include/apache2 \
+ MODPERL_AP_LIBEXECDIR="${D}${APACHE_MODULESDIR}" \
+ MODPERL_AP_INCLUDEDIR="${D}${APACHE_INCLUDEDIR}" \
MP_INST_APACHE2=1 \
INSTALLDIRS=vendor || die
# rendhalver - fix the perllocal.pod that gets installed
# it seems to me that this has been getting installed for ages
-
fixlocalpod
+ insinto "${APACHE_MODULES_CONFDIR}"
+ doins "${FILESDIR}"/2.0.3/apache2-mod_perl-startup.pl
+ cp -pPR docs "${D}"/usr/share/doc/${PF}
+ cp -pPR todo "${D}"/usr/share/doc/${PF}
+
# this is an attempt to get @INC in line with /usr/bin/perl.
# there is blib garbage in the mainstream one that can only be
# useful during internal testing, so we wait until here and then
# just go with a clean slate. should be much easier to see what's
# happening and revert if problematic.
-
- # this is not needed anymore because Apache2.pm no longer exists
- #eval $(perl -V:vendorarch)
- #cp ${FILESDIR}/${P}-Apache2.pm ${D}/${vendorarch}/Apache2.pm
-
- insinto /etc/apache2/modules.d
- doins ${FILESDIR}/${PV}/75_mod_perl.conf \
- ${FILESDIR}/${PV}/apache2-mod_perl-startup.pl
-
- dodoc ${FILESDIR}/${PV}/75_mod_perl.conf Changes \
- INSTALL LICENSE README STATUS
- cp -pPR docs ${D}/usr/share/doc/${PF}
- cp -pPR todo ${D}/usr/share/doc/${PF}
- for FILE in `grep -lr portage ${D}/*|grep -v ".so"`; do
+ for FILE in $(grep -lr portage "${D}"/*|grep -v ".so"); do
sed -i -e "s:${D}:/:g" ${FILE}
done
}