You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by Roy Fielding <fi...@hyperreal.com> on 1997/05/01 01:02:00 UTC

cvs commit: apache/src CHANGES http_protocol.c

fielding    97/04/30 16:01:59

  Modified:    src       CHANGES http_protocol.c
  Log:
  If an ErrorDocument CGI script is used to respond to an error
  generated by another CGI script which has already read the message
  body of the request, the server would block trying to read the
  message body again.
  
  I thought this problem was fixed by removing the Content-Length header
  field in mod_cgi, but that only fixed it for internal redirects.
  So, I have restored the previously tested and verified fix which is
  specific to ErrorDocument.
  
  Submitted by: Rob Hartill
  Reviewed by: Roy Fielding
  
  Revision  Changes    Path
  1.262     +7 -0      apache/src/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.261
  retrieving revision 1.262
  diff -C3 -r1.261 -r1.262
  *** CHANGES	1997/04/29 03:41:12	1.261
  --- CHANGES	1997/04/30 23:01:56	1.262
  ***************
  *** 1,3 ****
  --- 1,10 ----
  + Changes with Apache 1.2
  + 
  +   *) If an ErrorDocument CGI script is used to respond to an error
  +      generated by another CGI script which has already read the message
  +      body of the request, the server would block trying to read the
  +      message body again.  [Rob Hartill]
  + 
    Changes with Apache 1.2b10
    
      *) Allow HTTPD_ROOT, SERVER_CONFIG_FILE, DEFAULT_PATH, and SHELL_PATH
  
  
  
  1.118     +3 -0      apache/src/http_protocol.c
  
  Index: http_protocol.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/http_protocol.c,v
  retrieving revision 1.117
  retrieving revision 1.118
  diff -C3 -r1.117 -r1.118
  *** http_protocol.c	1997/04/27 06:23:21	1.117
  --- http_protocol.c	1997/04/30 23:01:57	1.118
  ***************
  *** 1348,1353 ****
  --- 1348,1356 ----
    
    int should_client_block (request_rec *r)
    {
  +     if (is_HTTP_ERROR(r->status))
  +         return 0;
  + 
        if (!r->read_chunked && (r->remaining <= 0))
            return 0;