--On Tuesday, September 21, 2004 3:48 PM -0700 Michael Corcoran <[EMAIL PROTECTED]> wrote:

I've been trying to find a solution to a problem that mod_cache has with
handling Etag's properly.  I'm working with Apache 2.0.51.  Below is a
diff to ./server/util_script.c that seems to fix the problem...

FWIW, I committed some changes to mod_cache earlier this afternoon (about 10 minutes after you sent this email, actually) that fix this by not depending upon ap_scan_script_header_err(). Using ap_scan_script_header_err() was just wrong for mod_cache as it has these types of goofy side effects. Now, everything goes into r->headers_out not r->err_headers_out.


So, I'd recommend trying a httpd 2.0 HEAD snapshot.

function sticks the Etag value in the r->err_headers_out table.  Then,
mod_cache later calls ap_meets_conditions() which expects to find an
Etag value in r->headers_out.

I will comment that it's possible ap_meets_conditions() should look in r->err_headers_out. But, I'm not completely sure if that's right either.


Regardless, please try out the latest CVS and see if it is fixed. It may get merged back to APACHE_2_0_BRANCH and into 2.0.52, but I'd like confirmation that what we have now fixes these types of problems before starting the backport process. -- justin

Reply via email to