Subject: RE: What is left after LOCK/UNLOCK on null resource?

From: "Clemm, Geoff" <[email-masked]>
Date: Wed, 4 Sep 2002 09:54:36 -0400

It is very reasonable/sensible behavior for a client to
refuse to unlock a resource if it wasn't the process that
took out the lock.  A client should never unlock such
a resource without getting explicit confirmation from the
user to do so, but a client can reasonably refuse to give
the user that choice, because a user is often not in a
position to make the right choice (i.e. forgets or is not
aware that something else being done on their behalf requires
that resource to be locked).

Such a client should of course set a timeout on any lock that
it takes out, so that the server can automatically expire a
lock when the client that took out the lock has dies or otherwise
failed to unlock.

Cheers,
Geoff

-----Original Message-----
From: Michael Leditschke [mailto:[email-masked]]

... It would appear
that the slide client can only delete a lock if it created
the lock in the *same* session. If I fire up the client,
create a lock, exit, fire it up again and attempt an unlock,
the operation fails. Nothing appears on the wire. A brief
troll through the code suggests the client won't even try if
it doesn't find the lock in its internal state structure, and
this structure only gets populated as part of a lock operation
- though I'm happy to be corrected.

Can anyone confirm whether this is the expected client behaviour,
or a bug? I would have thought you should be able to unlock a
resource independent of when the lock operation occurred.

---

From: "Michael Leditschke" <[email-masked]>
Date: Thu, 5 Sep 2002 10:16:00 +1000

> that resource to be locked).

I guess it depends on your definition of process. DAV locks are
supposed to be capable of being held for an extended time. I might 
want to lock a resource, edit it for a while locally, then push the
result back and unlock it again. Are you suggesting this all has
to be done by the same OS process? What happens if the power goes
out and my PC reboots? Or perhaps you expect the client to cache
locktokens?

In my case, it is the same client I'm using to lock and unlock and
I'm presenting the same credentials to the server. Its a low
level test program, so I would have thought being able to unlock
a resource of which I am the owner would be reasonable.

Regards
Michael