[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#470652: marked as done (apache2.2-common: mod_cache doesn't handle If-Range correctly)



Your message dated Mon, 17 Mar 2008 19:40:46 +0100
with message-id <200803171940.47174.sf@sfritsch.de>
and subject line Bug#470652: mod_cache doesn't handle If-Range correctly
has caused the Debian Bug report #470652,
regarding apache2.2-common: mod_cache doesn't handle If-Range correctly
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
470652: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=470652
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Subject: apache2.2-common: mod_cache doesn't handle If-Range correctly
Package: apache2.2-common
Version: 2.2.3-4+etch4
Severity: normal
Tags: patch

*** Please type your report below this line ***

Using mod_cache, if an object is in the cache, but expired,
and the backend has a newer version of the object, and a client
makes an If-Range request, then mod_cache will ignore the
If-Range condition and return only the requested Range of the
new version, even when it should have returned the whole of the
new version.

<https://issues.apache.org/bugzilla/show_bug.cgi?id=44579> has
a more detailed report and the following patch for Apache 2.2.8,
which will also work on 2.2.3:

Index: modules/cache/mod_cache.c
===================================================================
--- modules/cache/mod_cache.c   (revision 634179)
+++ modules/cache/mod_cache.c   (working copy)
@@ -613,6 +613,12 @@
             cache->provider->remove_entity(cache->stale_handle);
             /* Treat the request as if it wasn't conditional. */
             cache->stale_handle = NULL;
+            /*
+             * Restore the original request headers as they may be needed
+             * by further output filters like the byterange filter to make
+             * the correct decisions.
+             */
+            r->headers_in = cache->stale_headers;
         }
     }


-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-6-686
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)



--- End Message ---
--- Begin Message ---
Version: 2.2.8-3

This was fixed in 2.2.8-3 in unstable, but the changelog contained a 
typo in the bugnumber. Here is the changelog entry:

apache2 (2.2.8-3) unstable; urgency=low

  * mod_cache: Handle If-Range correctly if the cached resource was 
stale
    (closes: #47065).


--- End Message ---

Reply to: