httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From traw...@apache.org
Subject cvs commit: httpd-2.0/modules/arch/win32 mod_isapi.c
Date Mon, 16 Feb 2004 17:57:27 GMT
trawick     2004/02/16 09:57:27

  Modified:    .        CHANGES
               modules/arch/win32 mod_isapi.c
  Log:
  mod_isapi: GetServerVariable returned improperly terminated header
  fields given "ALL_HTTP" or "ALL_RAW".
  
  PR:		20656
  Submitted by:	Jesse Pelton <jsp pkc.com>
  Reviewed by:	Jeff Trawick
  
  Revision  Changes    Path
  1.1404    +4 -0      httpd-2.0/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/CHANGES,v
  retrieving revision 1.1403
  retrieving revision 1.1404
  diff -u -r1.1403 -r1.1404
  --- CHANGES	16 Feb 2004 17:50:28 -0000	1.1403
  +++ CHANGES	16 Feb 2004 17:57:26 -0000	1.1404
  @@ -2,6 +2,10 @@
   
     [Remove entries to the current 2.0 section below, when backported]
   
  +  *) mod_isapi: GetServerVariable returned improperly terminated header 
  +     fields given "ALL_HTTP" or "ALL_RAW".  PR 20656.
  +     [Jesse Pelton <jsp pkc.com>]
  +
     *) mod_isapi: send_response_header() failed to copy status string's 
        last character.  PR 20619.  [Jesse Pelton <jsp pkc.com>]
   
  
  
  
  1.99      +6 -4      httpd-2.0/modules/arch/win32/mod_isapi.c
  
  Index: mod_isapi.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/arch/win32/mod_isapi.c,v
  retrieving revision 1.98
  retrieving revision 1.99
  diff -u -r1.98 -r1.99
  --- mod_isapi.c	16 Feb 2004 17:50:29 -0000	1.98
  +++ mod_isapi.c	16 Feb 2004 17:57:26 -0000	1.99
  @@ -495,7 +495,7 @@
   
       if (!strcmp(variable_name, "ALL_HTTP")) 
       {
  -        /* lf delimited, colon split, comma seperated and 
  +        /* crlf delimited, colon split, comma separated and 
            * null terminated list of HTTP_ vars 
            */
           const apr_array_header_t *arr = apr_table_elts(r->subprocess_env);
  @@ -504,7 +504,7 @@
   
           for (len = 0, i = 0; i < arr->nelts; i++) {
               if (!strncmp(elts[i].key, "HTTP_", 5)) {
  -                len += strlen(elts[i].key) + strlen(elts[i].val) + 2;
  +                len += strlen(elts[i].key) + strlen(elts[i].val) + 3;
               }
           }
     
  @@ -521,6 +521,7 @@
                   *(((char*)buf_data)++) = ':';
                   strcpy(buf_data, elts[i].val);
                   ((char*)buf_data) += strlen(elts[i].val);
  +                *(((char*)buf_data)++) = '\r';
                   *(((char*)buf_data)++) = '\n';
               }
           }
  @@ -532,7 +533,7 @@
       
       if (!strcmp(variable_name, "ALL_RAW")) 
       {
  -        /* lf delimited, colon split, comma seperated and 
  +        /* crlf delimited, colon split, comma separated and 
            * null terminated list of the raw request header
            */
           const apr_array_header_t *arr = apr_table_elts(r->headers_in);
  @@ -540,7 +541,7 @@
           int i;
   
           for (len = 0, i = 0; i < arr->nelts; i++) {
  -            len += strlen(elts[i].key) + strlen(elts[i].val) + 3;
  +            len += strlen(elts[i].key) + strlen(elts[i].val) + 4;
           }
     
           if (*buf_size < len + 1) {
  @@ -556,6 +557,7 @@
               *(((char*)buf_data)++) = ' ';
               strcpy(buf_data, elts[i].val);
               ((char*)buf_data) += strlen(elts[i].val);
  +            *(((char*)buf_data)++) = '\r';
               *(((char*)buf_data)++) = '\n';
           }
           *(((char*)buf_data)++) = '\0';
  
  
  

Mime
View raw message