Subject: Implementing litmus lock test 18

From: Evert | Rooftop <[email-masked]>
Date: Tue, 01 Apr 2008 00:57:11 -0400

Dear List,

I'm a WebDAV server implementor, and relying heavily on litmus to tell 
me if I'm on the right track.

I'm stuck on test 18: cond_put_corrupt_token

With the relevant header :

If: (<opaquelocktoken:44445502-3b32-25aa-a0d6-87fdb17a9086x>) (Not 
<DAV:no-lock>)

I believe, judging from "WebDAV Next-Generation.. well I'm sure you've 
heard of it.." that this should be interpreted as :
If (false OR true) and thus allowing the PUT request..

Litmus however reports: FAIL (conditional PUT with invalid lock-token 
should fail: 200 Ok)

I'm hoping someone on this list can help me out =)

Thanks a lot,
Evert

---

From: Julian Reschke <[email-masked]>
Date: Tue, 01 Apr 2008 17:44:22 +0200

> I'm hoping someone on this list can help me out =)

Looking at the test, the assumption is that the If header indeed 
evaluates to true, but then the PUT request is rejected with 423 Locked, 
as the If header did not contain the required lock token.

Keep in mind that for the PUT to succeed on a locked request, the If 
header not only needs to evaluate to true, but also needs to contain all 
required lock tokens.

Hope this helps,

Julian

---

From: Evert | Rooftop <[email-masked]>
Date: Tue, 01 Apr 2008 11:54:02 -0400

Julian Reschke wrote:
> evaluates to true, but then the PUT request is rejected with 423 
> Locked, as the If header did not contain the required lock token.
>
> header not only needs to evaluate to true, but also needs to contain 
> all required lock tokens.
>
> Hope this helps,
It did! Thanks a million =)