DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUGĀ·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=38034>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED ANDĀ·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=38034





------- Additional Comments From [EMAIL PROTECTED]  2007-07-26 11:30 -------
Created an attachment (id=20552)
 --> (http://issues.apache.org/bugzilla/attachment.cgi?id=20552&action=view)
Fixes If-Match: * and If-None-Match: * bug for mod_dav

The bug is in function ap_meets_conditions() in modules/http/http_protocol.c:
it always evaluates "If-Match: *" to TRUE (is FALSE, if resource does not
exist) and "If-None-Match: *" to FALSE (is TRUE, if the resource does not
exist).
This function is called by mod_dav, function dav_validate_request(). In this
case, ap_meets_conditions() seems not able to get etag reliably (probably a bug
in mod_dav).
Fix: A new function dav_meets_conditions() is created in
modules/dav/main/util.c. It is mostly a copy of ap_meets_conditions(), but
fixes the mentioned errors. dav_validate_request() calls dav_meets_conditions()
instead of ap_meets_conditions().
ToDo: it would be better to fix this in ap_meets_conditions(). But to do this,
this functions must know, whether the resource exists, and it must be able to
reliably get the etag of the resource. But as I am not familiar with
Apache-programming, I can't do this. I even doubt that it is possible without
changes in other Apache modules besides mod_dav.


-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to