Author: glen                         Date: Fri Sep 19 14:37:15 2008 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- up to r2303:
  * close connection after redirect in trigger_b4_dl (thx icy)
  * close connection in mod_magnet if returned status code
  * fix bug with IPv6 in mod_evasive (#1579)
  * fix scgi HTTP/1.* status parsing (#1638), found by [EMAIL PROTECTED]
  * [tests] fixed system, use foreground daemons and waitpid
  * [tests] removed pidfile from test system
  * [tests] fixed tests needing php running (if not running on port 1026, 
search php in env[PHP] or /usr/bin/php-cgi)
  * fixed typo in mod_accesslog (#1699)
  * replaced buffer_{append,copy}_string with the _len variant where possible 
(#1732) (thx crypt)
  * case insensitive match for secdownload md5 token (#1710)
  * Handle only HEAD, GET and POST in mod_dirlisting (same as in staticfile) 
(#1687)
  * fixed mod_secdownload problem with unsigned time_t (#1688)
  * handle EAGAIN and EINTR for freebsd sendfile (#1675)
  * Use filedescriptor 0 for mod_scgi spawn socket, redirect STDERR to 
/dev/null (#1716)
  * fixed round-robin balancing in mod_proxy (#1715)
  * fixed EINTR handling for waitpid in mod_fastcgi
  * mod_{fast,s}cgi: overwrite environment variables (#1722)
  * inserted many con->mode checks; they should prevent two modules to handle 
the same request if they shouldn't (#631)
  * fixed url encoding to encode more characters (#266)
  * allow digits in [s]cgi env vars (#1712)
  * fixed dropping last character of evhost pattern (#161)
  * print helpful error message on conditionals in global block (#1550)
  * decode url before matching in mod_rewrite (#1720)
  * fixed conditional patching of ldap filter (#1564)
  * Match headers case insensitive in response (removing of 
X-{Sendfile,LIGHTTPD-*}, catching Date/Server)
  * fixed bug with case-insensitive filenames in mod_userdir (#1589), spotted 
by "anders1"
  * fixed format string bugs in mod_accesslog for SYSLOG
  * replaced fprintf with log_error_write in fastcgi debug
  * fixed mem leak in ssi expression parser (#1753), thx Take5k
  * hide some ssl errors per default, enable them with debug.log-ssl-noise 
(#397)
  * do not send content-encoding for 304 (#1754), thx yzlai
  * fix segfault for stat_cache(fam) calls with relative path (without '/', can 
be triggered by x-sendfile) (#1750)
  * fix splitting of auth-ldap filter
  * workaround ldap connection leak if a ldap connection failed (restarting 
ldap)

---- Files affected:
SOURCES:
   lighttpd-branch.diff (1.38 -> 1.39) 

---- Diffs:

================================================================
Index: SOURCES/lighttpd-branch.diff
diff -u SOURCES/lighttpd-branch.diff:1.38 SOURCES/lighttpd-branch.diff:1.39
--- SOURCES/lighttpd-branch.diff:1.38   Mon Jul 14 17:53:06 2008
+++ SOURCES/lighttpd-branch.diff        Fri Sep 19 16:37:09 2008
@@ -1,7 +1,7 @@
 Index: lighttpd.spec.in
 ===================================================================
---- lighttpd.spec.in   (.../tags/lighttpd-1.4.19)      (revision 2199)
-+++ lighttpd.spec.in   (.../branches/lighttpd-1.4.x)   (revision 2199)
+--- lighttpd.spec.in   (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ lighttpd.spec.in   (.../branches/lighttpd-1.4.x)   (revision 2303)
 @@ -1,83 +0,0 @@
 -Summary: A fast webserver with minimal memory-footprint (lighttpd)
 -Name: lighttpd
@@ -90,8 +90,8 @@
 ===================================================================
 Index: src/mod_ssi_exprparser.h
 ===================================================================
---- src/mod_ssi_exprparser.h   (.../tags/lighttpd-1.4.19)      (revision 2199)
-+++ src/mod_ssi_exprparser.h   (.../branches/lighttpd-1.4.x)   (revision 2199)
+--- src/mod_ssi_exprparser.h   (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/mod_ssi_exprparser.h   (.../branches/lighttpd-1.4.x)   (revision 2303)
 @@ -1,12 +0,0 @@
 -#define TK_AND                             1
 -#define TK_OR                              2
@@ -107,8 +107,26 @@
 -#define TK_VALUE                          12
 Index: src/configfile-glue.c
 ===================================================================
---- src/configfile-glue.c      (.../tags/lighttpd-1.4.19)      (revision 2199)
-+++ src/configfile-glue.c      (.../branches/lighttpd-1.4.x)   (revision 2199)
+--- src/configfile-glue.c      (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/configfile-glue.c      (.../branches/lighttpd-1.4.x)   (revision 2303)
+@@ -155,7 +155,7 @@
+               /* touched */
+               touched = data_string_init();
+ 
+-              buffer_copy_string(touched->value, "");
++              buffer_copy_string_len(touched->value, CONST_STR_LEN(""));
+               buffer_copy_string_buffer(touched->key, du->key);
+ 
+               array_insert_unique(srv->config_touched, (data_unset *)touched);
+@@ -260,7 +260,7 @@
+                               if (ck_colon) {
+                                       /* condition "host:port" but client 
send "host" */
+                                       
buffer_copy_string_buffer(srv->cond_check_buf, l);
+-                                      
BUFFER_APPEND_STRING_CONST(srv->cond_check_buf, ":");
++                                      
buffer_append_string_len(srv->cond_check_buf, CONST_STR_LEN(":"));
+                                       buffer_append_long(srv->cond_check_buf, 
sock_addr_get_port(&(srv_sock->addr)));
+                                       l = srv->cond_check_buf;
+                               } else if (!ck_colon) {
 @@ -529,7 +529,7 @@
  int config_append_cond_match_buffer(connection *con, data_config *dc, buffer 
*buf, int n)
  {
@@ -120,8 +138,26 @@
  
 Index: src/mod_cgi.c
 ===================================================================
---- src/mod_cgi.c      (.../tags/lighttpd-1.4.19)      (revision 2199)
-+++ src/mod_cgi.c      (.../branches/lighttpd-1.4.x)   (revision 2199)
+--- src/mod_cgi.c      (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/mod_cgi.c      (.../branches/lighttpd-1.4.x)   (revision 2303)
+@@ -912,7 +912,7 @@
+                               buffer_reset(p->tmp_buf);
+ 
+                               if (0 != strcasecmp(ds->key->ptr, 
"CONTENT-TYPE")) {
+-                                      buffer_copy_string(p->tmp_buf, "HTTP_");
++                                      buffer_copy_string_len(p->tmp_buf, 
CONST_STR_LEN("HTTP_"));
+                                       p->tmp_buf->used--; /* strip \0 after 
HTTP_ */
+                               }
+ 
+@@ -949,7 +949,7 @@
+ 
+                               for (j = 0; j < ds->key->used - 1; j++) {
+                                       p->tmp_buf->ptr[p->tmp_buf->used++] =
+-                                              isalpha((unsigned 
char)ds->key->ptr[j]) ?
++                                              light_isalnum((unsigned 
char)ds->key->ptr[j]) ?
+                                               toupper((unsigned 
char)ds->key->ptr[j]) : '_';
+                               }
+                               p->tmp_buf->ptr[p->tmp_buf->used++] = '\0';
 @@ -987,6 +987,8 @@
                        *c = '/';
                }
@@ -171,11 +207,129 @@
                                        break;
                                }
                                chunkqueue_remove_finished_chunks(cq);
+@@ -1174,6 +1180,8 @@
+       plugin_data *p = p_d;
+       buffer *fn = con->physical.path;
+ 
++      if (con->mode != DIRECT) return HANDLER_GO_ON;
++
+       if (fn->used == 0) return HANDLER_GO_ON;
+ 
+       mod_cgi_patch_connection(srv, con, p);
+@@ -1189,6 +1197,7 @@
+ 
+               if (0 == strncmp(fn->ptr + s_len - ct_len, ds->key->ptr, 
ct_len)) {
+                       if (cgi_create_env(srv, con, p, ds->value)) {
++                              con->mode = DIRECT;
+                               con->http_status = 500;
+ 
+                               buffer_reset(con->physical.path);
+Index: src/mod_secure_download.c
+===================================================================
+--- src/mod_secure_download.c  (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/mod_secure_download.c  (.../branches/lighttpd-1.4.x)   (revision 2303)
+@@ -204,6 +204,8 @@
+       time_t ts = 0;
+       size_t i;
+ 
++      if (con->mode != DIRECT) return HANDLER_GO_ON;
++
+       if (con->uri.path->used == 0) return HANDLER_GO_ON;
+ 
+       mod_secdownload_patch_connection(srv, con, p);
+@@ -243,8 +245,8 @@
+       }
+ 
+       /* timed-out */
+-      if (srv->cur_ts - ts > p->conf.timeout ||
+-          srv->cur_ts - ts < -p->conf.timeout) {
++      if ( (srv->cur_ts > ts && srv->cur_ts - ts > p->conf.timeout) ||
++           (srv->cur_ts < ts && ts - srv->cur_ts > p->conf.timeout) ) {
+               /* "Gone" as the url will never be valid again instead of "408 
- Timeout" where the request may be repeated */
+               con->http_status = 410;
+ 
+@@ -268,7 +270,7 @@
+ 
+       buffer_copy_string_hex(p->md5, (char *)HA1, 16);
+ 
+-      if (0 != strncmp(md5_str, p->md5->ptr, 32)) {
++      if (0 != strncasecmp(md5_str, p->md5->ptr, 32)) {
+               con->http_status = 403;
+ 
+               log_error_write(srv, __FILE__, __LINE__, "sss",
+Index: src/array.c
+===================================================================
+--- src/array.c        (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/array.c        (.../branches/lighttpd-1.4.x)   (revision 2303)
+@@ -330,30 +330,30 @@
+       a = array_init();
+ 
+       ds = data_string_init();
+-      buffer_copy_string(ds->key, "abc");
+-      buffer_copy_string(ds->value, "alfrag");
++      buffer_copy_string_len(ds->key, CONST_STR_LEN("abc"));
++      buffer_copy_string_len(ds->value, CONST_STR_LEN("alfrag"));
+ 
+       array_insert_unique(a, (data_unset *)ds);
+ 
+       ds = data_string_init();
+-      buffer_copy_string(ds->key, "abc");
+-      buffer_copy_string(ds->value, "hameplman");
++      buffer_copy_string_len(ds->key, CONST_STR_LEN("abc"));
++      buffer_copy_string_len(ds->value, CONST_STR_LEN("hameplman"));
+ 
+       array_insert_unique(a, (data_unset *)ds);
+ 
+       ds = data_string_init();
+-      buffer_copy_string(ds->key, "123");
+-      buffer_copy_string(ds->value, "alfrag");
++      buffer_copy_string_len(ds->key, CONST_STR_LEN("123"));
++      buffer_copy_string_len(ds->value, CONST_STR_LEN("alfrag"));
+ 
+       array_insert_unique(a, (data_unset *)ds);
+ 
+       dc = data_count_init();
+-      buffer_copy_string(dc->key, "def");
++      buffer_copy_string_len(dc->key, CONST_STR_LEN("def"));
+ 
+       array_insert_unique(a, (data_unset *)dc);
+ 
+       dc = data_count_init();
+-      buffer_copy_string(dc->key, "def");
++      buffer_copy_string_len(dc->key, CONST_STR_LEN("def"));
+ 
+       array_insert_unique(a, (data_unset *)dc);
+ 
+Index: src/base.h
+===================================================================
+--- src/base.h (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/base.h (.../branches/lighttpd-1.4.x)   (revision 2303)
+@@ -259,6 +259,7 @@
+       unsigned short log_request_handling;
+       unsigned short log_response_header;
+       unsigned short log_condition_handling;
++      unsigned short log_ssl_noise;
+ 
+ 
+       /* server wide */
 Index: src/mod_rewrite.c
 ===================================================================
---- src/mod_rewrite.c  (.../tags/lighttpd-1.4.19)      (revision 2199)
-+++ src/mod_rewrite.c  (.../branches/lighttpd-1.4.x)   (revision 2199)
-@@ -385,8 +385,7 @@
+--- src/mod_rewrite.c  (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/mod_rewrite.c  (.../branches/lighttpd-1.4.x)   (revision 2303)
+@@ -350,7 +350,11 @@
+ 
+       if (!p->conf.rewrite) return HANDLER_GO_ON;
+ 
+-      buffer_copy_string_buffer(p->match_buf, con->request.uri);
++      buffer_copy_string_buffer(p->match_buf, con->uri.path);
++      if (con->uri.query->used > 0) {
++              buffer_append_string_len(p->match_buf, CONST_STR_LEN("?"));
++              buffer_append_string_buffer(p->match_buf, con->uri.query);
++      }
+ 
+       for (i = 0; i < p->conf.rewrite->used; i++) {
+               pcre *match;
+@@ -385,8 +389,7 @@
  
                        start = 0; end = pattern_len;
                        for (k = 0; k < pattern_len; k++) {
@@ -185,7 +339,7 @@
                                        /* got one */
  
                                        size_t num = pattern[k + 1] - '0';
-@@ -395,7 +394,10 @@
+@@ -395,7 +398,10 @@
  
                                        
buffer_append_string_len(con->request.uri, pattern + start, end - start);
  
@@ -199,8 +353,8 @@
                                                        
buffer_append_string(con->request.uri, list[num]);
 Index: src/lempar.c
 ===================================================================
---- src/lempar.c       (.../tags/lighttpd-1.4.19)      (revision 2199)
-+++ src/lempar.c       (.../branches/lighttpd-1.4.x)   (revision 2199)
+--- src/lempar.c       (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/lempar.c       (.../branches/lighttpd-1.4.x)   (revision 2303)
 @@ -210,7 +210,7 @@
  */
  const char *ParseTokenName(int tokenType){
@@ -248,8 +402,8 @@
  %%
 Index: src/connections.c
 ===================================================================
---- src/connections.c  (.../tags/lighttpd-1.4.19)      (revision 2199)
-+++ src/connections.c  (.../branches/lighttpd-1.4.x)   (revision 2199)
+--- src/connections.c  (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/connections.c  (.../branches/lighttpd-1.4.x)   (revision 2303)
 @@ -199,6 +199,7 @@
  
        /* don't resize the buffer if we were in SSL_ERROR_WANT_* */
@@ -258,7 +412,28 @@
        do {
                if (!con->ssl_error_want_reuse_buffer) {
                        b = buffer_init();
-@@ -299,6 +300,8 @@
+@@ -275,9 +276,19 @@
+                       /* fall thourgh */
+               default:
+                       while((ssl_err = ERR_get_error())) {
++                              switch (ERR_GET_REASON(ssl_err)) {
++                              case SSL_R_SSL_HANDSHAKE_FAILURE:
++                              case SSL_R_TLSV1_ALERT_UNKNOWN_CA:
++                              case SSL_R_SSLV3_ALERT_CERTIFICATE_UNKNOWN:
++                              case SSL_R_SSLV3_ALERT_BAD_CERTIFICATE:
++                                      if (!con->conf.log_ssl_noise) continue;
++                                      break;
++                              default:
++                                      break;
++                              }
+                               /* get all errors from the error-queue */
+                               log_error_write(srv, __FILE__, __LINE__, "sds", 
"SSL:",
+-                                              r, ERR_error_string(ssl_err, 
NULL));
++                                              r, ERR_error_string(ssl_err, 
NULL));
+                       }
+                       break;
+               }
+@@ -299,6 +310,8 @@
  
        return 0;
  #else
@@ -267,7 +442,7 @@
        return -1;
  #endif
  }
-@@ -427,21 +430,22 @@
+@@ -427,21 +440,22 @@
        }
  
        switch(con->http_status) {
@@ -303,7 +478,7 @@
                con->file_finished = 0;
  
                buffer_reset(con->physical.path);
-@@ -451,7 +455,8 @@
+@@ -451,7 +465,8 @@
                        stat_cache_entry *sce = NULL;
  
                        buffer_copy_string_buffer(con->physical.path, 
con->conf.errorfile_prefix);
@@ -313,7 +488,42 @@
  
                        if (HANDLER_ERROR != stat_cache_get_entry(srv, con, 
con->physical.path, &sce)) {
                                con->file_finished = 1;
-@@ -497,30 +502,7 @@
+@@ -470,57 +485,34 @@
+                       b = chunkqueue_get_append_buffer(con->write_queue);
+ 
+                       /* build default error-page */
+-                      buffer_copy_string(b,
++                      buffer_copy_string_len(b, CONST_STR_LEN(
+                                          "<?xml version=\"1.0\" 
encoding=\"iso-8859-1\"?>\n"
+                                          "<!DOCTYPE html PUBLIC \"-//W3C//DTD 
XHTML 1.0 Transitional//EN\"\n"
+                                          "         
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\";>\n"
+                                          "<html 
xmlns=\"http://www.w3.org/1999/xhtml\"; xml:lang=\"en\" lang=\"en\">\n"
+                                          " <head>\n"
+-                                         "  <title>");
++                                         "  <title>"));
+                       buffer_append_long(b, con->http_status);
+-                      buffer_append_string(b, " - ");
++                      buffer_append_string_len(b, CONST_STR_LEN(" - "));
+                       buffer_append_string(b, 
get_http_status_name(con->http_status));
+ 
+-                      buffer_append_string(b,
++                      buffer_append_string_len(b, CONST_STR_LEN(
+                                            "</title>\n"
+                                            " </head>\n"
+                                            " <body>\n"
+-                                           "  <h1>");
++                                           "  <h1>"));
+                       buffer_append_long(b, con->http_status);
+-                      buffer_append_string(b, " - ");
++                      buffer_append_string_len(b, CONST_STR_LEN(" - "));
+                       buffer_append_string(b, 
get_http_status_name(con->http_status));
+ 
+-                      buffer_append_string(b,"</h1>\n"
++                      buffer_append_string_len(b, CONST_STR_LEN("</h1>\n"
+                                            " </body>\n"
+                                            "</html>\n"
+-                                           );
++                                           ));
  
                        response_header_overwrite(srv, con, 
CONST_STR_LEN("Content-Type"), CONST_STR_LEN("text/html"));
                }
@@ -344,7 +554,7 @@
        }
  
        if (con->file_finished) {
-@@ -544,7 +526,7 @@
+@@ -544,7 +536,7 @@
                                data_string *ds;
                                /* no Content-Body, no Content-Length */
                                if (NULL != (ds = (data_string*) 
array_get_element(con->response.headers, "Content-Length"))) {
@@ -353,7 +563,7 @@
                                }
                        } else if (qlen > 0 || con->request.http_method != 
HTTP_METHOD_HEAD) {
                                /* qlen = 0 is important for Redirects (301, 
...) as they MAY have
-@@ -846,7 +828,7 @@
+@@ -846,7 +838,7 @@
        }
  
        /* The cond_cache gets reset in response.c */
@@ -362,7 +572,7 @@
  
  #ifdef USE_OPENSSL
        if (con->ssl_error_want_reuse_buffer) {
-@@ -1668,21 +1650,51 @@
+@@ -1668,21 +1660,51 @@
                        }
  #ifdef USE_OPENSSL
                        if (srv_sock->is_ssl) {
@@ -421,10 +631,80 @@
  #endif
  
                        switch(con->mode) {
+Index: src/mod_staticfile.c
+===================================================================
+--- src/mod_staticfile.c       (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/mod_staticfile.c       (.../branches/lighttpd-1.4.x)   (revision 2303)
+@@ -282,22 +282,22 @@
+ 
+                               b = 
chunkqueue_get_append_buffer(con->write_queue);
+ 
+-                              buffer_copy_string(b, "\r\n--");
++                              buffer_copy_string_len(b, 
CONST_STR_LEN("\r\n--"));
+                               buffer_append_string(b, boundary);
+ 
+                               /* write Content-Range */
+-                              buffer_append_string(b, "\r\nContent-Range: 
bytes ");
++                              buffer_append_string_len(b, 
CONST_STR_LEN("\r\nContent-Range: bytes "));
+                               buffer_append_off_t(b, start);
+-                              buffer_append_string(b, "-");
++                              buffer_append_string_len(b, CONST_STR_LEN("-"));
+                               buffer_append_off_t(b, end);
+-                              buffer_append_string(b, "/");
++                              buffer_append_string_len(b, CONST_STR_LEN("/"));
+                               buffer_append_off_t(b, sce->st.st_size);
+ 
+-                              buffer_append_string(b, "\r\nContent-Type: ");
++                              buffer_append_string_len(b, 
CONST_STR_LEN("\r\nContent-Type: "));
+                               buffer_append_string_buffer(b, content_type);
+ 
+                               /* write END-OF-HEADER */
+-                              buffer_append_string(b, "\r\n\r\n");
++                              buffer_append_string_len(b, 
CONST_STR_LEN("\r\n\r\n"));
+ 
+                               con->response.content_length += b->used - 1;
+ 
+@@ -325,7 +325,7 @@
+ 
+               /* set header-fields */
+ 
+-              buffer_copy_string(p->range_buf, "multipart/byteranges; 
boundary=");
++              buffer_copy_string_len(p->range_buf, 
CONST_STR_LEN("multipart/byteranges; boundary="));
+               buffer_append_string(p->range_buf, boundary);
+ 
+               /* overwrite content-type */
+@@ -333,11 +333,11 @@
+       } else {
+               /* add Content-Range-header */
+ 
+-              buffer_copy_string(p->range_buf, "bytes ");
++              buffer_copy_string_len(p->range_buf, CONST_STR_LEN("bytes "));
+               buffer_append_off_t(p->range_buf, start);
+-              buffer_append_string(p->range_buf, "-");
++              buffer_append_string_len(p->range_buf, CONST_STR_LEN("-"));
+               buffer_append_off_t(p->range_buf, end);
+-              buffer_append_string(p->range_buf, "/");
++              buffer_append_string_len(p->range_buf, CONST_STR_LEN("/"));
+               buffer_append_off_t(p->range_buf, sce->st.st_size);
+ 
+               response_header_insert(srv, con, 
CONST_STR_LEN("Content-Range"), CONST_BUF_LEN(p->range_buf));
+Index: src/network.c
+===================================================================
+--- src/network.c      (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/network.c      (.../branches/lighttpd-1.4.x)   (revision 2303)
+@@ -494,7 +494,7 @@
+       b = buffer_init();
+ 
+       buffer_copy_string_buffer(b, srv->srvconf.bindhost);
+-      buffer_append_string(b, ":");
++      buffer_append_string_len(b, CONST_STR_LEN(":"));
+       buffer_append_long(b, srv->srvconf.port);
+ 
+       if (0 != network_server_init(srv, b, srv->config_storage[0])) {
 Index: src/configfile.c
 ===================================================================
---- src/configfile.c   (.../tags/lighttpd-1.4.19)      (revision 2199)
-+++ src/configfile.c   (.../branches/lighttpd-1.4.x)   (revision 2199)
+--- src/configfile.c   (.../tags/lighttpd-1.4.19)      (revision 2303)
++++ src/configfile.c   (.../branches/lighttpd-1.4.x)   (revision 2303)
 @@ -7,6 +7,7 @@
  #include <string.h>
  #include <stdio.h>
@@ -433,7 +713,110 @@
  #include <assert.h>
  
  #include "server.h"
-@@ -305,9 +306,6 @@
+@@ -74,24 +75,25 @@
+               { "debug.log-request-handling",  NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 32 */
+               { "debug.log-response-header",   NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 33 */
+               { "debug.log-request-header",    NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 34 */
++              { "debug.log-ssl-noise",         NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 35 */
+ 
+-              { "server.protocol-http11",      NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 35 */
+-              { "debug.log-request-header-on-error", NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER }, /* 36 */
+-              { "debug.log-state-handling",    NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 37 */
+-              { "ssl.ca-file",                 NULL, T_CONFIG_STRING, 
T_CONFIG_SCOPE_SERVER },      /* 38 */
++              { "server.protocol-http11",      NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 36 */
++              { "debug.log-request-header-on-error", NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER }, /* 37 */
++              { "debug.log-state-handling",    NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 38 */
++              { "ssl.ca-file",                 NULL, T_CONFIG_STRING, 
T_CONFIG_SCOPE_SERVER },      /* 39 */
+ 
+-              { "server.errorlog-use-syslog",  NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 39 */
+-              { "server.range-requests",       NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_CONNECTION }, /* 40 */
+-              { "server.stat-cache-engine",    NULL, T_CONFIG_STRING, 
T_CONFIG_SCOPE_CONNECTION },  /* 41 */
+-              { "server.max-connections",      NULL, T_CONFIG_SHORT, 
T_CONFIG_SCOPE_SERVER },       /* 42 */
+-              { "server.network-backend",      NULL, T_CONFIG_STRING, 
T_CONFIG_SCOPE_CONNECTION },  /* 43 */
+-              { "server.upload-dirs",          NULL, T_CONFIG_ARRAY, 
T_CONFIG_SCOPE_CONNECTION },   /* 44 */
+-              { "server.core-files",           NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_CONNECTION }, /* 45 */
+-              { "ssl.cipher-list",             NULL, T_CONFIG_STRING, 
T_CONFIG_SCOPE_SERVER },      /* 46 */
+-              { "ssl.use-sslv2",               NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_CONNECTION }, /* 47 */
+-              { "etag.use-inode",             NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER }, /* 48 */
+-              { "etag.use-mtime",             NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER }, /* 49 */
+-              { "etag.use-size",             NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER }, /* 50 */
++              { "server.errorlog-use-syslog",  NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER },     /* 40 */
++              { "server.range-requests",       NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_CONNECTION }, /* 41 */
++              { "server.stat-cache-engine",    NULL, T_CONFIG_STRING, 
T_CONFIG_SCOPE_CONNECTION },  /* 42 */
++              { "server.max-connections",      NULL, T_CONFIG_SHORT, 
T_CONFIG_SCOPE_SERVER },       /* 43 */
++              { "server.network-backend",      NULL, T_CONFIG_STRING, 
T_CONFIG_SCOPE_CONNECTION },  /* 44 */
++              { "server.upload-dirs",          NULL, T_CONFIG_ARRAY, 
T_CONFIG_SCOPE_CONNECTION },   /* 45 */
++              { "server.core-files",           NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_CONNECTION }, /* 46 */
++              { "ssl.cipher-list",             NULL, T_CONFIG_STRING, 
T_CONFIG_SCOPE_SERVER },      /* 47 */
++              { "ssl.use-sslv2",               NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_CONNECTION }, /* 48 */
++              { "etag.use-inode",             NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER }, /* 49 */
++              { "etag.use-mtime",             NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER }, /* 50 */
++              { "etag.use-size",             NULL, T_CONFIG_BOOLEAN, 
T_CONFIG_SCOPE_SERVER }, /* 51 */
+               { "server.host",                 "use server.bind instead", 
T_CONFIG_DEPRECATED, T_CONFIG_SCOPE_UNSET },
+               { "server.docroot",              "use server.document-root 
instead", T_CONFIG_DEPRECATED, T_CONFIG_SCOPE_UNSET },
+               { "server.virtual-root",         "load mod_simple_vhost and use 
simple-vhost.server-root instead", T_CONFIG_DEPRECATED, T_CONFIG_SCOPE_UNSET },
+@@ -120,18 +122,18 @@
+ 
+       cv[13].destination = &(srv->srvconf.max_worker);
+       cv[23].destination = &(srv->srvconf.max_fds);
+-      cv[36].destination = &(srv->srvconf.log_request_header_on_error);
+-      cv[37].destination = &(srv->srvconf.log_state_handling);
++      cv[37].destination = &(srv->srvconf.log_request_header_on_error);
++      cv[38].destination = &(srv->srvconf.log_state_handling);
+ 
+-      cv[39].destination = &(srv->srvconf.errorlog_use_syslog);
++      cv[40].destination = &(srv->srvconf.errorlog_use_syslog);
+ 
+       stat_cache_string = buffer_init();
+-      cv[41].destination = stat_cache_string;
+-      cv[43].destination = srv->srvconf.network_backend;
+-      cv[44].destination = srv->srvconf.upload_tempdirs;
+-      cv[45].destination = &(srv->srvconf.enable_cores);
++      cv[42].destination = stat_cache_string;
++      cv[44].destination = srv->srvconf.network_backend;
++      cv[45].destination = srv->srvconf.upload_tempdirs;
++      cv[46].destination = &(srv->srvconf.enable_cores);
+ 
+-      cv[42].destination = &(srv->srvconf.max_conns);
++      cv[43].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 *));
+ 
+@@ -204,16 +206,17 @@
+               cv[32].destination = &(s->log_request_handling);
+               cv[33].destination = &(s->log_response_header);
+               cv[34].destination = &(s->log_request_header);
++              cv[35].destination = &(s->log_ssl_noise);
+ 
+-              cv[35].destination = &(s->allow_http11);
+-              cv[38].destination = s->ssl_ca_file;
+-              cv[40].destination = &(s->range_requests);
++              cv[36].destination = &(s->allow_http11);
++              cv[39].destination = s->ssl_ca_file;
++              cv[41].destination = &(s->range_requests);
+ 
+-              cv[46].destination = s->ssl_cipher_list;
+-              cv[47].destination = &(s->ssl_use_sslv2);
+-              cv[48].destination = &(s->etag_use_inode);
+-              cv[49].destination = &(s->etag_use_mtime);
+-              cv[50].destination = &(s->etag_use_size);
++              cv[47].destination = s->ssl_cipher_list;
++              cv[48].destination = &(s->ssl_use_sslv2);
++              cv[49].destination = &(s->etag_use_inode);
++              cv[50].destination = &(s->etag_use_mtime);
++              cv[51].destination = &(s->etag_use_size);
+ 
+               srv->config_storage[i] = s;
+ 
+@@ -279,6 +282,7 @@
+       PATCH(log_request_handling);
+       PATCH(log_condition_handling);
+       PATCH(log_file_not_found);
++      PATCH(log_ssl_noise);
+ 
+       PATCH(range_requests);
+       PATCH(force_lowercase_filenames);
+@@ -305,9 +309,6 @@
                data_config *dc = (data_config *)srv->config_context->data[i];
                specific_config *s = srv->config_storage[i];
  
@@ -443,7 +826,16 @@
                /* condition didn't match */
                if (!config_check_cond(srv, con, dc)) continue;
  
-@@ -410,8 +408,8 @@
+@@ -371,6 +372,8 @@
+                               PATCH(log_condition_handling);
+                       } else if (buffer_is_equal_string(du->key, 
CONST_STR_LEN("debug.log-file-not-found"))) {
+                               PATCH(log_file_not_found);
++                      } else if (buffer_is_equal_string(du->key, 
CONST_STR_LEN("debug.log-ssl-noise"))) {
++                              PATCH(log_ssl_noise);
+                       } else if (buffer_is_equal_string(du->key, 
CONST_STR_LEN("server.protocol-http11"))) {
+                               PATCH(allow_http11);
+                       } else if (buffer_is_equal_string(du->key, 
CONST_STR_LEN("server.force-lowercase-filenames"))) {
+@@ -410,8 +413,8 @@
  
  #if 0
  static int tokenizer_open(server *srv, tokenizer_t *t, buffer *basedir, const 
char *fn) {
@@ -454,7 +846,152 @@
                        (fn[0] == '.' && (fn[1] == '/' || fn[1] == '\\'))) {
                t->file = buffer_init_string(fn);
        } else {
-@@ -884,8 +882,8 @@
+@@ -480,7 +483,7 @@
+                               if (t->input[t->offset + 1] == '>') {
+                                       t->offset += 2;
+ 
+-                                      buffer_copy_string(token, "=>");
++                                      buffer_copy_string_len(token, 
CONST_STR_LEN("=>"));
+ 
+                                       tid = TK_ARRAY_ASSIGN;
+                               } else {
+@@ -494,13 +497,13 @@
+                               if (t->input[t->offset + 1] == '=') {
+                                       t->offset += 2;
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/lighttpd-branch.diff?r1=1.38&r2=1.39&f=u

_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to