RE: Behavior of PUT on unlocked resource with invalid IF header . ..

   From: Rashmi Singh [mailto:rashmi@persistent.co.in]

   Do we agree on
   rejecting the PUT submitted with invalid lock token on an unlocked
   resource.  Just to make things explicit, the same applies to COPY and
   MOVE also.

Assuming it is sumitted in a non-negated no-tagged list,
or in a non-negated tagged list that specifies the unlocked
resource, then yes (by the definition of the If header, not
by any special locking semantics).

   i) COPY - What if COPY is submitted with an invalid locktoken for
   unlocked destination?

Invalid, for same reason as above.

   ii) MOVE - What if MOVE is submitted with an invalid locktoken for
   either an unlocked source or an unlocked destination?

You have to be specific about what you mean by "submitted", i.e.
what exactly are you planning on sending in the If header?
Assuming you meant the simplest thing, i.e. a non-negated no-tagged
list, then yes, the locktoken must match both the source and
the destination of the MOVE.  What 2518 leaves open and ambiguous
is whether it must also match both the source collection and
the destination collection.  I would argue, yes, because both
of those collections are being modified by the MOVE.

   Should we return 412 (Precondition failed) in the above case?

Yes.

Cheers,
Geoff

Received on Friday, 17 August 2001 09:19:58 UTC