feat(nc-webdav): generic dead-props on PROPPATCH/PROPFIND/REPORT
NC PROPPATCH only special-cased oc:favorite, silently dropped every other prop while claiming 200. PROPFIND had no dead-prop lookup at all. Reuse native /webdav/ dead-prop plumbing (now pub(crate)) so NC surface gets real RFC 4918 §4.2 storage. Missing resource on PROPPATCH is now 404 instead of a fake success no-op.
This commit is contained in:
@@ -419,7 +419,12 @@ impl WebDavAdapter {
|
||||
///
|
||||
/// Written AFTER the live-property propstats inside a `<D:response>`.
|
||||
/// Only emitted when `dead_props` is non-empty.
|
||||
fn write_dead_props_propstat<W: Write>(
|
||||
///
|
||||
/// `pub(crate)` so the NextCloud-compatible handler
|
||||
/// (`interfaces::nextcloud::webdav_handler`) can append the same
|
||||
/// dead-property block to its own bespoke PROPFIND writers instead
|
||||
/// of duplicating this XML shape.
|
||||
pub(crate) fn write_dead_props_propstat<W: Write>(
|
||||
xml_writer: &mut Writer<W>,
|
||||
dead_props: &[(QualifiedName, Option<String>)],
|
||||
) -> Result<()> {
|
||||
|
||||
Reference in New Issue
Block a user