https://issues.apache.org/bugzilla/show_bug.cgi?id=54875
Bug ID: 54875
Summary: Conditional request predicated on another URL's ETag
always succeeds, even when it shouldn't
Product: Apache httpd-2
Version: 2.5-HEAD
Hardware: All
OS: All
Status: NEW
Keywords: RFC
Severity: normal
Priority: P2
Component: mod_dav
Assignee: [email protected]
Reporter: [email protected]
Classification: Unclassified
Making a MOVE or COPY request with an If: header predicated on another
resource's ETag always succeeds, regardless of whether the ETag matches or not.
To reproduce:
PUT a file into a collection somewhere (e.g. /collxn/FileA), and retrieve its
etag using PROPFIND.
PUT another file into that collection (e.g. /collxn/FileB).
Attempt to MOVE or COPY FileB to FileC, supplying an If: header that references
FileA.
There are two cases in which the MOVE/COPY should fail, and in both cases it
succeeds instead:
Case 1:
If: </collxn/FileA> (Not ["blah-blah-etag"])
where "blah-blah-etag" is FileA's current ETag
Case 2:
If: </collxn/FileA> (["wrong-etag"])
where "wrong-etag" is not FileA's current ETag (e.g. because FileA has been
replaced by an intervening PUT).
Tested against trunk/2.5 r1470683 and against 2.4.4; Apache has the same
behavior on both branches.
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]