diff options
author | Aaron Walker <ka0ttic@gentoo.org> | 2005-09-29 17:29:28 +0000 |
---|---|---|
committer | Aaron Walker <ka0ttic@gentoo.org> | 2005-09-29 17:29:28 +0000 |
commit | 53536a16e821351ac69954c06c3f414f5a456cf1 (patch) | |
tree | 3c73bd350ea4fa8ddf8813524b4e467b074db29d /www-servers/lighttpd | |
parent | Stable on sparc wrt #106105 (diff) | |
download | gentoo-2-53536a16e821351ac69954c06c3f414f5a456cf1.tar.gz gentoo-2-53536a16e821351ac69954c06c3f414f5a456cf1.tar.bz2 gentoo-2-53536a16e821351ac69954c06c3f414f5a456cf1.zip |
Revision bump; more upstream fixes.
(Portage version: 2.0.52-r1)
Diffstat (limited to 'www-servers/lighttpd')
-rw-r--r-- | www-servers/lighttpd/ChangeLog | 15 | ||||
-rw-r--r-- | www-servers/lighttpd/Manifest | 23 | ||||
-rw-r--r-- | www-servers/lighttpd/files/1.4.4/07_all_r726-sce-set-if-HANDLER_GO_ON.diff | 269 | ||||
-rw-r--r-- | www-servers/lighttpd/files/1.4.4/08_all_r727-fix-another-error-msg-segv.diff | 14 | ||||
-rw-r--r-- | www-servers/lighttpd/files/1.4.4/09_all_r728-handle-written-correctly.diff | 128 | ||||
-rw-r--r-- | www-servers/lighttpd/files/1.4.4/10_all_r729-display-content_ndx.diff | 24 | ||||
-rw-r--r-- | www-servers/lighttpd/files/1.4.4/11_all_r732-dont-starve-waiting-conns.diff | 27 | ||||
-rw-r--r-- | www-servers/lighttpd/files/1.4.4/12_all_r736-fix-max-request-size.diff | 91 | ||||
-rw-r--r-- | www-servers/lighttpd/files/1.4.4/13_all_r745-fix-64bit-crc32.diff | 33 | ||||
-rw-r--r-- | www-servers/lighttpd/files/digest-lighttpd-1.4.4-r2 (renamed from www-servers/lighttpd/files/digest-lighttpd-1.4.4-r1) | 0 | ||||
-rw-r--r-- | www-servers/lighttpd/lighttpd-1.4.4-r2.ebuild (renamed from www-servers/lighttpd/lighttpd-1.4.4-r1.ebuild) | 2 |
11 files changed, 611 insertions, 15 deletions
diff --git a/www-servers/lighttpd/ChangeLog b/www-servers/lighttpd/ChangeLog index 8dc13c798a5a..f9e419cf0cc1 100644 --- a/www-servers/lighttpd/ChangeLog +++ b/www-servers/lighttpd/ChangeLog @@ -1,6 +1,19 @@ # ChangeLog for www-servers/lighttpd # Copyright 2000-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/ChangeLog,v 1.47 2005/09/22 09:39:30 ka0ttic Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/ChangeLog,v 1.48 2005/09/29 17:29:27 ka0ttic Exp $ + +*lighttpd-1.4.4-r2 (29 Sep 2005) + + 29 Sep 2005; Aaron Walker <ka0ttic@gentoo.org> + +files/1.4.4/07_all_r726-sce-set-if-HANDLER_GO_ON.diff, + +files/1.4.4/09_all_r728-handle-written-correctly.diff, + +files/1.4.4/11_all_r732-dont-starve-waiting-conns.diff, + +files/1.4.4/13_all_r745-fix-64bit-crc32.diff, + +files/1.4.4/08_all_r727-fix-another-error-msg-segv.diff, + +files/1.4.4/10_all_r729-display-content_ndx.diff, + +files/1.4.4/12_all_r736-fix-max-request-size.diff, + -lighttpd-1.4.4-r1.ebuild, +lighttpd-1.4.4-r2.ebuild: + Revision bump; more upstream fixes. 22 Sep 2005; Aaron Walker <ka0ttic@gentoo.org> -files/1.4.3/01_all_r716-fix-remoteip-cache-keepalive.diff, diff --git a/www-servers/lighttpd/Manifest b/www-servers/lighttpd/Manifest index 64472b62eede..695db80367d1 100644 --- a/www-servers/lighttpd/Manifest +++ b/www-servers/lighttpd/Manifest @@ -1,11 +1,8 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - MD5 15468c1601f8061e5ad2d5f62b39b964 lighttpd-1.4.3.ebuild 5143 -MD5 7cfdb1530a50feb5e61c8ccbf42edea0 lighttpd-1.4.4-r1.ebuild 5141 MD5 5aaaf3e31839a20fb69fc5526e69d849 lighttpd-1.3.16.ebuild 2547 MD5 49ded22216ffc6092d1a1e04a6e420c1 lighttpd-1.3.13-r3.ebuild 2607 -MD5 4d8249640a07c0685033fbe781ac456b ChangeLog 14914 +MD5 b4e919b0c10a06728b82270c1cff5824 lighttpd-1.4.4-r2.ebuild 5138 +MD5 c895f20cd81087c0fcafe4ccbf23d502 ChangeLog 15483 MD5 6a9d4814404d8d51327e5b8306ee3d7e metadata.xml 726 MD5 1d925aed297ec4541fb230dd19e11bc1 files/spawn-fcgi.confd 1076 MD5 f984dc26b2bc491272d302ab453f6e6b files/lighttpd-1.3.13-ldap-binddn.diff 3863 @@ -20,7 +17,7 @@ MD5 5eb378dcd8905a09175df3e48953100c files/lighttpd-1.3.13-zope-deserves-lovins- MD5 8e76b9feaedbf0286936be381bc5ffac files/lighttpd.initd 1000 MD5 8f9c2d7a51a85b60ef1a6da355083fd0 files/digest-lighttpd-1.4.3 66 MD5 0c57eeef1963af5add8b9608e0bc0d0f files/lighttpd-1.3.13-no-mysql-means-no-mysql.diff 1456 -MD5 10ee947ef00d754e74198ff482c0527d files/digest-lighttpd-1.4.4-r1 66 +MD5 10ee947ef00d754e74198ff482c0527d files/digest-lighttpd-1.4.4-r2 66 MD5 44374d14af9b69b8f60f8d73f14c848d files/lighttpd-1.3.13-pam-name.diff 564 MD5 210f81ad7867965b19993d0a4d8d54e7 files/lighttpd.logrotate 488 MD5 9c1407e95f62ed22da66c4ef5f69c3b5 files/conf/mod_cgi.conf 869 @@ -28,15 +25,15 @@ MD5 df5b2360ea380d988bf16905ab214286 files/conf/lighttpd.conf 8182 MD5 b4c80dba9c626d5f89d3c3797ac6670c files/conf/mod_fastcgi.conf 661 MD5 fef397e7bcf1b741dea211a555e1803c files/conf/mime-types.conf 3291 MD5 3d3f73f5f3046cc609c2178424175a7a files/1.4.4/01_all_r716-fix-remoteip-cache-keepalive.diff 2902 +MD5 dec389763586af8f48bf671c92eb1c78 files/1.4.4/10_all_r729-display-content_ndx.diff 1035 MD5 4aa695a0125bbde51ec234f3494b7364 files/1.4.4/05_all_r724-fix-error-msg-segv.diff 616 MD5 8cb5ff1a3717873bf349a10cf5011af3 files/1.4.4/06_all_r725-fix-NULL-dereference.diff 332 +MD5 f924a986a483d7ce28f9484f18cd7770 files/1.4.4/07_all_r726-sce-set-if-HANDLER_GO_ON.diff 7020 MD5 9edac090a187f3a1862f2277787df479 files/1.4.4/03_all_r722-fix-no-global-mysql-segv.diff 613 +MD5 9df7b7a076aea655916dbc179c2dbdca files/1.4.4/11_all_r732-dont-starve-waiting-conns.diff 866 +MD5 9b828b071da2581ae9b70b95cb7bb366 files/1.4.4/08_all_r727-fix-another-error-msg-segv.diff 678 +MD5 87ec2164d60e46b1893b972667724387 files/1.4.4/09_all_r728-handle-written-correctly.diff 3776 +MD5 68c835a600101e9be7bea9d49e3e22e9 files/1.4.4/12_all_r736-fix-max-request-size.diff 3005 MD5 bb6d7e474027bfabdfcdfff3549498ae files/1.4.4/02_all_r721-add-case-302.diff 358 +MD5 79a9523d859fff7af5021850a7352a1e files/1.4.4/13_all_r745-fix-64bit-crc32.diff 829 MD5 14fefc136222d1747894ce7f7e36c5ee files/1.4.4/04_all_r723-fix-mod_ssi-inf-loop.diff 1407 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.2 (GNU/Linux) - -iD8DBQFDMnwKEZCkKN40op4RApShAKCJRa1yWRu0pnRXRWgcdYRYgZVlGACdHehJ -2R0/RtZbndPTlOIluCX7R/A= -=WKPn ------END PGP SIGNATURE----- diff --git a/www-servers/lighttpd/files/1.4.4/07_all_r726-sce-set-if-HANDLER_GO_ON.diff b/www-servers/lighttpd/files/1.4.4/07_all_r726-sce-set-if-HANDLER_GO_ON.diff new file mode 100644 index 000000000000..872fa036a833 --- /dev/null +++ b/www-servers/lighttpd/files/1.4.4/07_all_r726-sce-set-if-HANDLER_GO_ON.diff @@ -0,0 +1,269 @@ +diff --exclude='*~' --exclude='.*' -I '$Id:' -urN lighttpd-1.4.4.orig/src/stat_cache.c lighttpd-1.4.4/src/stat_cache.c +--- lighttpd-1.4.4.orig/src/stat_cache.c 2005-09-27 00:54:27.000000000 -0400 ++++ lighttpd-1.4.4/src/stat_cache.c 2005-09-27 00:54:44.000000000 -0400 +@@ -179,7 +179,6 @@ + while (sc->files) { + int osize; + splay_tree *node = sc->files; +- stat_cache_entry *sce = node->data; + + osize = sc->files->size; + +@@ -252,8 +251,7 @@ + stat_cache *sc = srv->stat_cache; + size_t events; + +- +- UNUSED(revent); ++ UNUSED(_fce); + /* */ + + if ((revent & FDEVENT_IN) && +@@ -355,7 +353,10 @@ + stat_cache_entry *sce = NULL; + stat_cache *sc; + struct stat st; ++ size_t k; ++#ifdef DEBUG_STAT_CACHE + size_t i; ++#endif + + int file_ndx; + splay_tree *file_node = NULL; +@@ -456,125 +457,121 @@ + return HANDLER_ERROR; + } + +- +- if (S_ISREG(st.st_mode) || S_ISDIR(st.st_mode)) { +- size_t k; +- +- if (S_ISREG(st.st_mode)) { +- int fd; +- /* see if we can open the file for reading */ +- if (-1 == (fd = open(name->ptr, O_RDONLY))) { +- return HANDLER_ERROR; +- } +- close(fd); ++ if (S_ISREG(st.st_mode)) { ++ int fd; ++ /* see if we can open the file for reading */ ++ if (-1 == (fd = open(name->ptr, O_RDONLY))) { ++ return HANDLER_ERROR; + } ++ close(fd); ++ } + +- if (NULL == sce) { +- int osize = 0; ++ if (NULL == sce) { ++ int osize = 0; + +- if (sc->files) { +- osize = sc->files->size; +- } ++ if (sc->files) { ++ osize = sc->files->size; ++ } + +- sce = stat_cache_entry_init(); +- buffer_copy_string_buffer(sce->name, name); +- +- sc->files = splaytree_insert(sc->files, file_ndx, sce); ++ sce = stat_cache_entry_init(); ++ buffer_copy_string_buffer(sce->name, name); ++ ++ sc->files = splaytree_insert(sc->files, file_ndx, sce); + #ifdef DEBUG_STAT_CACHE +- if (ctrl.size == 0) { +- ctrl.size = 16; +- ctrl.used = 0; +- ctrl.ptr = malloc(ctrl.size * sizeof(*ctrl.ptr)); +- } else if (ctrl.size == ctrl.used) { +- ctrl.size += 16; +- ctrl.ptr = realloc(ctrl.ptr, ctrl.size * sizeof(*ctrl.ptr)); +- } ++ if (ctrl.size == 0) { ++ ctrl.size = 16; ++ ctrl.used = 0; ++ ctrl.ptr = malloc(ctrl.size * sizeof(*ctrl.ptr)); ++ } else if (ctrl.size == ctrl.used) { ++ ctrl.size += 16; ++ ctrl.ptr = realloc(ctrl.ptr, ctrl.size * sizeof(*ctrl.ptr)); ++ } + +- ctrl.ptr[ctrl.used++] = file_ndx; ++ ctrl.ptr[ctrl.used++] = file_ndx; + +- assert(sc->files); +- assert(sc->files->data == sce); +- assert(osize + 1 == splaytree_size(sc->files)); ++ assert(sc->files); ++ assert(sc->files->data == sce); ++ assert(osize + 1 == splaytree_size(sc->files)); + #endif +- } ++ } + +- sce->st = st; +- sce->stat_ts = srv->cur_ts; ++ sce->st = st; ++ sce->stat_ts = srv->cur_ts; + +- if (S_ISREG(st.st_mode)) { +- /* determine mimetype */ +- buffer_reset(sce->content_type); ++ if (S_ISREG(st.st_mode)) { ++ /* determine mimetype */ ++ buffer_reset(sce->content_type); + +- for (k = 0; k < con->conf.mimetypes->used; k++) { +- data_string *ds = (data_string *)con->conf.mimetypes->data[k]; +- buffer *type = ds->key; +- +- if (type->used == 0) continue; ++ for (k = 0; k < con->conf.mimetypes->used; k++) { ++ data_string *ds = (data_string *)con->conf.mimetypes->data[k]; ++ buffer *type = ds->key; ++ ++ if (type->used == 0) continue; + +- /* check if the right side is the same */ +- if (type->used > name->used) continue; ++ /* check if the right side is the same */ ++ if (type->used > name->used) continue; + +- if (0 == strncasecmp(name->ptr + name->used - type->used, type->ptr, type->used - 1)) { +- buffer_copy_string_buffer(sce->content_type, ds->value); +- break; +- } ++ if (0 == strncasecmp(name->ptr + name->used - type->used, type->ptr, type->used - 1)) { ++ buffer_copy_string_buffer(sce->content_type, ds->value); ++ break; + } +- etag_create(sce->etag, &(sce->st)); ++ } ++ etag_create(sce->etag, &(sce->st)); + #ifdef HAVE_XATTR +- if (buffer_is_empty(sce->content_type)) { +- stat_cache_attr_get(sce->content_type, name->ptr); +- } +-#endif ++ if (buffer_is_empty(sce->content_type)) { ++ stat_cache_attr_get(sce->content_type, name->ptr); + } ++#endif ++ } + + #ifdef HAVE_FAM_H +- if (sc->fam && +- (srv->srvconf.stat_cache_engine == STAT_CACHE_ENGINE_FAM)) { +- /* is this directory already registered ? */ +- if (!dir_node) { +- fam_dir = fam_dir_entry_init(); +- fam_dir->fc = sc->fam; ++ if (sc->fam && ++ (srv->srvconf.stat_cache_engine == STAT_CACHE_ENGINE_FAM)) { ++ /* is this directory already registered ? */ ++ if (!dir_node) { ++ fam_dir = fam_dir_entry_init(); ++ fam_dir->fc = sc->fam; + +- buffer_copy_string_buffer(fam_dir->name, sc->dir_name); +- +- fam_dir->version = 1; ++ buffer_copy_string_buffer(fam_dir->name, sc->dir_name); ++ ++ fam_dir->version = 1; ++ ++ fam_dir->req = calloc(1, sizeof(FAMRequest)); ++ ++ if (0 != FAMMonitorDirectory(sc->fam, fam_dir->name->ptr, ++ fam_dir->req, fam_dir)) { + +- fam_dir->req = calloc(1, sizeof(FAMRequest)); ++ log_error_write(srv, __FILE__, __LINE__, "sbs", ++ "monitoring dir failed:", ++ fam_dir->name, ++ FamErrlist[FAMErrno]); + +- if (0 != FAMMonitorDirectory(sc->fam, fam_dir->name->ptr, +- fam_dir->req, fam_dir)) { +- +- log_error_write(srv, __FILE__, __LINE__, "sbs", +- "monitoring dir failed:", +- fam_dir->name, +- FamErrlist[FAMErrno]); +- +- fam_dir_entry_free(fam_dir); +- } else { +- int osize = 0; +- +- if (sc->dirs) { +- osize = sc->dirs->size; +- } +- +- sc->dirs = splaytree_insert(sc->dirs, dir_ndx, fam_dir); +- assert(sc->dirs); +- assert(sc->dirs->data == fam_dir); +- assert(osize == (sc->dirs->size - 1)); +- } ++ fam_dir_entry_free(fam_dir); + } else { +- fam_dir = dir_node->data; ++ int osize = 0; ++ ++ if (sc->dirs) { ++ osize = sc->dirs->size; ++ } ++ ++ sc->dirs = splaytree_insert(sc->dirs, dir_ndx, fam_dir); ++ assert(sc->dirs); ++ assert(sc->dirs->data == fam_dir); ++ assert(osize == (sc->dirs->size - 1)); + } ++ } else { ++ fam_dir = dir_node->data; ++ } ++ ++ /* bind the fam_fc to the stat() cache entry */ + +- /* bind the fam_fc to the stat() cache entry */ +- +- if (fam_dir) { +- sce->dir_version = fam_dir->version; +- sce->dir_ndx = dir_ndx; +- } ++ if (fam_dir) { ++ sce->dir_version = fam_dir->version; ++ sce->dir_ndx = dir_ndx; + } +-#endif + } ++#endif ++ + *ret_sce = sce; + + return HANDLER_GO_ON; +@@ -608,7 +605,7 @@ + + int stat_cache_trigger_cleanup(server *srv) { + stat_cache *sc; +- size_t max_ndx = 0, i, j; ++ size_t max_ndx = 0, i; + int *keys; + + sc = srv->stat_cache; +@@ -628,9 +625,11 @@ + node = sc->files; + + if (node && (node->key == ndx)) { ++#ifdef DEBUG_STAT_CACHE ++ size_t j; + int osize = splaytree_size(sc->files); + stat_cache_entry *sce = node->data; +- ++#endif + stat_cache_entry_free(node->data); + sc->files = splaytree_delete(sc->files, ndx); + diff --git a/www-servers/lighttpd/files/1.4.4/08_all_r727-fix-another-error-msg-segv.diff b/www-servers/lighttpd/files/1.4.4/08_all_r727-fix-another-error-msg-segv.diff new file mode 100644 index 000000000000..5c31bd04c6f4 --- /dev/null +++ b/www-servers/lighttpd/files/1.4.4/08_all_r727-fix-another-error-msg-segv.diff @@ -0,0 +1,14 @@ +Modified: branches/lighttpd-merge-1.4.x/src/http-header-glue.c +=================================================================== +--- branches/lighttpd-merge-1.4.x/src/http-header-glue.c 2005-09-22 08:00:28 UTC (rev 726) ++++ branches/lighttpd-merge-1.4.x/src/http-header-glue.c 2005-09-22 08:24:08 UTC (rev 727) +@@ -281,7 +281,8 @@ + } + } else { + log_error_write(srv, __FILE__, __LINE__, "ss", +- con->request.http_if_modified_since, buf); ++ "DEBUG: Last-Modified check failed as the received timestamp was too long:", ++ con->request.http_if_modified_since); + + con->http_status = 412; + return HANDLER_FINISHED; diff --git a/www-servers/lighttpd/files/1.4.4/09_all_r728-handle-written-correctly.diff b/www-servers/lighttpd/files/1.4.4/09_all_r728-handle-written-correctly.diff new file mode 100644 index 000000000000..cb76e78c1845 --- /dev/null +++ b/www-servers/lighttpd/files/1.4.4/09_all_r728-handle-written-correctly.diff @@ -0,0 +1,128 @@ +Modified: branches/lighttpd-merge-1.4.x/src/network_freebsd_sendfile.c +=================================================================== +--- branches/lighttpd-merge-1.4.x/src/network_freebsd_sendfile.c 2005-09-22 08:24:08 UTC (rev 727) ++++ branches/lighttpd-merge-1.4.x/src/network_freebsd_sendfile.c 2005-09-22 09:08:06 UTC (rev 728) +@@ -104,13 +104,14 @@ + } + + /* check which chunks have been written */ ++ cq->bytes_out += r; ++ con->bytes_written += r; + + for(i = 0, tc = c; i < num_chunks; i++, tc = tc->next) { + if (r >= (ssize_t)chunks[i].iov_len) { + /* written */ + r -= chunks[i].iov_len; + tc->offset += chunks[i].iov_len; +- con->bytes_written += chunks[i].iov_len; + + if (chunk_finished) { + /* skip the chunks from further touches */ +@@ -124,7 +125,6 @@ + /* partially written */ + + tc->offset += r; +- con->bytes_written += r; + chunk_finished = 0; + + break; +@@ -182,6 +182,7 @@ + + c->offset += r; + con->bytes_written += r; ++ cq->bytes_out += r; + + if (c->offset == c->file.length) { + chunk_finished = 1; + +Modified: branches/lighttpd-merge-1.4.x/src/network_linux_sendfile.c +=================================================================== +--- branches/lighttpd-merge-1.4.x/src/network_linux_sendfile.c 2005-09-22 08:24:08 UTC (rev 727) ++++ branches/lighttpd-merge-1.4.x/src/network_linux_sendfile.c 2005-09-22 09:08:06 UTC (rev 728) +@@ -95,7 +95,9 @@ + } + + /* check which chunks have been written */ +- ++ cq->bytes_out += r; ++ con->bytes_written += r; ++ + for(i = 0, tc = c; i < num_chunks; i++, tc = tc->next) { + if (r >= (ssize_t)chunks[i].iov_len) { + /* written */ +@@ -119,8 +121,6 @@ + break; + } + } +- cq->bytes_out += r; +- con->bytes_written += r; + + break; + } + +Modified: branches/lighttpd-merge-1.4.x/src/network_openssl.c +=================================================================== +--- branches/lighttpd-merge-1.4.x/src/network_openssl.c 2005-09-22 08:24:08 UTC (rev 727) ++++ branches/lighttpd-merge-1.4.x/src/network_openssl.c 2005-09-22 09:08:06 UTC (rev 728) +@@ -123,6 +123,7 @@ + } else { + c->offset += r; + con->bytes_written += r; ++ cq->bytes_out += r; + } + + if (c->offset == (off_t)c->mem->used - 1) { +@@ -208,6 +209,7 @@ + } else { + c->offset += r; + con->bytes_written += r; ++ cq->bytes_out += r; + } + + if (c->offset == c->file.length) { + +Modified: branches/lighttpd-merge-1.4.x/src/network_write.c +=================================================================== +--- branches/lighttpd-merge-1.4.x/src/network_write.c 2005-09-22 08:24:08 UTC (rev 727) ++++ branches/lighttpd-merge-1.4.x/src/network_write.c 2005-09-22 09:08:06 UTC (rev 728) +@@ -61,6 +61,7 @@ + + c->offset += r; + con->bytes_written += r; ++ cq->bytes_out += r; + + if (c->offset == (off_t)c->mem->used - 1) { + chunk_finished = 1; +@@ -136,6 +137,7 @@ + #endif + c->offset += r; + con->bytes_written += r; ++ cq->bytes_out += r; + + if (c->offset == c->file.length) { + chunk_finished = 1; + +Modified: branches/lighttpd-merge-1.4.x/src/network_writev.c +=================================================================== +--- branches/lighttpd-merge-1.4.x/src/network_writev.c 2005-09-22 08:24:08 UTC (rev 727) ++++ branches/lighttpd-merge-1.4.x/src/network_writev.c 2005-09-22 09:08:06 UTC (rev 728) +@@ -116,6 +116,9 @@ + } + } + ++ cq->bytes_out += r; ++ con->bytes_written += r; ++ + /* check which chunks have been written */ + + for(i = 0, tc = c; i < num_chunks; i++, tc = tc->next) { +@@ -142,9 +145,6 @@ + } + } + +- cq->bytes_out += r; +- con->bytes_written += r; +- + break; + } + case FILE_CHUNK: { diff --git a/www-servers/lighttpd/files/1.4.4/10_all_r729-display-content_ndx.diff b/www-servers/lighttpd/files/1.4.4/10_all_r729-display-content_ndx.diff new file mode 100644 index 000000000000..01f2bb416026 --- /dev/null +++ b/www-servers/lighttpd/files/1.4.4/10_all_r729-display-content_ndx.diff @@ -0,0 +1,24 @@ +Modified: branches/lighttpd-merge-1.4.x/src/configparser.y +=================================================================== +--- branches/lighttpd-merge-1.4.x/src/configparser.y 2005-09-22 13:13:01 UTC (rev 729) ++++ branches/lighttpd-merge-1.4.x/src/configparser.y 2005-09-22 13:33:18 UTC (rev 730) +@@ -162,7 +162,8 @@ + array_insert_unique(ctx->current->value, B); + B = NULL; + } else { +- fprintf(stderr, "Duplicate config variable in conditional 1 %s: %s\n", ++ fprintf(stderr, "Duplicate config variable in conditional %d %s: %s\n", ++ ctx->current->context_ndx, + ctx->current->key->ptr, B->key->ptr); + ctx->ok = 0; + B->free(B); +@@ -196,7 +197,8 @@ + array_insert_unique(ctx->current->value, du); + } + } else { +- fprintf(stderr, "Undefined config variable in conditional 1 %s: %s\n", ++ fprintf(stderr, "Undefined config variable in conditional %d %s: %s\n", ++ ctx->current->context_ndx, + ctx->current->key->ptr, A->ptr); + ctx->ok = 0; + } diff --git a/www-servers/lighttpd/files/1.4.4/11_all_r732-dont-starve-waiting-conns.diff b/www-servers/lighttpd/files/1.4.4/11_all_r732-dont-starve-waiting-conns.diff new file mode 100644 index 000000000000..a9f512ffdfab --- /dev/null +++ b/www-servers/lighttpd/files/1.4.4/11_all_r732-dont-starve-waiting-conns.diff @@ -0,0 +1,27 @@ +Modified: branches/lighttpd-merge-1.4.x/src/network.c +=================================================================== +--- branches/lighttpd-merge-1.4.x/src/network.c 2005-09-22 13:45:33 UTC (rev 731) ++++ branches/lighttpd-merge-1.4.x/src/network.c 2005-09-23 16:31:49 UTC (rev 732) +@@ -30,6 +30,7 @@ + server *srv = (server *)s; + server_socket *srv_socket = (server_socket *)context; + connection *con; ++ int loops = 0; + + UNUSED(context); + +@@ -40,8 +41,11 @@ + revents); + return HANDLER_ERROR; + } +- +- while (NULL != (con = connection_accept(srv, srv_socket))) { ++ ++ /* accept()s at most 100 connections directly ++ * ++ * we jump out after 100 to give the waiting connections a chance */ ++ for (loops = 0; loops < 100 && NULL != (con = connection_accept(srv, srv_socket)); loops++) { + handler_t r; + + connection_state_machine(srv, con); + diff --git a/www-servers/lighttpd/files/1.4.4/12_all_r736-fix-max-request-size.diff b/www-servers/lighttpd/files/1.4.4/12_all_r736-fix-max-request-size.diff new file mode 100644 index 000000000000..eb19feea2d5a --- /dev/null +++ b/www-servers/lighttpd/files/1.4.4/12_all_r736-fix-max-request-size.diff @@ -0,0 +1,91 @@ +Modified: src/base.h +=================================================================== +--- src/base.h 2005-09-25 17:11:52 UTC (rev 735) ++++ src/base.h 2005-09-26 08:49:13 UTC (rev 736) +@@ -444,6 +444,7 @@ + unsigned short max_worker; + unsigned short max_fds; + unsigned short max_conns; ++ unsigned short max_request_size; + + unsigned short log_request_header_on_error; + unsigned short log_state_handling; +@@ -464,7 +465,6 @@ + buffer *ssl_ca_file; + unsigned short use_ipv6; + unsigned short is_ssl; +- unsigned short max_request_size; + + buffer *srv_token; + + +Modified: src/configfile.c +=================================================================== +--- src/configfile.c 2005-09-25 17:11:52 UTC (rev 735) ++++ src/configfile.c 2005-09-26 08:49:13 UTC (rev 736) +@@ -114,6 +114,7 @@ + cv[41].destination = stat_cache_string; + + cv[42].destination = &(srv->srvconf.max_conns); ++ cv[12].destination = &(srv->srvconf.max_request_size); + srv->config_storage = calloc(1, srv->config_context->used * sizeof(specific_config *)); + + assert(srv->config_storage); +@@ -131,8 +132,8 @@ + s->error_handler = buffer_init(); + s->server_tag = buffer_init(); + s->errorfile_prefix = buffer_init(); +- s->max_keep_alive_requests = 128; +- s->max_keep_alive_idle = 30; ++ s->max_keep_alive_requests = 16; ++ s->max_keep_alive_idle = 5; + s->max_read_idle = 60; + s->max_write_idle = 360; + s->use_xattr = 0; +@@ -153,7 +154,6 @@ + cv[8].destination = &(s->use_ipv6); + + +- cv[12].destination = &(s->max_request_size); + /* 13 max-worker */ + cv[14].destination = s->document_root; + cv[15].destination = &(s->force_lower_case); + +Modified: src/request.c +=================================================================== +--- src/request.c 2005-09-25 17:11:52 UTC (rev 735) ++++ src/request.c 2005-09-26 08:49:13 UTC (rev 736) +@@ -969,6 +969,7 @@ + /* content-length is missing */ + log_error_write(srv, __FILE__, __LINE__, "s", + "POST-request, but content-length missing -> 411"); ++ con->keep_alive = 0; + + con->http_status = 411; + return 0; +@@ -977,20 +978,22 @@ + /* don't handle more the SSIZE_MAX bytes in content-length */ + if (con->request.content_length > SSIZE_MAX) { + con->http_status = 413; ++ con->keep_alive = 0; + + log_error_write(srv, __FILE__, __LINE__, "sds", + "request-size too long:", con->request.content_length, "-> 413"); + return 0; + } +- ++ + /* divide by 1024 as srvconf.max_request_size is in kBytes */ +- if (srv_socket->max_request_size != 0 && +- (con->request.content_length >> 10) > srv_socket->max_request_size) { ++ if (srv->srvconf.max_request_size != 0 && ++ (con->request.content_length >> 10) > srv->srvconf.max_request_size) { + /* the request body itself is larger then + * our our max_request_size + */ + + con->http_status = 413; ++ con->keep_alive = 0; + + log_error_write(srv, __FILE__, __LINE__, "sds", + "request-size too long:", con->request.content_length, "-> 413"); diff --git a/www-servers/lighttpd/files/1.4.4/13_all_r745-fix-64bit-crc32.diff b/www-servers/lighttpd/files/1.4.4/13_all_r745-fix-64bit-crc32.diff new file mode 100644 index 000000000000..559d5d402727 --- /dev/null +++ b/www-servers/lighttpd/files/1.4.4/13_all_r745-fix-64bit-crc32.diff @@ -0,0 +1,33 @@ +Index: crc32.c +=================================================================== +--- src/crc32.c (revision 735) ++++ src/crc32.c (working copy) +@@ -70,11 +70,9 @@ + }; + + +-unsigned long +-generate_crc32c(char *buffer, size_t length) +-{ +- unsigned int i; +- unsigned long crc32 = ~0L; ++uint32_t generate_crc32c(char *buffer, size_t length) { ++ size_t i; ++ uint32_t crc32 = ~0L; + + for (i = 0; i < length; i++){ + CRC32C(crc32, (unsigned char)buffer[i]); +Index: crc32.h +=================================================================== +--- src/crc32.h (revision 735) ++++ src/crc32.h (working copy) +@@ -2,7 +2,8 @@ + #define __crc32cr_table_h__ + + #include <sys/types.h> ++#include <stdint.h> + +-unsigned long generate_crc32c(char *string, size_t length); ++uint32_t generate_crc32c(char *string, size_t length); + + #endif diff --git a/www-servers/lighttpd/files/digest-lighttpd-1.4.4-r1 b/www-servers/lighttpd/files/digest-lighttpd-1.4.4-r2 index b6411fa9d91d..b6411fa9d91d 100644 --- a/www-servers/lighttpd/files/digest-lighttpd-1.4.4-r1 +++ b/www-servers/lighttpd/files/digest-lighttpd-1.4.4-r2 diff --git a/www-servers/lighttpd/lighttpd-1.4.4-r1.ebuild b/www-servers/lighttpd/lighttpd-1.4.4-r2.ebuild index 0b6f6a731e1d..cb77056eff34 100644 --- a/www-servers/lighttpd/lighttpd-1.4.4-r1.ebuild +++ b/www-servers/lighttpd/lighttpd-1.4.4-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/lighttpd-1.4.4-r1.ebuild,v 1.1 2005/09/21 19:28:39 ka0ttic Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/lighttpd-1.4.4-r2.ebuild,v 1.1 2005/09/29 17:29:28 ka0ttic Exp $ inherit eutils depend.php |