Fix for CAN-2004-0942, bug #70138
authorMichael Tindal <urilith@gentoo.org>
Fri, 5 Nov 2004 10:12:20 +0000 (10:12 +0000)
committerMichael Tindal <urilith@gentoo.org>
Fri, 5 Nov 2004 10:12:20 +0000 (10:12 +0000)
net-www/apache/ChangeLog
net-www/apache/Manifest
net-www/apache/apache-2.0.52-r1.ebuild [new file with mode: 0644]
net-www/apache/files/digest-apache-2.0.52-r1 [new file with mode: 0644]

index 69f02de3dcbf484fa1a6515012538cffa9346a15..124efe2f5b0cf51a43baeae4f1fb718633b06a09 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for net-www/apache
 # Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-www/apache/ChangeLog,v 1.292 2004/11/05 05:38:30 urilith Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-www/apache/ChangeLog,v 1.293 2004/11/05 10:12:20 urilith Exp $
+
+*apache-2.0.52-r1 (05 Nov 2004)
+
+  05 Nov 2004; Michael Tindal <urilith@gentoo.org> +apache-2.0.52-r1.ebuild:
+  Security fix for CAN-2004-0942, bug
 
   05 Nov 2004; Michael Tindal <urilith@gentoo.org>
   -files/2.0.40/40_mod_ssl.conf,
index b73caf56a6f37ac6e087a6029e6a72ce451c9562..d09c60ea93a95b70a7ca99941036b14beaea0ba3 100644 (file)
@@ -1,7 +1,4 @@
-MD5 7d2c00cccc46cc80586f0d052501694c ChangeLog 50804
-MD5 5b6dd438f81019e56fa641841c0c13fe metadata.xml 501
-MD5 904e5b6782f1ddc241ce468dfd5cbd55 apache-2.0.50.ebuild 12902
-MD5 46e83b90a91a8997eefb54c4f3d3e0f3 apache-2.0.52.ebuild 12831
+MD5 b556435d01e3e6d790fcb627139e341b ChangeLog 50953
 MD5 e4dc4b093f2d9b8edd137e09ecbb2adf apache-1.3.29-r2.ebuild 7177
 MD5 1bcfd89028a8f1e39f99a370f39e5ff2 apache-1.3.31-r1.ebuild 6739
 MD5 c46f4b015504b2b22e0b8a7917ec84bf apache-1.3.31-r2.ebuild 6864
@@ -10,8 +7,12 @@ MD5 08b63251db95f14ddbdc4b0368d48702 apache-1.3.31.ebuild 6693
 MD5 28accf25c8782d9af5b71a3b3725969f apache-1.3.32-r1.ebuild 6610
 MD5 c4728dbf14f69ec79e3dc9d3636e3f0b apache-1.3.32.ebuild 6616
 MD5 e8bbe2a2df8cb230ea39cdd0a9e89224 apache-1.3.33.ebuild 6885
+MD5 904e5b6782f1ddc241ce468dfd5cbd55 apache-2.0.50.ebuild 12902
 MD5 e04b2e008169968fe7b6c0775d5fab89 apache-2.0.51-r1.ebuild 12836
 MD5 c096bf4f3779f9138b631ae00aaa387d apache-2.0.51.ebuild 12827
+MD5 46e83b90a91a8997eefb54c4f3d3e0f3 apache-2.0.52.ebuild 12831
+MD5 5b6dd438f81019e56fa641841c0c13fe metadata.xml 501
+MD5 a1ab5146aa4425bef0f81215aa59be12 apache-2.0.52-r1.ebuild 12845
 MD5 8b12871dd74fcd3f4fdf451c9d8c259e files/00_apache_manual.conf 781
 MD5 998b4b7df08eb15641e0b9132443b365 files/apache-1.3.27-apachectl.patch 1328
 MD5 37d2c4ea8e1a6725deaca42b6aa22c69 files/apache-1.3.27_db4_gentoo.patch 1006
@@ -46,6 +47,17 @@ MD5 8cb4313e58d7bd5dc369eb92f75daa2b files/httpd-2.0.49-ipv6.patch 788
 MD5 59a6ba7dcde461f5350af41e6aff92b1 files/robots.txt 342
 MD5 d3626a1e31a675c60d066c111d552adf files/suexec.pam 59
 MD5 161245c7aa1eb785db53b34d6a10be43 files/suexec_pam_gentoo.patch 2149
+MD5 44fc8ddc9a05a056d8a08e6d843c997c files/digest-apache-2.0.52-r1 204
+MD5 869ec17a0417518aa1d9d9566a958fb5 files/2.0.49/40_mod_ssl.conf 3185
+MD5 1d10cc98714a34ddc38525743c2989f9 files/2.0.49/41_mod_ssl.default-vhost.conf 8053
+MD5 819ee444395cf42ccc8009529a94af37 files/2.0.49/45_mod_dav.conf 583
+MD5 50b76a8df795c79378c02f1edea750a4 files/2.0.49/46_mod_ldap.conf 902
+MD5 1c4d9999353237c8b3835b7d73ba7a15 files/2.0.49/apache2-builtin-mods 2215
+MD5 228b5a816ea5534287be3c5e1d6ec7cd files/2.0.49/apache2.confd 1944
+MD5 20f6868829149f669a7afd1e03245692 files/2.0.49/apache2.initd 2494
+MD5 b610d37fd521de1f8fc782069e165969 files/2.0.49/apache2logserverstatus 4652
+MD5 8570b1055b64f29120e21be94bbdd73d files/2.0.49/apache2splitlogfile 4875
+MD5 8a234c8eb9cc840fe2d3cfbcdfedc315 files/2.0.49/gentestcrt.sh 8807
 MD5 54c0546fa2b1985686cf22c9efa2c7dc files/common/apr-config.layout 434
 MD5 fe80b29c20bb6794eb7f4a0875588306 files/common/apr-util-config.layout 437
 MD5 5a7b58d54689d6e9d8f8214b5150d18f files/common/config.layout 741
@@ -54,16 +66,6 @@ MD5 139f5b0d5e2bf3525464a336ed2e1f83 files/conf/Vhosts.conf 1910
 MD5 9c606730ea7cc37417109915b2fbe522 files/conf/VirtualHomePages.conf 909
 MD5 a7f15bdba3786353deb7bfaf8de0efb9 files/conf/apache.conf 8115
 MD5 c70dc2c9a5e56660f3f120fcb822fadc files/conf/commonapache.conf 22216
-MD5 8a234c8eb9cc840fe2d3cfbcdfedc315 files/2.0.49/gentestcrt.sh 8807
-MD5 1c4d9999353237c8b3835b7d73ba7a15 files/2.0.49/apache2-builtin-mods 2215
-MD5 228b5a816ea5534287be3c5e1d6ec7cd files/2.0.49/apache2.confd 1944
-MD5 20f6868829149f669a7afd1e03245692 files/2.0.49/apache2.initd 2494
-MD5 b610d37fd521de1f8fc782069e165969 files/2.0.49/apache2logserverstatus 4652
-MD5 8570b1055b64f29120e21be94bbdd73d files/2.0.49/apache2splitlogfile 4875
-MD5 869ec17a0417518aa1d9d9566a958fb5 files/2.0.49/40_mod_ssl.conf 3185
-MD5 1d10cc98714a34ddc38525743c2989f9 files/2.0.49/41_mod_ssl.default-vhost.conf 8053
-MD5 819ee444395cf42ccc8009529a94af37 files/2.0.49/45_mod_dav.conf 583
-MD5 50b76a8df795c79378c02f1edea750a4 files/2.0.49/46_mod_ldap.conf 902
 MD5 61df284cb67dfde3085aec5543eeb03c files/patches/1.3.31/00_gentoo_apachectl.patch 32836
 MD5 3c0dfc9f2dc93ae46eb6382cf9533f18 files/patches/1.3.31/00_gentoo_base.patch 27799
 MD5 a63b9472904d3500cf72b370a9ee3200 files/patches/1.3.31/00_gentoo_db4_detect.patch 1304
diff --git a/net-www/apache/apache-2.0.52-r1.ebuild b/net-www/apache/apache-2.0.52-r1.ebuild
new file mode 100644 (file)
index 0000000..ee948f1
--- /dev/null
@@ -0,0 +1,406 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-www/apache/apache-2.0.52-r1.ebuild,v 1.1 2004/11/05 10:12:20 urilith Exp $
+
+inherit flag-o-matic eutils fixheadtails gnuconfig
+
+PATCH_LEVEL="${PV}"
+S="${WORKDIR}/httpd-${PV}"
+DESCRIPTION="Apache Web Server, Version 2.0.x"
+HOMEPAGE="http://www.apache.org/"
+SRC_URI="http://www.apache.org/dist/httpd/httpd-${PV}.tar.gz
+       http://dev.gentoo.org/~urilith/apache/apache-patches-${PVR}.tar.bz2
+       mirror://gentoo/apache2-conf.tar.bz2"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="berkdb gdbm ldap threads ipv6 doc static ssl"
+
+#Standard location for Gentoo Linux
+DATADIR="/var/www/localhost"
+
+DEPEND="dev-util/yacc
+       dev-lang/perl
+       sys-libs/zlib
+       dev-libs/expat
+       dev-libs/openssl
+       >=sys-apps/sed-4
+       >=sys-devel/autoconf-2.59-r4
+       berkdb? ( sys-libs/db )
+       gdbm? ( sys-libs/gdbm )
+       !mips? ( ldap? ( =net-nds/openldap-2* ) )
+       selinux? ( sec-policy/selinux-apache )"
+
+apache_setup_vars() {
+       # Sets the USERDIR to default.
+       USERDIR="public_html"
+       einfo "DATADIR is set to: ${DATADIR}"
+       einfo "USERDIR is set to: $USERDIR"
+}
+
+set_filter_flags () {
+       CFLAGS="${CFLAGS/  / }"
+       has_version =sys-libs/glibc-2.2* && filter-flags -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
+}
+
+src_unpack() {
+       set_filter_flags
+
+       unpack ${A} || die
+       cd ${S} || die
+
+       # which muppet decided that epatch would default to applying compressed
+       # patches?
+
+       EPATCH_SUFFIX="patch"
+       epatch ${WORKDIR}/apache-patches-${PVR} || die
+
+       if use berkdb; then
+               einfo "Enabling berkdb."
+               if has_version '=sys-libs/db-4*'; then
+                       einfo "Enabling db4"
+                       myconf="${myconf} --with-dbm=db4 --with-berkely-db=/usr"
+               elif has_version '=sys-libs/db-3*'; then
+                       einfo "Enabling db3"
+                       myconf="${myconf} --with-dbm=db3 --with-berkely-db=/usr"
+               elif has_version '=sys-libs/db-2'; then
+                       einfo "Enabling db2"
+                       myconf="${myconf} --with-dbm=db2 --with-berkely-db=/usr"
+               fi
+       else
+               echo "Disabling berkdb"
+       fi
+
+       #avoid utf-8 charset problems
+       export LC_CTYPE=C
+
+       ht_fix_file srclib/apr/build/buildcheck.sh
+
+       #give it the stamp
+       sed -i -e 's:(" PLATFORM "):(Gentoo/Linux):g' server/core.c
+
+       #fix perl with perl!
+       find -type f | xargs perl -pi -e \
+               "s|/usr/local/bin/perl|/usr/bin/perl|g; \
+               s|/usr/local/bin/perl5|/usr/bin/perl|g; \
+               s|/path/to/bin/perl|/usr/bin/perl|g;"
+       #dont want this cruft in /usr/bin
+       sed -i -e 's:@exp_bindir@:@exp_installbuilddir:g' support/apachectl.in
+
+       #setup the filesystem layout config
+       cat ${FILESDIR}/common/config.layout >> config.layout
+       sed -i -e 's:version:${PF}:g' config.layout
+
+       cat ${FILESDIR}/common/apr-config.layout >> srclib/apr/config.layout
+       cat ${FILESDIR}/common/apr-util-config.layout >> srclib/apr-util/config.layout
+
+       sed -i -e "s:/var/www/localhost:${DATADIR}:g" srclib/apr/config.layout
+       sed -i -e "s:/var/www/localhost:${DATADIR}:g" srclib/apr-util/config.layout
+
+       WANT_AUTOCONF=2.5 ./buildconf || die "buildconf failed"
+}
+
+src_compile() {
+       set_filter_flags
+       apache_setup_vars
+
+       # Detect mips and uclibc systems properly
+       gnuconfig_update
+
+       local myconf
+       if use ldap; then
+               if use mips; then
+                       eerror "Sorry, LDAP support isn't available yet for MIPS"
+                       eerror "Test out OpenLDAP and report it via BugZilla!"
+                       eerror "Continuing in 5 seconds"
+                       sleep 5s
+               else
+                       einfo "Enabling LDAP"
+                       if use static; then
+                         myconf="--with-ldap --enable-auth-ldap=static --enable-ldap=static"
+                       else
+                         myconf="--with-ldap --enable-auth-ldap=shared --enable-ldap=shared"
+                       fi
+               fi
+       fi
+
+       if use ipv6; then
+               einfo "Enabling ipv6"
+               myconf="${myconf} --enable-vp4"
+       else
+               myconf="${myconf} --disable-ipv6"
+       fi
+
+       if use threads; then
+               einfo "Enabling threads support"
+               myconf="${myconf} --with-mpm=worker"
+       else
+               myconf="${myconf} --with-mpm=${MPM:=prefork}"
+       fi
+
+       select_modules_config || die "determining modules"
+
+       # Fix for bug #24215 - robbat2@gentoo.org, 30 Oct 2003
+       # We pre-load the cache with the correct answer!  This avoids
+       # it violating the sandbox.  This may have to be changed for
+       # non-Linux systems or if sem_open changes on Linux.  This
+       # hack is built around documentation in /usr/include/semaphore.h
+       # and the glibc (pthread) source
+       echo 'ac_cv_func_sem_open=${ac_cv_func_sem_open=no}' >> ${S}/config.cache
+
+       # Workaround for bug #32444 - robbat2@gentoo.org, 28 Nov 2003
+       # Apache2 tries to build SCTP support even when all the parts of it aren't there
+       # So for the moment we tell it to ignore SCTP support
+       echo 'ac_cv_sctp=${ac_cv_sctp=no}' >> ${S}/config.cache
+       echo 'ac_cv_header_netinet_sctp_h=${ac_cv_header_netinet_sctp_h=no}' >> ${S}/config.cache
+       echo 'ac_cv_header_netinet_sctp_uio_h=${ac_cv_header_netinet_sctp_uio_h=no}' >> ${S}/config.cache
+
+       SSL_BASE="SYSTEM" \
+       WANT_AUTOCONF_2_5=1 WANT_AUTOCONF=2.5
+       ./configure \
+               --with-suexec-safepath="/usr/local/bin:/usr/bin:/bin" \
+               --with-suexec-logfile=/var/log/apache2/suexec_log \
+               --with-suexec-bin=/usr/sbin/suexec2 \
+               --with-suexec-userdir=${USERDIR} \
+               --with-suexec-caller=apache \
+               --with-suexec-docroot=/var/www \
+               --with-suexec-uidmin=1000 \
+               --with-suexec-gidmin=100 \
+               --with-suexec-umask=077 \
+               --enable-suexec=shared \
+               \
+               ${MY_BUILTINS} \
+               \
+               --cache-file=${S}/config.cache \
+               --with-perl=/usr/bin/perl \
+               --with-expat=/usr \
+               --with-ssl=/usr \
+               --with-z=/usr \
+               --with-port=80 \
+               --enable-layout=Gentoo \
+               --with-program-name=apache2 \
+               --with-devrandom=/dev/urandom \
+               --host=${CHOST} ${myconf} || die "bad ./configure please submit bug report to bugs.gentoo.org. Include your config.layout."
+               #--with-mpm={worker|prefork|perchild|leader|threadpool}
+
+       # we don't want to try and recompile the ssl_expr_parse.c file, because
+       # the lex source is broken
+       touch modules/ssl/ssl_expr_scan.c
+
+       emake || die "problem compiling Apache2 :("
+
+       #build ssl version of apache bench (ab-ssl)
+       cd support; rm -f ab .libs/ab ab.lo ab.o
+       make ab CFLAGS="${CFLAGS} -DUSE_SSL -lcrypto -lssl \
+               -I/usr/include/openssl -L/usr/lib" || die
+       mv ab ab-ssl; mv .libs/ab .libs/ab-ssl; rm -f ab.lo ab.o
+       make ab || die
+}
+
+src_install () {
+       set_filter_flags
+
+       local i
+       make DESTDIR=${D} install || die
+       dodoc ABOUT_APACHE CHANGES INSTALL LAYOUT \
+               LICENSE README* ${FILESDIR}/robots.txt
+
+       #bogus values pointing at /var/tmp/portage
+       sed -i -e 's:APR_SOURCE_DIR=.*:APR_SOURCE_DIR=:g' ${D}/usr/bin/apr-config
+       sed -i -e 's:APU_SOURCE_DIR=.*:APU_SOURCE_DIR=:g' ${D}/usr/bin/apu-config
+       sed -i -e 's:APU_BUILD_DIR=.*:APU_BUILD_DIR=:g' ${D}/usr/bin/apu-config
+
+       #protect the suexec binary
+       local gid=`id -g apache`
+       [ -z "${gid}" ] && gid=81
+       fowners root:${gid} /usr/sbin/suexec
+       fperms 4710 /usr/sbin/suexec
+
+       #apxs needs this to pickup the right lib for install
+       dosym /usr/lib /usr/lib/apache2/lib
+       dosym /var/log/apache2 /usr/lib/apache2/logs
+       dosym /usr/lib/apache2-extramodules /usr/lib/apache2/extramodules
+       dosym /etc/apache2/conf /usr/lib/apache2/conf
+
+       cd ${S}
+       #Credits to advx.org people for these scripts. Heck, thanks for
+       #the nice layout and everything else ;-)
+       exeinto /usr/sbin
+       for i in apache2logserverstatus apache2splitlogfile
+       do
+               doexe ${FILESDIR}/2.0.49/$i
+       done
+       exeinto /usr/lib/ssl/apache2-mod_ssl
+       doexe ${FILESDIR}/2.0.49/gentestcrt.sh
+
+       #some more scripts
+       exeinto /usr/sbin
+       for i in split-logfile list_hooks.pl logresolve.pl log_server_status
+       do
+               doexe ${S}/support/$i
+       done
+       #the ssl version of apache bench
+       doexe support/.libs/ab-ssl
+
+       #move some mods to extramodules
+       dodir /usr/lib/apache2-extramodules
+       for i in mod_ssl.so mod_ldap.so mod_auth_ldap.so
+       do
+               [ -x ${D}/usr/lib/apache2/modules/$i ] && \
+               mv ${D}/usr/lib/apache2/modules/$i ${D}/usr/lib/apache2-extramodules
+       done
+
+       #modules.d config file snippets
+       insinto /etc/apache2/conf/modules.d
+       for i in 40_mod_ssl.conf 41_mod_ssl.default-vhost.conf 45_mod_dav.conf
+       do
+               doins ${FILESDIR}/2.0.49/$i
+       done
+       use !mips && use ldap && doins ${FILESDIR}/2.0.49/46_mod_ldap.conf
+
+       #drop in a convenient link to the manual
+       if use doc; then
+               MANUAL_VERSION="2.0.50"
+               insinto /etc/apache2/conf/modules.d
+               doins ${FILESDIR}/00_apache_manual.conf
+               dosym /usr/share/doc/${PF}/manual ${DATADIR}/htdocs/manual
+               sed -i -e "s:2.0.49:${MANUAL_VERSION}:" ${D}/etc/apache2/conf/modules.d/00_apache_manual.conf
+               else
+               rm -rf ${D}/usr/share/doc/${PF}/manual
+       fi
+
+       #SLOT=2!!!
+       cd ${D}
+       mv -v usr/sbin/apachectl usr/sbin/apache2ctl
+       mv -v usr/sbin/htdigest usr/sbin/htdigest2
+       mv -v usr/sbin/htpasswd usr/sbin/htpasswd2
+       mv -v usr/sbin/logresolve usr/sbin/logresolve2
+       mv -v usr/sbin/apxs usr/sbin/apxs2
+       mv -v usr/sbin/ab usr/sbin/ab2
+       mv -v usr/sbin/ab-ssl usr/sbin/ab2-ssl
+       mv -v usr/sbin/suexec usr/sbin/suexec2
+       mv -v usr/sbin/rotatelogs usr/sbin/rotatelogs2
+       mv -v usr/sbin/dbmmanage usr/sbin/dbmmanage2
+       mv -v usr/sbin/checkgid usr/sbin/checkgid2
+       mv -v usr/sbin/split-logfile usr/sbin/split-logfile2
+       mv -v usr/sbin/list_hooks.pl usr/sbin/list_hooks2.pl
+       mv -v usr/sbin/logresolve.pl usr/sbin/logresolve2.pl
+
+       # do the man pages
+       mv -v usr/share/man/man1/htdigest.1 usr/share/man/man1/htdigest2.1
+       mv -v usr/share/man/man1/htpasswd.1 usr/share/man/man1/htpasswd2.1
+       mv -v usr/share/man/man1/dbmmanage.1 usr/share/man/man1/dbmmanage2.1
+       mv -v usr/share/man/man8/ab.8 usr/share/man/man8/ab2.8
+       mv -v usr/share/man/man8/apxs.8 usr/share/man/man8/apxs2.8
+       mv -v usr/share/man/man8/apachectl.8 usr/share/man/man8/apache2ctl.8
+       mv -v usr/share/man/man8/httpd.8 usr/share/man/man8/apache2.8
+       mv -v usr/share/man/man8/logresolve.8 usr/share/man/man8/logresolve2.8
+       mv -v usr/share/man/man8/rotatelogs.8 usr/share/man/man8/rotatelogs2.8
+       mv -v usr/share/man/man8/suexec.8 usr/share/man/man8/suexec2.8
+
+       #tidy up
+       mv ${D}/usr/sbin/envvars* ${D}/usr/lib/apache2/build
+       dodoc ${D}/etc/apache2/conf/*-std.conf
+       rm -f ${D}/etc/apache2/conf/*.conf
+       rm -rf ${D}/var/run ${D}/var/log
+
+       #config files
+       insinto /etc/conf.d; newins ${FILESDIR}/2.0.49/apache2.confd apache2
+       exeinto /etc/init.d; newexe ${FILESDIR}/2.0.49/apache2.initd apache2
+       insinto /etc/apache2; doins ${FILESDIR}/2.0.49/apache2-builtin-mods
+       insinto /etc/apache2/conf
+       doins ${WORKDIR}/commonapache2.conf
+       doins ${WORKDIR}/apache2.conf
+       insinto /etc/apache2/conf/vhosts
+       doins ${WORKDIR}/virtual-homepages.conf
+       doins ${WORKDIR}/dynamic-vhosts.conf
+       doins ${WORKDIR}/vhosts.conf
+
+       # Added by Jason Wever <weeve@gentoo.org>
+       # A little sedfu to fix bug #7172 for sparc64s
+       if [ ${ARCH} = "sparc" ]
+       then
+               sed -i -e '13a\AcceptMutex fcntl' \
+                       ${D}/etc/apache2/conf/apache2.conf
+       fi
+}
+
+parse_modules_config() {
+       set_filter_flags
+
+       local filename=$1
+       local name=""
+       local dso=""
+       local disable=""
+       [ -f ${filename} ] || return 1
+       for i in `cat $filename | sed "s/^#.*//"` ; do
+               if [ $i == "-" ] ; then
+                       disable="true"
+               elif [ -z "$name" ] && [ ! -z "`echo $i | grep "mod_"`" ] ; then
+                       name=`echo $i | sed "s/mod_//"`
+               elif [ "$disable" ] && ( [ $i == "static" ] || [ $i == "shared" ] ) ; then
+                       MY_BUILTINS="${MY_BUILTINS} --disable-$name"
+                       name="" ; disable=""
+               elif [ $i == "static" ] ; then
+                       MY_BUILTINS="${MY_BUILTINS} --enable-$name=yes"
+                       name="" ; disable=""
+               elif [ $i == "shared" ] ; then
+                       MY_BUILTINS="${MY_BUILTINS} --enable-$name=shared"
+                       name="" ; disable=""
+               fi
+       done
+       einfo "${filename} options:\n${MY_BUILTINS}"
+}
+
+select_modules_config() {
+       parse_modules_config /etc/apache2/apache2-builtin-mods || \
+       parse_modules_config ${FILESDIR}/2.0.49/apache2-builtin-mods || \
+       return 1
+}
+
+pkg_postinst() {
+       set_filter_flags
+
+       #empty dirs...
+       install -d -m0755 -o apache -g apache ${ROOT}/var/lib/dav
+       install -d -m0755 -o root -g root ${ROOT}/var/log/apache2
+       install -d -m0755 -o apache -g apache ${ROOT}/var/cache/apache2
+
+       if use ssl; then
+       #       install -d -m0755 -o root -g root ${ROOT}/etc/apache2/conf/ssl
+       install -d -m0755 -o root -g root ${ROOT}/etc/apache2/conf/ssl
+               cd ${ROOT}/etc/apache2/conf/ssl
+               einfo
+               einfo "Generating self-signed test certificate in /etc/apache2/conf/ssl..."
+               yes "" 2>/dev/null | ${ROOT}/usr/lib/ssl/apache2-mod_ssl/gentestcrt.sh >/dev/null 2>&1
+               einfo
+       fi
+
+       if has_version '=net-www/apache-1*' ; then
+       ewarn
+       ewarn "Please add the 'apache2' flag to your USE variable and (re)install"
+       ewarn "any additional DSO modules you may wish to use with Apache-2.x."
+       ewarn "Addon modules are configured in /etc/apache2/conf/modules.d/"
+       ewarn
+       fi
+
+       # Check to see if this is an upgrade
+       if [ -d /home/httpd ];
+       then
+       einfo
+       einfo "Please remember to update your config files in /etc/apache2"
+       einfo "as --datadir has been changed to ${DATADIR}, and ServerRoot"
+       einfo "has changed to /usr/lib/apache2!"
+       einfo
+       fi
+
+       local list=""
+       for i in lib logs modules extramodules; do
+               local d="/etc/apache2/${i}"
+               [ -s "${d}" ] && list="${list} ${d}"
+       done
+       if [ -n "${list}" ]; then
+               einfo "You should delete these old symlinks: ${list}"
+       fi
+}
diff --git a/net-www/apache/files/digest-apache-2.0.52-r1 b/net-www/apache/files/digest-apache-2.0.52-r1
new file mode 100644 (file)
index 0000000..b026a0c
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 eba528fa8613dc5bfb0615a69c11f053 httpd-2.0.52.tar.gz 6918995
+MD5 c5843846dd3ac492198799c60ead4c31 apache-patches-2.0.52-r1.tar.bz2 9611
+MD5 23c09a899866fc5c7f097c17552eb0f4 apache2-conf.tar.bz2 13204