From ce7461677ec057d8c9945b0230d9c81fd99d2cc7 Mon Sep 17 00:00:00 2001 From: clement Date: Fri, 14 Oct 2005 13:54:09 +0000 Subject: - Update to 2.0.55 --- www/apache20/Makefile | 3 +- www/apache20/Makefile.doc | 2 +- www/apache20/distinfo | 4 +- www/apache20/files/patch-fix-byterange | 80 --------------- www/apache20/files/patch-secfix-CAN-2005-1268 | 11 -- www/apache20/files/patch-secfix-CAN-2005-2088 | 20 ---- www/apache20/files/patch-secfix-CAN-2005-2491 | 54 ---------- www/apache20/files/patch-secfix-CAN-2005-2700 | 14 --- .../files/patch-srclib:apr-util:misc:apr_reslist.c | 112 --------------------- www/apache20/pkg-plist | 1 - 10 files changed, 4 insertions(+), 297 deletions(-) delete mode 100644 www/apache20/files/patch-fix-byterange delete mode 100644 www/apache20/files/patch-secfix-CAN-2005-1268 delete mode 100644 www/apache20/files/patch-secfix-CAN-2005-2088 delete mode 100644 www/apache20/files/patch-secfix-CAN-2005-2491 delete mode 100644 www/apache20/files/patch-secfix-CAN-2005-2700 delete mode 100644 www/apache20/files/patch-srclib:apr-util:misc:apr_reslist.c (limited to 'www/apache20') diff --git a/www/apache20/Makefile b/www/apache20/Makefile index 0288452d68db..25b732f0ab94 100644 --- a/www/apache20/Makefile +++ b/www/apache20/Makefile @@ -8,8 +8,7 @@ # PORTNAME= apache -PORTVERSION= 2.0.54 -PORTREVISION= 4 +PORTVERSION= 2.0.55 CATEGORIES= www MASTER_SITES= ${MASTER_SITE_APACHE_HTTPD} \ ${MASTER_SITE_LOCAL:S/%SUBDIR%/clement/}:powerlogo diff --git a/www/apache20/Makefile.doc b/www/apache20/Makefile.doc index d12c49ff82d8..fe76b6f60bd2 100644 --- a/www/apache20/Makefile.doc +++ b/www/apache20/Makefile.doc @@ -103,7 +103,7 @@ MAKE_ENV+= EXAMPLESDIR=${EXAMPLESDIR} MAKE_ENV+= NOPORTDOCS=yes .endif -MAN1= dbmmanage.1 htdigest.1 htpasswd.1 +MAN1= dbmmanage.1 htdigest.1 htpasswd.1 htdbm.1 MAN8= ab.8 apachectl.8 apxs.8 httpd.8 logresolve.8 rotatelogs.8 suexec.8 .if defined(WITHOUT_WWW) diff --git a/www/apache20/distinfo b/www/apache20/distinfo index db2dc3f33270..7be7b126e9d4 100644 --- a/www/apache20/distinfo +++ b/www/apache20/distinfo @@ -1,4 +1,4 @@ -MD5 (apache2/httpd-2.0.54.tar.bz2) = 4ae8a38c6b5db9046616ce10a0d551a2 -SIZE (apache2/httpd-2.0.54.tar.bz2) = 5566979 +MD5 (apache2/httpd-2.0.55.tar.bz2) = f1b5b65c8661db9ffe38b5a4a865a0e2 +SIZE (apache2/httpd-2.0.55.tar.bz2) = 4745220 MD5 (apache2/powerlogo.gif) = 0f106073b3c7844cf22d4df126b27c62 SIZE (apache2/powerlogo.gif) = 5279 diff --git a/www/apache20/files/patch-fix-byterange b/www/apache20/files/patch-fix-byterange deleted file mode 100644 index 1cf190a31e79..000000000000 --- a/www/apache20/files/patch-fix-byterange +++ /dev/null @@ -1,80 +0,0 @@ ---- modules/http/http_protocol.c (original) -+++ modules/http/http_protocol.c Tue Aug 23 01:36:16 2005 -@@ -2856,18 +2856,35 @@ - #define MIN_LENGTH(len1, len2) ((len1 > len2) ? len2 : len1) - request_rec *r = f->r; - conn_rec *c = r->connection; -- byterange_ctx *ctx = f->ctx; -+ byterange_ctx *ctx; - apr_bucket *e; - apr_bucket_brigade *bsend; - apr_off_t range_start; - apr_off_t range_end; - char *current; -- apr_off_t bb_length; - apr_off_t clength = 0; - apr_status_t rv; - int found = 0; - -- if (!ctx) { -+ /* Iterate through the brigade until reaching EOS or a bucket with -+ * unknown length. */ -+ for (e = APR_BRIGADE_FIRST(bb); -+ (e != APR_BRIGADE_SENTINEL(bb) && !APR_BUCKET_IS_EOS(e) -+ && e->length != (apr_size_t)-1); -+ e = APR_BUCKET_NEXT(e)) { -+ clength += e->length; -+ } -+ -+ /* Don't attempt to do byte range work if this brigade doesn't -+ * contain an EOS, or if any of the buckets has an unknown length; -+ * this avoids the cases where it is expensive to perform -+ * byteranging (i.e. may require arbitrary amounts of memory). */ -+ if (!APR_BUCKET_IS_EOS(e) || clength <= 0) { -+ ap_remove_output_filter(f); -+ return ap_pass_brigade(f->next, bb); -+ } -+ -+ { - int num_ranges = ap_set_byterange(r); - - /* We have nothing to do, get out of the way. */ -@@ -2876,7 +2893,7 @@ - return ap_pass_brigade(f->next, bb); - } - -- ctx = f->ctx = apr_pcalloc(r->pool, sizeof(*ctx)); -+ ctx = apr_pcalloc(r->pool, sizeof(*ctx)); - ctx->num_ranges = num_ranges; - /* create a brigade in case we never call ap_save_brigade() */ - ctx->bb = apr_brigade_create(r->pool, c->bucket_alloc); -@@ -2902,29 +2919,6 @@ - ap_xlate_proto_to_ascii(ctx->bound_head, strlen(ctx->bound_head)); - } - } -- -- /* We can't actually deal with byte-ranges until we have the whole brigade -- * because the byte-ranges can be in any order, and according to the RFC, -- * we SHOULD return the data in the same order it was requested. -- * -- * XXX: We really need to dump all bytes prior to the start of the earliest -- * range, and only slurp up to the end of the latest range. By this we -- * mean that we should peek-ahead at the lowest first byte of any range, -- * and the highest last byte of any range. -- */ -- if (!APR_BUCKET_IS_EOS(APR_BRIGADE_LAST(bb))) { -- ap_save_brigade(f, &ctx->bb, &bb, r->pool); -- return APR_SUCCESS; -- } -- -- /* Prepend any earlier saved brigades. */ -- APR_BRIGADE_PREPEND(bb, ctx->bb); -- -- /* It is possible that we won't have a content length yet, so we have to -- * compute the length before we can actually do the byterange work. -- */ -- apr_brigade_length(bb, 1, &bb_length); -- clength = (apr_off_t)bb_length; - - /* this brigade holds what we will be sending */ - bsend = apr_brigade_create(r->pool, c->bucket_alloc); diff --git a/www/apache20/files/patch-secfix-CAN-2005-1268 b/www/apache20/files/patch-secfix-CAN-2005-1268 deleted file mode 100644 index 3b8be849954b..000000000000 --- a/www/apache20/files/patch-secfix-CAN-2005-1268 +++ /dev/null @@ -1,11 +0,0 @@ ---- modules/ssl/ssl_engine_kernel.c 2005/06/08 09:00:24 189561 -+++ modules/ssl/ssl_engine_kernel.c 2005/06/08 09:08:09 189562 -@@ -1398,7 +1398,7 @@ - BIO_printf(bio, ", nextUpdate: "); - ASN1_UTCTIME_print(bio, X509_CRL_get_nextUpdate(crl)); - -- n = BIO_read(bio, buff, sizeof(buff)); -+ n = BIO_read(bio, buff, sizeof(buff) - 1); - buff[n] = '\0'; - - BIO_free(bio); diff --git a/www/apache20/files/patch-secfix-CAN-2005-2088 b/www/apache20/files/patch-secfix-CAN-2005-2088 deleted file mode 100644 index 36fe17ad303c..000000000000 --- a/www/apache20/files/patch-secfix-CAN-2005-2088 +++ /dev/null @@ -1,20 +0,0 @@ ---- server/protocol.c 2005/07/14 16:49:17 219060 -+++ server/protocol.c 2005/07/14 16:51:55 219061 -@@ -885,6 +885,15 @@ - apr_brigade_destroy(tmp_bb); - return r; - } -+ -+ if (apr_table_get(r->headers_in, "Transfer-Encoding") -+ && apr_table_get(r->headers_in, "Content-Length")) { -+ /* 2616 section 4.4, point 3: "if both Transfer-Encoding -+ * and Content-Length are received, the latter MUST be -+ * ignored"; so unset it here to prevent any confusion -+ * later. */ -+ apr_table_unset(r->headers_in, "Content-Length"); -+ } - } - else { - if (r->header_only) { - - diff --git a/www/apache20/files/patch-secfix-CAN-2005-2491 b/www/apache20/files/patch-secfix-CAN-2005-2491 deleted file mode 100644 index 07d2734b58a8..000000000000 --- a/www/apache20/files/patch-secfix-CAN-2005-2491 +++ /dev/null @@ -1,54 +0,0 @@ ---- srclib/pcre/pcre.c.orig Wed Nov 24 20:31:09 2004 -+++ srclib/pcre/pcre.c Thu Aug 25 22:14:56 2005 -@@ -714,7 +714,18 @@ - int min = 0; - int max = -1; - -+/* Read the minimum value and do a paranoid check: a negative value indicates -+an integer overflow. */ -+ - while ((cd->ctypes[*p] & ctype_digit) != 0) min = min * 10 + *p++ - '0'; -+if (min < 0 || min > 65535) -+ { -+ *errorptr = ERR5; -+ return p; -+ } -+ -+/* Read the maximum value if there is one, and again do a paranoid on its size. -+Also, max must not be less than min. */ - - if (*p == '}') max = min; else - { -@@ -722,6 +733,11 @@ - { - max = 0; - while((cd->ctypes[*p] & ctype_digit) != 0) max = max * 10 + *p++ - '0'; -+ if (max < 0 || max > 65535) -+ { -+ *errorptr = ERR5; -+ return p; -+ } - if (max < min) - { - *errorptr = ERR4; -@@ -730,16 +746,11 @@ - } - } - --/* Do paranoid checks, then fill in the required variables, and pass back the --pointer to the terminating '}'. */ -+/* Fill in the required variables, and pass back the pointer to the terminating -+'}'. */ - --if (min > 65535 || max > 65535) -- *errorptr = ERR5; --else -- { -- *minp = min; -- *maxp = max; -- } -+*minp = min; -+*maxp = max; - return p; - } - diff --git a/www/apache20/files/patch-secfix-CAN-2005-2700 b/www/apache20/files/patch-secfix-CAN-2005-2700 deleted file mode 100644 index d720084ed8f9..000000000000 --- a/www/apache20/files/patch-secfix-CAN-2005-2700 +++ /dev/null @@ -1,14 +0,0 @@ ---- modules/ssl/ssl_engine_kernel.c 2005/08/30 15:54:34 264799 -+++ modules/ssl/ssl_engine_kernel.c 2005/08/30 -15:57:38 264800 -@@ -406,8 +406,8 @@ - (!(verify_old & SSL_VERIFY_PEER) && - (verify & SSL_VERIFY_PEER)) || - -- (!(verify_old & SSL_VERIFY_PEER_STRICT) && -- (verify & SSL_VERIFY_PEER_STRICT))) -+ (!(verify_old & SSL_VERIFY_FAIL_IF_NO_PEER_CERT) && -+ (verify & SSL_VERIFY_FAIL_IF_NO_PEER_CERT))) - { - renegotiate = TRUE; - /* optimization */ diff --git a/www/apache20/files/patch-srclib:apr-util:misc:apr_reslist.c b/www/apache20/files/patch-srclib:apr-util:misc:apr_reslist.c deleted file mode 100644 index d6a9fdbf709f..000000000000 --- a/www/apache20/files/patch-srclib:apr-util:misc:apr_reslist.c +++ /dev/null @@ -1,112 +0,0 @@ ---- srclib/apr-util/misc/apr_reslist.c.orig Fri Feb 13 04:52:43 2004 -+++ srclib/apr-util/misc/apr_reslist.c Mon Mar 15 08:21:26 2004 -@@ -49,6 +49,7 @@ - int smax; /* soft maximum on the total number of resources */ - int hmax; /* hard maximum on the total number of resources */ - apr_interval_time_t ttl; /* TTL when we have too many resources */ -+ apr_interval_time_t timeout; /* Timeout for waiting on resource */ - apr_reslist_constructor constructor; - apr_reslist_destructor destructor; - void *params; /* opaque data passed to constructor and destructor calls */ -@@ -118,12 +119,9 @@ - res = apr_pcalloc(reslist->pool, sizeof(*res)); - - rv = reslist->constructor(&res->opaque, reslist->params, reslist->pool); -- if (rv != APR_SUCCESS) { -- return rv; -- } - - *ret_res = res; -- return APR_SUCCESS; -+ return rv; - } - - /** -@@ -132,14 +130,7 @@ - */ - static apr_status_t destroy_resource(apr_reslist_t *reslist, apr_res_t *res) - { -- apr_status_t rv; -- -- rv = reslist->destructor(res->opaque, reslist->params, reslist->pool); -- if (rv != APR_SUCCESS) { -- return rv; -- } -- -- return APR_SUCCESS; -+ return reslist->destructor(res->opaque, reslist->params, reslist->pool); - } - - static apr_status_t reslist_cleanup(void *data_) -@@ -187,6 +178,7 @@ - /* Create the resource */ - rv = create_resource(reslist, &res); - if (rv != APR_SUCCESS) { -+ free_container(reslist, res); - apr_thread_mutex_unlock(reslist->listlock); - return rv; - } -@@ -313,7 +305,15 @@ - * a new one, or something becomes free. */ - else while (reslist->ntotal >= reslist->hmax - && reslist->nidle <= 0) { -- apr_thread_cond_wait(reslist->avail, reslist->listlock); -+ if (reslist->timeout) { -+ if ((rv = apr_thread_cond_timedwait(reslist->avail, -+ reslist->listlock, reslist->timeout)) != APR_SUCCESS) { -+ apr_thread_mutex_unlock(reslist->listlock); -+ return rv; -+ } -+ } -+ else -+ apr_thread_cond_wait(reslist->avail, reslist->listlock); - } - /* If we popped out of the loop, first try to see if there - * are new resources available for immediate use. */ -@@ -329,17 +329,13 @@ - * a resource to fill the slot and use it. */ - else { - rv = create_resource(reslist, &res); -- -- if (rv != APR_SUCCESS) { -- apr_thread_mutex_unlock(reslist->listlock); -- return rv; -+ if (rv == APR_SUCCESS) { -+ reslist->ntotal++; -+ *resource = res->opaque; - } -- -- reslist->ntotal++; -- *resource = res->opaque; - free_container(reslist, res); - apr_thread_mutex_unlock(reslist->listlock); -- return APR_SUCCESS; -+ return rv; - } - } - -@@ -356,6 +352,23 @@ - apr_thread_mutex_unlock(reslist->listlock); - - return reslist_maint(reslist); -+} -+ -+APU_DECLARE(void) apr_reslist_timeout_set(apr_reslist_t *reslist, -+ apr_interval_time_t timeout) -+{ -+ reslist->timeout = timeout; -+} -+ -+APU_DECLARE(apr_status_t) apr_reslist_invalidate(apr_reslist_t *reslist, -+ void *resource) -+{ -+ apr_status_t ret; -+ apr_thread_mutex_lock(reslist->listlock); -+ ret = reslist->destructor(resource, reslist->params, reslist->pool); -+ reslist->ntotal--; -+ apr_thread_mutex_unlock(reslist->listlock); -+ return ret; - } - - #endif /* APR_HAS_THREADS */ - diff --git a/www/apache20/pkg-plist b/www/apache20/pkg-plist index a296908cc563..90d2c03b0574 100644 --- a/www/apache20/pkg-plist +++ b/www/apache20/pkg-plist @@ -269,7 +269,6 @@ share/apache2/build/special.mk %%ERROR%%www/error-dist/HTTP_INTERNAL_SERVER_ERROR.html.var %%ERROR%%www/error-dist/HTTP_LENGTH_REQUIRED.html.var %%ERROR%%www/error-dist/HTTP_METHOD_NOT_ALLOWED.html.var -%%ERROR%%www/error-dist/HTTP_NOT_ACCEPTABLE.html.var %%ERROR%%www/error-dist/HTTP_NOT_FOUND.html.var %%ERROR%%www/error-dist/HTTP_NOT_IMPLEMENTED.html.var %%ERROR%%www/error-dist/HTTP_PRECONDITION_FAILED.html.var -- cgit