]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
no longer allow an ETag header in 304 responses.
authorAndré Malo <nd@apache.org>
Sun, 2 Nov 2003 22:09:19 +0000 (22:09 +0000)
committerAndré Malo <nd@apache.org>
Sun, 2 Nov 2003 22:09:19 +0000 (22:09 +0000)
PR: 19355
Submitted by: Geoffrey Young <geoff@apache.org>

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101687 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
modules/filters/mod_include.c

diff --git a/CHANGES b/CHANGES
index 412b843bfc812be4bf7dd49b1aaec264a0a1049d..cc0a9c19efa16e8bbf2712c54f582b7f6e95f1d9 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -2,6 +2,9 @@ Changes with Apache 2.1.0-dev
 
   [Remove entries to the current 2.0 section below, when backported]
 
+  *) mod_include no longer allows an ETag header on 304 responses.
+     PR 19355. [Geoffrey Young <geoff@apache.org>, André Malo]
+
   *) mod_autoindex: Add 'XHTML' option in order to allow switching between
      HTML 3.2 and XHTML 1.0 output. PR 23747.  [André Malo]
 
index 6170695607011d5ac64ca9dab3c28b1651d058f5..3f4b416e57f77b73e403546b5504660a47df5f1c 100644 (file)
@@ -3580,6 +3580,12 @@ static int includes_setup(ap_filter_t *f)
         f->r->no_local_copy = 1;
     }
 
+    /* Don't allow ETag headers to be generated - see RFC2616 - 13.3.4.
+     * We don't know if we are going to be including a file or executing
+     * a program - in either case a strong ETag header will likely be invalid.
+     */
+    apr_table_setn(f->r->notes, "no-etag", "");
+
     return OK;
 }
 
@@ -3657,14 +3663,13 @@ static apr_status_t includes_filter(ap_filter_t *f, apr_bucket_brigade *b)
      */
     apr_table_unset(f->r->headers_out, "Content-Length");
 
-    /* Always unset the ETag/Last-Modified fields - see RFC2616 - 13.3.4.
+    /* Always unset the Last-Modified field - see RFC2616 - 13.3.4.
      * We don't know if we are going to be including a file or executing
      * a program which may change the Last-Modified header or make the 
      * content completely dynamic.  Therefore, we can't support these
      * headers.
      * Exception: XBitHack full means we *should* set the Last-Modified field.
      */
-    apr_table_unset(f->r->headers_out, "ETag");
 
     /* Assure the platform supports Group protections */
     if ((conf->xbithack == XBITHACK_FULL)