httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pque...@apache.org
Subject svn commit: r723585 - in /httpd/httpd/trunk: CHANGES modules/http/http_filters.c
Date Fri, 05 Dec 2008 05:10:14 GMT
Author: pquerna
Date: Thu Dec  4 21:10:13 2008
New Revision: 723585

URL: http://svn.apache.org/viewvc?rev=723585&view=rev
Log:
Remove X-Pad work around.

Submitted by: Takashi Sato <takashi lans-tv.com>

Modified:
    httpd/httpd/trunk/CHANGES
    httpd/httpd/trunk/modules/http/http_filters.c

Modified: httpd/httpd/trunk/CHANGES
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/CHANGES?rev=723585&r1=723584&r2=723585&view=diff
==============================================================================
--- httpd/httpd/trunk/CHANGES [utf-8] (original)
+++ httpd/httpd/trunk/CHANGES [utf-8] Thu Dec  4 21:10:13 2008
@@ -2,6 +2,9 @@
 Changes with Apache 2.3.0
 [ When backported to 2.2.x, remove entry from this file ]
 
+  *) Remove X-Pad header which was added as a work around to a bug in 
+     Netscape 2.x to 4.0b2. [Takashi Sato <takashi lans-tv.com>]
+
   *) Add DTrace Statically Defined Tracing (SDT) probes.
     [Theo Schlossnagle <jesus omniti.com>, Paul Querna]
 

Modified: httpd/httpd/trunk/modules/http/http_filters.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/http/http_filters.c?rev=723585&r1=723584&r2=723585&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/http/http_filters.c (original)
+++ httpd/httpd/trunk/modules/http/http_filters.c Thu Dec  4 21:10:13 2008
@@ -944,37 +944,11 @@
     basic_http_header(r, bb, protocol);
 }
 
-/* Navigator versions 2.x, 3.x and 4.0 betas up to and including 4.0b2
- * have a header parsing bug.  If the terminating \r\n occur starting
- * at offset 256, 257 or 258 of output then it will not properly parse
- * the headers.  Curiously it doesn't exhibit this problem at 512, 513.
- * We are guessing that this is because their initial read of a new request
- * uses a 256 byte buffer, and subsequent reads use a larger buffer.
- * So the problem might exist at different offsets as well.
- *
- * This should also work on keepalive connections assuming they use the
- * same small buffer for the first read of each new request.
- *
- * At any rate, we check the bytes written so far and, if we are about to
- * tickle the bug, we instead insert a bogus padding header.  Since the bug
- * manifests as a broken image in Navigator, users blame the server.  :(
- * It is more expensive to check the User-Agent than it is to just add the
- * bytes, so we haven't used the BrowserMatch feature here.
- */
 static void terminate_header(apr_bucket_brigade *bb)
 {
-    char tmp[] = "X-Pad: avoid browser bug" CRLF;
     char crlf[] = CRLF;
-    apr_off_t len;
     apr_size_t buflen;
 
-    (void) apr_brigade_length(bb, 1, &len);
-
-    if (len >= 255 && len <= 257) {
-        buflen = strlen(tmp);
-        ap_xlate_proto_to_ascii(tmp, buflen);
-        apr_brigade_write(bb, NULL, NULL, tmp, buflen);
-    }
     buflen = strlen(crlf);
     ap_xlate_proto_to_ascii(crlf, buflen);
     apr_brigade_write(bb, NULL, NULL, crlf, buflen);



Mime
View raw message