Diff for /embedaddon/lighttpd/src/response.c between versions 1.1 and 1.1.1.2

version 1.1, 2013/10/14 10:32:47 version 1.1.1.2, 2014/06/15 20:20:06
Line 305  handler_t http_response_prepare(server *srv, connectio Line 305  handler_t http_response_prepare(server *srv, connectio
                         buffer_copy_string_buffer(con->uri.path_raw, con->request.uri);                          buffer_copy_string_buffer(con->uri.path_raw, con->request.uri);
                 }                  }
   
                   /* decode url to path
                    *
                    * - decode url-encodings  (e.g. %20 -> ' ')
                    * - remove path-modifiers (e.g. /../)
                    */
   
                   if (con->request.http_method == HTTP_METHOD_OPTIONS &&
                       con->uri.path_raw->ptr[0] == '*' && con->uri.path_raw->ptr[1] == '\0') {
                           /* OPTIONS * ... */
                           buffer_copy_string_buffer(con->uri.path, con->uri.path_raw);
                   } else {
                           buffer_copy_string_buffer(srv->tmp_buf, con->uri.path_raw);
                           buffer_urldecode_path(srv->tmp_buf);
                           buffer_path_simplify(con->uri.path, srv->tmp_buf);
                   }
   
                   config_patch_connection(srv, con, COMP_HTTP_URL); /* HTTPurl */
                   config_patch_connection(srv, con, COMP_HTTP_QUERY_STRING); /* HTTPqs */
   
   #ifdef USE_OPENSSL
                   if (con->srv_socket->is_ssl && con->conf.ssl_verifyclient) {
                           https_add_ssl_entries(con);
                   }
   #endif
   
                   /* do we have to downgrade to 1.0 ? */
                   if (!con->conf.allow_http11) {
                           con->request.http_version = HTTP_VERSION_1_0;
                   }
   
                 if (con->conf.log_request_handling) {                  if (con->conf.log_request_handling) {
                         log_error_write(srv, __FILE__, __LINE__,  "s",  "-- splitting Request-URI");                          log_error_write(srv, __FILE__, __LINE__,  "s",  "-- splitting Request-URI");
                        log_error_write(srv, __FILE__, __LINE__,  "sb", "Request-URI  : ", con->request.uri);                        log_error_write(srv, __FILE__, __LINE__,  "sb", "Request-URI     : ", con->request.uri);
                        log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-scheme   : ", con->uri.scheme);                        log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-scheme      : ", con->uri.scheme);
                        log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-authority: ", con->uri.authority);                        log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-authority   : ", con->uri.authority);
                        log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-path     : ", con->uri.path_raw);                        log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-path (raw)  : ", con->uri.path_raw);
                        log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-query    : ", con->uri.query);                        log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-path (clean): ", con->uri.path);
                         log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-query       : ", con->uri.query);
                 }                  }
   
   
Line 336  handler_t http_response_prepare(server *srv, connectio Line 367  handler_t http_response_prepare(server *srv, connectio
                         break;                          break;
                 }                  }
   
                 /* build filename  
                  *  
                  * - decode url-encodings  (e.g. %20 -> ' ')  
                  * - remove path-modifiers (e.g. /../)  
                  */  
   
   
   
                 if (con->request.http_method == HTTP_METHOD_OPTIONS &&  
                     con->uri.path_raw->ptr[0] == '*' && con->uri.path_raw->ptr[1] == '\0') {  
                         /* OPTIONS * ... */  
                         buffer_copy_string_buffer(con->uri.path, con->uri.path_raw);  
                 } else {  
                         buffer_copy_string_buffer(srv->tmp_buf, con->uri.path_raw);  
                         buffer_urldecode_path(srv->tmp_buf);  
                         buffer_path_simplify(con->uri.path, srv->tmp_buf);  
                 }  
   
                 if (con->conf.log_request_handling) {  
                         log_error_write(srv, __FILE__, __LINE__,  "s",  "-- sanatising URI");  
                         log_error_write(srv, __FILE__, __LINE__,  "sb", "URI-path     : ", con->uri.path);  
                 }  
   
 #ifdef USE_OPENSSL  
                 if (con->srv_socket->is_ssl && con->conf.ssl_verifyclient) {  
                         https_add_ssl_entries(con);  
                 }  
 #endif  
   
                 /**                  /**
                  *                   *
                  * call plugins                   * call plugins
Line 373  handler_t http_response_prepare(server *srv, connectio Line 375  handler_t http_response_prepare(server *srv, connectio
                  *                   *
                  */                   */
   
                 config_patch_connection(srv, con, COMP_HTTP_URL); /* HTTPurl */  
                 config_patch_connection(srv, con, COMP_HTTP_QUERY_STRING); /* HTTPqs */  
   
                 /* do we have to downgrade to 1.0 ? */  
                 if (!con->conf.allow_http11) {  
                         con->request.http_version = HTTP_VERSION_1_0;  
                 }  
   
                 switch(r = plugins_call_handle_uri_clean(srv, con)) {                  switch(r = plugins_call_handle_uri_clean(srv, con)) {
                 case HANDLER_GO_ON:                  case HANDLER_GO_ON:
                         break;                          break;
Line 516  handler_t http_response_prepare(server *srv, connectio Line 510  handler_t http_response_prepare(server *srv, connectio
                  *                   *
                  */                   */
   
                   buffer_copy_string_buffer(con->physical.basedir, con->physical.doc_root);
                 buffer_copy_string_buffer(con->physical.path, con->physical.doc_root);                  buffer_copy_string_buffer(con->physical.path, con->physical.doc_root);
                 buffer_copy_string_buffer(con->physical.basedir, con->physical.path);  
                 BUFFER_APPEND_SLASH(con->physical.path);                  BUFFER_APPEND_SLASH(con->physical.path);
                 if (con->physical.rel_path->used &&                  if (con->physical.rel_path->used &&
                     con->physical.rel_path->ptr[0] == '/') {                      con->physical.rel_path->ptr[0] == '/') {
Line 549  handler_t http_response_prepare(server *srv, connectio Line 543  handler_t http_response_prepare(server *srv, connectio
                 if (con->conf.log_request_handling) {                  if (con->conf.log_request_handling) {
                         log_error_write(srv, __FILE__, __LINE__,  "s",  "-- logical -> physical");                          log_error_write(srv, __FILE__, __LINE__,  "s",  "-- logical -> physical");
                         log_error_write(srv, __FILE__, __LINE__,  "sb", "Doc-Root     :", con->physical.doc_root);                          log_error_write(srv, __FILE__, __LINE__,  "sb", "Doc-Root     :", con->physical.doc_root);
                           log_error_write(srv, __FILE__, __LINE__,  "sb", "Basedir      :", con->physical.basedir);
                         log_error_write(srv, __FILE__, __LINE__,  "sb", "Rel-Path     :", con->physical.rel_path);                          log_error_write(srv, __FILE__, __LINE__,  "sb", "Rel-Path     :", con->physical.rel_path);
                         log_error_write(srv, __FILE__, __LINE__,  "sb", "Path         :", con->physical.path);                          log_error_write(srv, __FILE__, __LINE__,  "sb", "Path         :", con->physical.path);
                 }                  }

Removed from v.1.1  
changed lines
  Added in v.1.1.1.2


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>