Properties tests based on invalid assumptions?
John Meissen
john at meissen.org
Thu Nov 6 14:17:57 EST 2008
> On Fri, Oct 31, 2008 at 06:37:13PM -0700, John Meissen wrote:
> ...
> > RFC4918, section 9.2 says
> >
> > All DAV-compliant resources MUST support the PROPPATCH method and MUST
> > process instructions that are specified using the propertyupdate, set,
> > and remove XML elements. Execution of the directives in this method is,
> > of course, subject to access control constraints. DAV-compliant resources
> > SHOULD support the setting of arbitrary dead properties.
> >
> > The key words here are that the resource MUST support the method, and
> > MUST process the instructions; the resource SHOULD support the setting
> > of arbitrary properties.
> >
> > In my interpretation that means that I must implement the method and
> > parse/process the body of the request, but I don't have to actually
> > support anything other than the live properties associated with the
> > resource. And changes to live properties are subject to constraints.
> >
> > So failing to set arbitrary properties is, in fact, a successful
> > response, so long as the response is constructed correctly.
>
> I missed this message, sorry.
>
> I think that the correct behaviour for a server which doesn't support
> arbitrary properties would be to return a 207 for the PROPPATCH which
> gives a propstat with status 403 for each "set" instruction which is not
> supported.
>
> The way the litmus code is currently written it should FAIL for such a
> response; subsequent tests should then SKIP. Is that what you're
> seeing?
>
> It's reasonable to argue that the propset FAIL should be a SKIP since
> it's DAV-compliant to not support arbitrary dead props, though I might
> argue that it would be simpler for people testing such servers to simply
> skip running src/props at all. It would also add quite a bit of
> complexity to litmus to handle this gracefully.
>
> If you are saying that your server pretends that a propset succeeds when
> it is actually being silently ignored, I don't think that would be DAV
> compliant at all.
>
> Regards, Joe
Yes, that's what I'm returning (207 and multiple 403's), and that's what
I'm seeing. The result is misleading, because it fails the test while it's
actually doing the correct thing. I could just skip the properties section,
but there are other tests that are useful.
john-
More information about the litmus
mailing list