httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From r..@apache.org
Subject cvs commit: httpd-2.0/modules/http http_protocol.c
Date Fri, 26 Jan 2001 17:54:09 GMT
rbb         01/01/26 09:54:08

  Modified:    .        CHANGES STATUS
               modules/http http_protocol.c
  Log:
  Stop using the request filters to filter an error response.  This fixes a
  bug where we were using the byterange filter to filter an error, which
  caused us to close the connection before we had sent any data.  Currently,
  we only keep the three most important filters, but we may need to add more
  in the future.  I am mostly thinking of the charset translation filter.
  
  Revision  Changes    Path
  1.54      +5 -0      httpd-2.0/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/CHANGES,v
  retrieving revision 1.53
  retrieving revision 1.54
  diff -u -d -b -w -u -r1.53 -r1.54
  --- CHANGES	2001/01/24 01:05:44	1.53
  +++ CHANGES	2001/01/26 17:54:02	1.54
  @@ -1,5 +1,10 @@
   Changes with Apache 2.0b1
   
  +  *) If we get an error, then we should remove all filters except for
  +     those critical to serving a web page.  This fixes a bug, where
  +     error pages were going through the byterange filter, even though
  +     that made no sense.  [Ryan Bloom]
  +
     *) Relax the syntax checking of Host: headers in order to support
        iDNS. PR#6635 [Tony Finch]
   
  
  
  
  1.194     +1 -5      httpd-2.0/STATUS
  
  Index: STATUS
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/STATUS,v
  retrieving revision 1.193
  retrieving revision 1.194
  diff -u -d -b -w -u -r1.193 -r1.194
  --- STATUS	2001/01/26 02:27:03	1.193
  +++ STATUS	2001/01/26 17:54:03	1.194
  @@ -1,5 +1,5 @@
   APACHE 2.0 STATUS:						-*-text-*-
  -Last modified at [$Date: 2001/01/26 02:27:03 $]
  +Last modified at [$Date: 2001/01/26 17:54:03 $]
   
   Release:
   
  @@ -29,10 +29,6 @@
       * Root all file systems with <Directory /> for WIN32/OS2/NW permissions 
           Status: patch brought forward from 1.3.14
                   WIN32 and OS2 need review [William Rowe, Brian Harvard]
  -
  -    * Error messages are filtered according to the needs of the original 
  -      URI.  Nothing ensures that they are translated on EBCDIC machines
  -      and *not* translated on ASCII machines.
   
       * Win32: Enable the Windows MPM to honor max_requests_per_child
           Status: FirstBill will fix this?
  
  
  
  1.280     +20 -1     httpd-2.0/modules/http/http_protocol.c
  
  Index: http_protocol.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/http/http_protocol.c,v
  retrieving revision 1.279
  retrieving revision 1.280
  diff -u -d -b -w -u -r1.279 -r1.280
  --- http_protocol.c	2001/01/26 02:53:50	1.279
  +++ http_protocol.c	2001/01/26 17:54:06	1.280
  @@ -3420,6 +3420,24 @@
   	}
   }
   	
  +static void reset_filters(request_rec *r)
  +{
  +    ap_filter_t *f = r->output_filters;
  +
  +    while (f) {
  +        if (!strcasecmp(f->frec->name, "CORE") ||
  +            !strcasecmp(f->frec->name, "CONTENT_LENGTH") ||
  +            !strcasecmp(f->frec->name, "HTTP_HEADER")) {
  +            f = f->next;
  +            continue;
  +        }
  +        else {
  +            f = f->next;
  +            ap_remove_output_filter(f);
  +        }
  +    }
  +}
  +
   /* We should have named this send_canned_response, since it is used for any
    * response that can be generated by the server from the request record.
    * This includes all 204 (no content), 3xx (redirect), 4xx (client error),
  @@ -3437,6 +3455,7 @@
        * this value.
        */
       r->eos_sent = 0;
  +    reset_filters(r);
   
       /*
        * It's possible that the Location field might be in r->err_headers_out
  
  
  

Mime
View raw message