pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc - Update to apache 2.0.50



details:   https://anonhg.NetBSD.org/pkgsrc/rev/9fe4095b4659
branches:  trunk
changeset: 477993:9fe4095b4659
user:      adrianp <adrianp%pkgsrc.org@localhost>
date:      Wed Jul 14 08:28:51 2004 +0000

description:
- Update to apache 2.0.50
- Add new build def APACHE_DEFAULT_FILES

Changes with Apache 2.0.50

  *) SECURITY: CAN-2004-0493 (cve.mitre.org)
     Close a denial of service vulnerability identified by Georgi
     Guninski which could lead to memory exhaustion with certain
     input data.  [Jeff Trawick]

  *) mod_cgi: Handle output on stderr during script execution on Unix
     platforms; preventing deadlock when stderr output fills pipe buffer.
     Also fixes case where stderr from nph- scripts could be lost.
     PR 22030, 18348.  [Joe Orton, Jeff Trawick]

  *) mod_alias now emits a warning if it detects overlapping *Alias*
     directives.  [André Malo]

  *) mod_rewrite no longer turns forward proxy requests into reverse proxy
     requests. PR 28125  [ast domdv.de, André Malo]

  *) ap_set_sub_req_protocol and ap_finalize_sub_req_protocol are now
     exported on Win32 and Netware as well (minor MMN bump).  PR 28523.
     [Edward Rudd <eddie omegaware.com>, André Malo]

  *) Restore the ability to disable the use of AcceptEx on Win9x systems
     automatically (broken in 2.0.49). PR 28529.  [André Malo]

  *) <VirtualHost myhost> now applies to all IP addresses for myhost
     instead of just the first one reported by the resolver.  This
     corrects a regression since 1.3.  [Jeff Trawick]

  *) util_ldap: allow relative paths for LDAPTrustedCA to be resolved
     against ServerRoot PR#26602 [Brad Nicholes]

  *) SECURITY: CAN-2004-0488 (cve.mitre.org)
     mod_ssl: Fix a buffer overflow in the FakeBasicAuth code for a
     (trusted) client certificate subject DN which exceeds 6K in length.
     [Joe Orton]

  *) mod_dav_fs: Fix MKCOL response for missing parent collections, which
     caused issues for the Eclipse WebDAV extension.
     PR 29034.  [Joe Orton]

  *) mod_deflate: Fix memory consumption (which was proportional to the
     response size).  PR 29318.  [Joe Orton]

  *) mod_ssl: Log the errors returned on failure to load or initialize
     a crypto accelerator engine.  [Joe Orton]

  *) Allow RequestHeader directives to be conditional. PR 27951.
     [Vincent Deffontaines <vincent gryzor.com>, André Malo]

  *) Allow LimitRequestBody to be reset to unlimited. PR 29106
     [André Malo]

  *) Fix a bunch of cases where the return code of the regex compiler
     was not checked properly. This affects: mod_setenvif, mod_usertrack,
     mod_proxy, mod_proxy_ftp and core. PR 28218.  [André Malo]

  *) mod_ssl: Fix a potential segfault in the 'shmcb' session cache for
     small cache sizes.  PR 27751.  [Geoff Thorpe <geoff geoffthorpe.net>]

  *) Remove 2Gb log file size restriction on some 32-bit platforms.
     PR 13511.  [Joe Orton]

  *) mod_logio no longer removes the EOS bucket. PR 27928.
     [Bojan Smojver <bojan rexursive.com>]

  *) htpasswd no longer refuses to process files that contain empty
     lines.  [André Malo]

  *) Regression from 1.3: At startup, suexec now will be checked for
     availability, the setuid bit and user root. The works only if
     httpd is compiled with the shipped APR version (0.9.5).
     PR 28287.  [André Malo]

  *) Unix MPMs: Stop dropping connections when the file descriptor
     is at least FD_SETSIZE.  [Jeff Trawick]

  *) Fix handling of IPv6 numeric strings in mod_proxy.  [Jeff Trawick]

  *) mod_isapi: send_response_header() failed to copy status string's
     last character.  PR 20619.  [Jesse Pelton <jsp pkc.com>]

  *) Fix a segfault when requests for shared memory fails and returns
     NULL. Fix a segfault caused by a lack of bounds checking on the
     cache.  PR 24801.  [Graham Leggett]

  *) Throw an error message if an attempt is made to use the LDAPTrustedCA
     or LDAPTrustedCAType directives in a VirtualHost. PR 26390
     [Brad Nicholes]

  *) Fix a potential segfault if the bind password in the LDAP cache
     is NULL.  PR 28250.  [Jari Ahonen <jah progress.com>]

  *) Quotes cannot be used around require group and require dn
     directives, update the documentation to reflect this. Also add
     quotes around the dn and group within debug messages, to make it
     more obvious why authentication is failing if quotes are used in
     error.  PR 19304.  [Graham Leggett]

  *) The Microsoft LDAP SDK escapes filters for us, stop util_ldap
     from escaping filters twice when the backslash character is used.
     PR 24437.  [Jess Holle <jessh ptc.com>]

  *) Overhaul handling of LDAP error conditions, so that the util_ldap_*
     functions leave the connections in a sane state after errors have
     occurred. PR 27748, 17274, 17599, 18661, 21787, 24595, 24683, 27134,
     27271 [Graham Leggett]

  *) mod_ldap calls ldap_simple_bind_s() to validate the user
     credentials.  If the bind fails, the connection is left
     in an unbound state.  Make sure that the ldap connection
     record is updated to show that the connection is no longer
     bound. [Brad Nicholes]

  *) Ensure that lines in the request which are too long are
     properly terminated before logging.
     [Tsurutani Naoki <turutani scphys.kyoto-u.ac.jp>]

  *) Update the bind credentials for the cached LDAP connection to
     reflect the last bind.  This prevents util_ldap from creating
     unnecessary connections rather than reusing cached connections.
     [Brad Nicholes]

  *) mod_isapi: GetServerVariable returned improperly terminated header
     fields given "ALL_HTTP" or "ALL_RAW".  PR 20656.
     [Jesse Pelton <jsp pkc.com>]

  *) mod_isapi: GetServerVariable("ALL_RAW") returned the wrong buffer
     size.  PR 20617.  [Jesse Pelton <jsp pkc.com>]

  *) mod_dav: Fix a problem that could cause crashes when manipulating
     locks on some platforms.  [Jeff Trawick]

  *) mod_headers no longer crashes if an empty header value should
     be added.  [André Malo]

  *) Fix segfault in mod_expires, which occured under certain
     circumstances. PR 28047.  [André Malo]

  *) htpasswd: use apr_temp_dir_get() and general cleanup
     [Guenter Knauf <eflash gmx.net>, Thom May]

  *) mod_ssl: Fix memory leak in session cache handling.  PR 26562
     [Madhusudan Mathihalli]

  *) mod_ssl: Fix potential segfaults when performing SSL shutdown from
     a pool cleanup.  PR 27945.  [Joe Orton]

  *) Add forensic logging module (mod_log_forensic).
     [Ben Laurie]

  *) logresolve: Allow size of log line buffer to be overridden at
     build time (MAXLINE).  PR 27793.  [Jeff Trawick]

  *) Fix the comment delimiter in htdbm so that it correctly parses the
     username comment.  Also add a terminate function to allow NetWare
     to pause the output before the screen is destroyed.
     [Guenter Knauf <eflash gmx.net>, Brad Nicholes]

  *) Fix crash when Apache was started with no Listen directives.
     [Michael Corcoran <mcorcoran warpsolutions.com>]

  *) core_output_filter: Fix bug that could result in sending
     garbage over the network when module handlers construct
     bucket brigades containing multiple file buckets all referencing
     the same open file descriptor. [Bojan Smojver]

  *) Fix memory corruption problem with ap_custom_response() function.
     The core per-dir config would later point to request pool data
     that would be reused for different purposes on different requests.
     [Jeff Trawick, based on an old 1.3 patch submitted by Will Lowe]

  *) Win32: Tweak worker thread accounting routines to eliminate
     server hang when number of Listen directives in httpd.conf
     is greater than or equal to the setting of ThreadsPerChild.
     [Bill Stoddard]

diffstat:

 devel/apr/buildlink3.mk      |     4 +-
 devel/apr/distinfo           |     6 +-
 www/apache2/Makefile         |    85 +-
 www/apache2/Makefile.common  |     2 +-
 www/apache2/PLIST            |  1430 +----------------------------------------
 www/apache2/PLIST.deffiles   |  1420 +++++++++++++++++++++++++++++++++++++++++
 www/apache2/buildlink3.mk    |     5 +-
 www/apache2/distinfo         |     9 +-
 www/apache2/patches/patch-aa |    15 +-
 www/apache2/patches/patch-as |    35 -
 10 files changed, 1572 insertions(+), 1439 deletions(-)

diffs (truncated from 3168 to 300 lines):

diff -r 8d0ab42d9c8b -r 9fe4095b4659 devel/apr/buildlink3.mk
--- a/devel/apr/buildlink3.mk   Wed Jul 14 08:03:16 2004 +0000
+++ b/devel/apr/buildlink3.mk   Wed Jul 14 08:28:51 2004 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.2 2004/03/18 09:12:10 jlam Exp $
+# $NetBSD: buildlink3.mk,v 1.3 2004/07/14 08:31:12 adrianp Exp $
 
 BUILDLINK_DEPTH:=      ${BUILDLINK_DEPTH}+
 APR_BUILDLINK3_MK:=    ${APR_BUILDLINK3_MK}+
@@ -13,7 +13,7 @@
 BUILDLINK_PACKAGES+=   apr
 
 .if !empty(APR_BUILDLINK3_MK:M+)
-BUILDLINK_DEPENDS.apr+=        apr>=0.9.5.2.0.48nb1
+BUILDLINK_DEPENDS.apr+=        apr>=0.9.5.2.0.50
 BUILDLINK_PKGSRCDIR.apr?=      ../../devel/apr
 
 BUILDLINK_FILES.apr+=  bin/apr-config
diff -r 8d0ab42d9c8b -r 9fe4095b4659 devel/apr/distinfo
--- a/devel/apr/distinfo        Wed Jul 14 08:03:16 2004 +0000
+++ b/devel/apr/distinfo        Wed Jul 14 08:28:51 2004 +0000
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.7 2004/03/22 19:50:16 reed Exp $
+$NetBSD: distinfo,v 1.8 2004/07/14 08:31:12 adrianp Exp $
 
-SHA1 (httpd-2.0.49.tar.gz) = 7fe1f9bc835b91d5e55aa39a792b0050a634485b
-Size (httpd-2.0.49.tar.gz) = 5919279 bytes
+SHA1 (httpd-2.0.50.tar.gz) = 7b6f591b2e728473ebe0164bf5297b1fa86f4fe2
+Size (httpd-2.0.50.tar.gz) = 6338536 bytes
 SHA1 (patch-aa) = 17e79d6c54c855c4210f68e5facca1002d2512fa
 SHA1 (patch-ab) = bb9a9f0fbf5d48748f2a0826509a19b915d2bc72
 SHA1 (patch-an) = 64006f0f1b5c3f20df6f47624e56aac0d99ae056
diff -r 8d0ab42d9c8b -r 9fe4095b4659 www/apache2/Makefile
--- a/www/apache2/Makefile      Wed Jul 14 08:03:16 2004 +0000
+++ b/www/apache2/Makefile      Wed Jul 14 08:28:51 2004 +0000
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.37 2004/06/27 16:34:25 adrianp Exp $
+# $NetBSD: Makefile,v 1.38 2004/07/14 08:28:51 adrianp Exp $
 
 PKGNAME=               apache-${APACHE_VERSION}
-PKGREVISION=           2
 CATEGORIES=            www
 
 HOMEPAGE=              http://httpd.apache.org/
@@ -10,7 +9,7 @@
 CONFLICTS=             apache-*ssl-[0-9]* apache-[0-9]* apache6-[0-9]*
 CONFLICTS+=            ap-*-[0-9]*     # Apache-1.x DSOs
 
-BUILD_DEFS+=           USE_INET6
+BUILD_DEFS+=           USE_INET6 APACHE_DEFAULT_FILES
 
 USE_BUILDLINK3=                YES
 USE_PKGINSTALL=                YES
@@ -28,6 +27,32 @@
 CONFIGURE_ARGS+=       --with-apr=${LOCALBASE}
 CONFIGURE_ARGS+=       --with-apr-util=${LOCALBASE}
 
+#
+# APACHE_DEFAULT_FILES Notes:
+#
+# If this is defined as YES then you will basically get all the default files
+# that apapche installs.  On a default install this includes: 
+#
+#      ${PREFIX}/share/httpd/htdocs
+#      ${PREFIX}/libexec/cgi-bin
+#      ${PREFIX}/share/httpd/manual
+#      ${PREFIX}/share/httpd/icons
+#
+# The basic idea is that if you have customised your web root and you don't 
+# want the apache install/upgrade to add any files to your default web 
+# directories simply set this to YES.
+#
+# NOTE: Default error pages will always be installed regardless of what
+# APACHE_DEFAULT_FILES is set to.
+#
+.if defined(APACHE_DEFAULT_FILES) && !empty(APACHE_DEFAULT_FILES:M[Nn][Oo])
+INSTALL_TARGET=install install-error install-other install-include \
+       install-suexec install-man install-build
+.else
+APACHE_DEFAULT_FILES?= YES
+PLIST_SRC+=    ${PKGDIR}/PLIST.deffiles
+.endif
+
 .include "../../mk/bsd.prefs.mk"
 
 DFLT_APACHE_MODULES=   all
@@ -79,6 +104,27 @@
 OWN_DIRS=              /var/log/httpd
 OWN_DIRS+=             /var/db/httpd
 OWN_DIRS_PERMS+=       /var/db/httpd/proxy ${APACHE_USER} ${APACHE_GROUP} 0755
+FIX_PERMS=             apachectl apxs dbmmanage envvars-std
+
+SUBST_CLASSES=         paths
+SUBST_STAGE.paths=     pre-configure
+SUBST_FILES.paths=     config.layout   
+SUBST_SED.paths=       -e "s|@PREFIX@|${PREFIX}|g"
+SUBST_MESSAGE.paths=   "Fixing paths."
+
+SUBST_CLASSES+=                confs
+SUBST_STAGE.confs=     post-install
+SUBST_FILES.confs=     ${EGDIR}/highperformance-std.conf \
+                       ${EGDIR}/httpd-std.conf \
+                       ${EGDIR}/ssl-std.conf
+SUBST_SED.confs=       -e "s|${EGDIR}|${PKG_SYSCONFDIR}|g" \
+                       -e "s|${PREFIX}/htdocs|${PREFIX}/share/httpd/htdocs|g" \
+                       -e "s|${PREFIX}/conf|${PKG_SYSCONFDIR}|g" \
+                       -e "s|logs/|/var/log/httpd/|g" \
+                       -e "s|/var/log/httpd/foo\.log|logs/foo.log/|g" \
+                       -e "s|^\(User[   ]\).*|\1${APACHE_USER}|g" \
+                       -e "s|^\(Group[  ]\).*|\1${APACHE_GROUP}|g"
+SUBST_MESSAGE.confs=   "Fixing configuration files."
 
 # Add dependencies for the modules that will be built.  For each module
 # ap_mod listed in ${APACHE_MODULES}, _AP_DEPENDS.ap_mod is a whitespace
@@ -107,32 +153,19 @@
 .  endif
 .endfor
 
-AP_CONF_FILE_SED=      -e "s|${EGDIR}|${PKG_SYSCONFDIR}|g"
-AP_CONF_FILE_SED+=     -e "s|${PREFIX}/htdocs|${PREFIX}/share/httpd/htdocs|g"
-AP_CONF_FILE_SED+=     -e "s|${PREFIX}/conf|${PKG_SYSCONFDIR}|g"
-AP_CONF_FILE_SED+=     -e "s|logs/|/var/log/httpd/|g"
-AP_CONF_FILE_SED+=     -e "s|/var/log/httpd/foo\.log|logs/foo.log/|g"
-AP_CONF_FILE_SED+=     -e "s|^\(User[   ]\).*|\1${APACHE_USER}|g"
-AP_CONF_FILE_SED+=     -e "s|^\(Group[  ]\).*|\1${APACHE_GROUP}|g"
-
-pre-configure:
-       ${SED} -e 's|@PREFIX@|${PREFIX}|g' < ${WRKSRC}/config.layout    \
-               > ${WRKSRC}/config.layout.new
-       ${MV} ${WRKSRC}/config.layout.new ${WRKSRC}/config.layout
-
-post-install:
-       ${LN} -sf ${LOCALBASE}/libexec/apr/libtool ${PREFIX}/share/httpd/build
+pre-install:
        @cd ${WRKSRC}; ${SETENV} ${MAKE_ENV}                            \
                ${MAKE_PROGRAM} install-conf sysconfdir="${EGDIR}"
+ 
+post-install:
+       @${LN} -sf ${LOCALBASE}/libexec/apr/libtool ${PREFIX}/share/httpd/build
        @cd ${EGDIR};                                                   \
        for file in                                                     \
                highperformance-std.conf                                \
                httpd-std.conf                                          \
                ssl-std.conf;                                           \
        do                                                              \
-               ${CAT} $${file}                                         \
-               | ${SED} ${AP_CONF_FILE_SED}                            \
-               | ${AWK} '                                              \
+               ${CAT} $${file} | ${AWK} '                              \
                        /^Listen[       ]*80/   {                       \
                                print;                                  \
                                printf "%s", "Listen 0.0.0.0:80\n";     \
@@ -148,6 +181,16 @@
                ${MV} -f $${file}.new $${file};                         \
        done
 
+.if defined(APACHE_DEFAULT_FILES) && !empty(APACHE_DEFAULT_FILES:M[Yy][Ee][Ss])
+       @${INSTALL_DATA_DIR} ${PREFIX}/share/httpd/manual
+       @cd ${WRKSRC}/docs/manual && ${PAX} -rw . ${PREFIX}/share/httpd/manual
+.endif
+
+       for file in ${FIX_PERMS}; do \
+               ${CHOWN} ${BINOWN}:${BINGRP} ${PREFIX}/sbin/$$file && \
+               ${CHMOD} ${BINMODE} ${PREFIX}/sbin/$$file; \
+       done
+
 .include "Makefile.common"
 
 .include "../../devel/apr/buildlink3.mk"
diff -r 8d0ab42d9c8b -r 9fe4095b4659 www/apache2/Makefile.common
--- a/www/apache2/Makefile.common       Wed Jul 14 08:03:16 2004 +0000
+++ b/www/apache2/Makefile.common       Wed Jul 14 08:28:51 2004 +0000
@@ -1,5 +1,5 @@
 DISTNAME=              httpd-${APACHE_VERSION}
-APACHE_VERSION=                2.0.49
+APACHE_VERSION=                2.0.50
 APR_VERSION=            0.9.5
 MASTER_SITES=          ${MASTER_SITE_APACHE:=httpd/} \
                        ${MASTER_SITE_APACHE:=httpd/old/} \
diff -r 8d0ab42d9c8b -r 9fe4095b4659 www/apache2/PLIST
--- a/www/apache2/PLIST Wed Jul 14 08:03:16 2004 +0000
+++ b/www/apache2/PLIST Wed Jul 14 08:28:51 2004 +0000
@@ -1,57 +1,55 @@
-@comment $NetBSD: PLIST,v 1.20 2004/04/23 22:07:59 reed Exp $
+@comment $NetBSD: PLIST,v 1.21 2004/07/14 08:28:51 adrianp Exp $
 include/httpd/ap_compat.h
-include/httpd/ap_config.h
-include/httpd/ap_config_auto.h
-include/httpd/ap_config_layout.h
-include/httpd/ap_listen.h
-include/httpd/ap_mmn.h
-include/httpd/ap_mpm.h
-include/httpd/ap_provider.h
-include/httpd/ap_regkey.h
+include/httpd/util_time.h
+include/httpd/util_script.h
+include/httpd/util_md5.h
+include/httpd/util_ldap.h
+include/httpd/util_filter.h
+include/httpd/util_ebcdic.h
+include/httpd/util_charset.h
+include/httpd/util_cfgtree.h
+include/httpd/scoreboard.h
+include/httpd/rfc1413.h
+include/httpd/pcreposix.h
+include/httpd/mpm_common.h
+include/httpd/httpd.h
+include/httpd/http_vhost.h
+include/httpd/http_request.h
+include/httpd/http_protocol.h
+include/httpd/http_main.h
+include/httpd/http_log.h
+include/httpd/http_core.h
+include/httpd/http_connection.h
+include/httpd/http_config.h
 include/httpd/ap_release.h
-include/httpd/http_config.h
-include/httpd/http_connection.h
-include/httpd/http_core.h
-include/httpd/http_log.h
-include/httpd/http_main.h
-include/httpd/http_protocol.h
-include/httpd/http_request.h
-include/httpd/http_vhost.h
-include/httpd/httpd.h
-include/httpd/mod_cgi.h
-include/httpd/mod_core.h
+include/httpd/ap_regkey.h
+include/httpd/ap_provider.h
+include/httpd/ap_mpm.h
+include/httpd/ap_mmn.h
+include/httpd/ap_listen.h
+include/httpd/ap_config_layout.h
+include/httpd/ap_config_auto.h
+include/httpd/ap_config.h
+include/httpd/util_xml.h
+include/httpd/os.h
+include/httpd/mpm_default.h
+include/httpd/mpm.h
 include/httpd/mod_dav.h
 include/httpd/mod_include.h
-include/httpd/mod_log_config.h
-include/httpd/mod_proxy.h
-include/httpd/mod_ssl.h
+include/httpd/mod_cgi.h
 include/httpd/mod_status.h
-include/httpd/mpm.h
-include/httpd/mpm_common.h
-include/httpd/mpm_default.h
-include/httpd/os.h
-include/httpd/pcre.h
-include/httpd/pcreposix.h
-include/httpd/rfc1413.h
-include/httpd/scoreboard.h
+include/httpd/mod_log_config.h
+include/httpd/mod_core.h
+include/httpd/mod_proxy.h
+include/httpd/ssl_util_table.h
+include/httpd/ssl_util_ssl.h
 include/httpd/ssl_expr.h
-include/httpd/ssl_expr_parse.h
 include/httpd/ssl_toolkit_compat.h
-include/httpd/ssl_util_ssl.h
-include/httpd/ssl_util_table.h
+include/httpd/ssl_expr_parse.h
+include/httpd/mod_ssl.h
+include/httpd/pcre.h
 include/httpd/unixd.h
-include/httpd/util_cfgtree.h
-include/httpd/util_charset.h
-include/httpd/util_ebcdic.h
-include/httpd/util_filter.h
-include/httpd/util_ldap.h
-include/httpd/util_md5.h
-include/httpd/util_script.h
-include/httpd/util_time.h
-include/httpd/util_xml.h
 lib/httpd/httpd.exp
-libexec/cgi-bin/printenv
-libexec/cgi-bin/test-cgi
 man/man1/dbmmanage.1
 man/man1/htdigest.1
 man/man1/htpasswd.1
@@ -89,1333 +87,33 @@
 share/httpd/build/program.mk
 share/httpd/build/rules.mk
 share/httpd/build/special.mk
-share/httpd/error/HTTP_BAD_GATEWAY.html.var
-share/httpd/error/HTTP_BAD_REQUEST.html.var
-share/httpd/error/HTTP_FORBIDDEN.html.var
-share/httpd/error/HTTP_GONE.html.var
-share/httpd/error/HTTP_INTERNAL_SERVER_ERROR.html.var
-share/httpd/error/HTTP_LENGTH_REQUIRED.html.var
-share/httpd/error/HTTP_METHOD_NOT_ALLOWED.html.var
-share/httpd/error/HTTP_NOT_ACCEPTABLE.html.var
-share/httpd/error/HTTP_NOT_FOUND.html.var
-share/httpd/error/HTTP_NOT_IMPLEMENTED.html.var
-share/httpd/error/HTTP_PRECONDITION_FAILED.html.var
-share/httpd/error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
-share/httpd/error/HTTP_REQUEST_TIME_OUT.html.var



Home | Main Index | Thread Index | Old Index