Bug 53525 - PROPPATCH delete (svn propdel) errors not returned
Summary: PROPPATCH delete (svn propdel) errors not returned
Status: RESOLVED WONTFIX
Alias: None
Product: Apache httpd-2
Classification: Unclassified
Component: mod_dav (show other bugs)
Version: 2.5-HEAD
Hardware: PC Linux
: P2 normal (vote)
Target Milestone: ---
Assignee: Apache HTTPD Bugs Mailing List
URL:
Keywords: PatchAvailable
Depends on:
Blocks:
 
Reported: 2012-07-09 12:27 UTC by Arwin Arni
Modified: 2013-07-18 07:39 UTC (History)
1 user (show)



Attachments
Suggested patch to fix this bug. (491 bytes, patch)
2012-07-09 12:27 UTC, Arwin Arni
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Arwin Arni 2012-07-09 12:27:25 UTC
Created attachment 29042 [details]
Suggested patch to fix this bug.

On failure to execute a PROPPATCH to remove a property, the error is not returned to the caller.

A comment in the code says:

<code snippet>

1044: /*
1045: ** Delete the property. Ignore errors -- the property is there, or
1046: ** we are deleting it for a second time.
1047: */
1048: /* ### but what about other errors? */
1049: (void) (*propdb->db_hooks->remove)(propdb->db, &name);

</code snippet>

In subversion, property deletions are subject to authorization, and hook script execution.

In the current state of things, regardless of the outcome of the PROPPATCH, the client receives a 2xx class response. I suggest the attached patch to fix this.
Comment 1 Graham Leggett 2013-04-27 17:08:33 UTC
Applied to trunk in r1476627.
Comment 2 Graham Leggett 2013-04-27 19:09:13 UTC
Can you verify that the patch works for you?

Proposed for backport to v2.4.
Comment 3 Graham Leggett 2013-05-23 13:19:52 UTC
Proposed for backport to v2.2.
Comment 4 Graham Leggett 2013-05-24 12:03:15 UTC
Vetoed by jorton, citing http://tools.ietf.org/html/rfc4918#section-14.23

This patch is an RFC violation, reverted on trunk.
Comment 5 Arwin Arni 2013-07-18 07:39:31 UTC
The RFC says "Specifying the removal of a property that does not exist is not an error."

What this patch is trying to solve is the "failure to delete an existing property".

Can someone please explain how this is an RFC violation?