diff options
author | Aaron Walker <ka0ttic@gentoo.org> | 2005-08-02 13:17:59 +0000 |
---|---|---|
committer | Aaron Walker <ka0ttic@gentoo.org> | 2005-08-02 13:17:59 +0000 |
commit | efb9e7a9f4935438ff095f6566da7435fa5d8cdc (patch) | |
tree | 5e560d84a7c51497f4372394c1ee31170d80a216 /www-servers/lighttpd/files | |
parent | Mask latest lighttpd until tigger^ can verify my updates to his zope patch di... (diff) | |
download | historical-efb9e7a9f4935438ff095f6566da7435fa5d8cdc.tar.gz historical-efb9e7a9f4935438ff095f6566da7435fa5d8cdc.tar.bz2 historical-efb9e7a9f4935438ff095f6566da7435fa5d8cdc.zip |
Version bump; 1.3.13-r3 stable on x86; tidy old ebuilds.
Package-Manager: portage-2.0.51.22-r2
Diffstat (limited to 'www-servers/lighttpd/files')
4 files changed, 124 insertions, 2 deletions
diff --git a/www-servers/lighttpd/files/digest-lighttpd-1.3.13-r1 b/www-servers/lighttpd/files/digest-lighttpd-1.3.13-r1 deleted file mode 100644 index d17be2479447..000000000000 --- a/www-servers/lighttpd/files/digest-lighttpd-1.3.13-r1 +++ /dev/null @@ -1 +0,0 @@ -MD5 2f017b936be376ad6f6c2ee26db93467 lighttpd-1.3.13.tar.gz 680068 diff --git a/www-servers/lighttpd/files/digest-lighttpd-1.3.14-r1 b/www-servers/lighttpd/files/digest-lighttpd-1.3.14-r1 deleted file mode 100644 index 98c3c2aa243f..000000000000 --- a/www-servers/lighttpd/files/digest-lighttpd-1.3.14-r1 +++ /dev/null @@ -1 +0,0 @@ -MD5 16d9f8c40bcb5638ee452fa23b21e346 lighttpd-1.3.14.tar.gz 691059 diff --git a/www-servers/lighttpd/files/digest-lighttpd-1.3.16 b/www-servers/lighttpd/files/digest-lighttpd-1.3.16 new file mode 100644 index 000000000000..42a48002fd67 --- /dev/null +++ b/www-servers/lighttpd/files/digest-lighttpd-1.3.16 @@ -0,0 +1 @@ +MD5 b73f7a7ace4901b6417b0e450aaa5df5 lighttpd-1.3.16.tar.gz 706362 diff --git a/www-servers/lighttpd/files/lighttpd-1.3.16-zope-deserves-lovins-too.diff b/www-servers/lighttpd/files/lighttpd-1.3.16-zope-deserves-lovins-too.diff new file mode 100644 index 000000000000..cd9c5e0ae241 --- /dev/null +++ b/www-servers/lighttpd/files/lighttpd-1.3.16-zope-deserves-lovins-too.diff @@ -0,0 +1,123 @@ +diff --exclude='*~' --exclude='.*' -I '$Id:' -urN lighttpd-1.3.16.orig/src/mod_fastcgi.c lighttpd-1.3.16/src/mod_fastcgi.c +--- lighttpd-1.3.16.orig/src/mod_fastcgi.c 2005-08-01 23:15:30.000000000 -0400 ++++ lighttpd-1.3.16/src/mod_fastcgi.c 2005-08-01 23:30:01.000000000 -0400 +@@ -331,6 +331,8 @@ + + pid_t pid; + int got_proc; ++ ++ buffer *extension; /* used extension, used for SCRIPT_NAME/PATH_INFO of check-local=0 */ + + plugin_config conf; + +@@ -357,6 +359,7 @@ + hctx->response = buffer_init(); + hctx->response_header = buffer_init(); + hctx->write_buffer = buffer_init(); ++ hctx->extension = buffer_init(); + + hctx->request_id = 0; + hctx->state = FCGI_STATE_INIT; +@@ -377,6 +380,7 @@ + buffer_free(hctx->response); + buffer_free(hctx->response_header); + buffer_free(hctx->write_buffer); ++ buffer_free(hctx->extension); + + if (hctx->rb) { + if (hctx->rb->ptr) free(hctx->rb->ptr); +@@ -1654,22 +1658,74 @@ + * For AUTHORIZER mode these headers should be omitted. + */ + +- fcgi_env_add(p->fcgi_env, CONST_STR_LEN("SCRIPT_NAME"), CONST_BUF_LEN(con->uri.path)); ++ if (host->check_local == 0 && ++ !buffer_is_empty(hctx->extension) && ++ hctx->extension->ptr[0] == '/') { ++ char *sl; ++ /* no local check and path-prefix /fcgi_pattern ++ * ++ * zope needs this ++ * ++ * SCRIPT_NAME => /fcgi_pattern ++ * PATH_INFO => uri.path - /fcgi_pattern ++ * ++ */ ++ ++ /* search for / in uri.path after /fcgi_pattern ++ * ++ * uri.path = /zope/abc ++ * ++ * pattern SCRIPT_NAME PATH_INFO ++ * /zop /zope /abc ++ * /zope/ /zope /abc ++ * /zope/abc /zope/abc (empty) ++ * / /zope/abc (empty) ++ * ++ */ ++ if (hctx->extension->used == 2) { ++ /* ext is / only */ ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("SCRIPT_NAME"), CONST_STR_LEN("")); ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), CONST_BUF_LEN(con->uri.path)); ++ ++ } else if (hctx->extension->ptr[hctx->extension->used - 2] == '/') { ++ /* last character is a / */ ++ ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("SCRIPT_NAME"), con->uri.path->ptr, hctx->extension->used - 2); ++ if (con->uri.path->used > hctx->extension->used) { ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), ++ con->uri.path->ptr + hctx->extension->used - 2, ++ con->uri.path->used - hctx->extension->used + 1); ++ } else { ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), CONST_STR_LEN("")); ++ } ++ ++ } else if (NULL != (sl = strchr(con->uri.path->ptr + hctx->extension->used - 1, '/'))) { ++ /* a trailing slash was found */ ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("SCRIPT_NAME"), con->uri.path->ptr, sl - con->uri.path->ptr - 1); ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), sl, strlen(sl)); ++ } else { ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("SCRIPT_NAME"), CONST_BUF_LEN(con->uri.path)); ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), CONST_STR_LEN("")); ++ } ++ ++ } else { ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("SCRIPT_NAME"), CONST_BUF_LEN(con->uri.path)); + +- if (!buffer_is_empty(con->request.pathinfo)) { +- fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), CONST_BUF_LEN(con->request.pathinfo)); +- +- /* PATH_TRANSLATED is only defined if PATH_INFO is set */ ++ if (!buffer_is_empty(con->request.pathinfo)) { ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), CONST_BUF_LEN(con->request.pathinfo)); ++ ++ /* PATH_TRANSLATED is only defined if PATH_INFO is set */ + +- if (!buffer_is_empty(host->docroot)) { +- buffer_copy_string_buffer(p->path, host->docroot); ++ if (!buffer_is_empty(host->docroot)) { ++ buffer_copy_string_buffer(p->path, host->docroot); ++ } else { ++ buffer_copy_string_buffer(p->path, con->physical.doc_root); ++ } ++ buffer_append_string_buffer(p->path, con->request.pathinfo); ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_TRANSLATED"), CONST_BUF_LEN(p->path)); + } else { +- buffer_copy_string_buffer(p->path, con->physical.doc_root); ++ fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), CONST_STR_LEN("")); + } +- buffer_append_string_buffer(p->path, con->request.pathinfo); +- fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_TRANSLATED"), CONST_BUF_LEN(p->path)); +- } else { +- fcgi_env_add(p->fcgi_env, CONST_STR_LEN("PATH_INFO"), CONST_STR_LEN("")); + } + } + +@@ -3044,6 +3100,7 @@ + + hctx = handler_ctx_init(); + ++ buffer_copy_string_buffer(hctx->extension, extension->key); + hctx->remote_conn = con; + hctx->plugin_data = p; + hctx->host = host; |