2 * Copyright 2012 Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
6 * Paweł Dziepak, pdziepak@quarnos.org
13 #include <SupportDefs.h>
14 #include <util/KernelReferenceable.h>
17 #include "NFS4Object.h"
20 struct OpenState
: public NFS4Object
, public KernelReferenceable
,
21 public DoublyLinkedListLinkImpl
<OpenState
> {
34 Delegation
* fDelegation
;
39 LockOwner
* fLockOwners
;
42 LockOwner
* GetLockOwner(uint32 owner
);
44 void AddLock(LockInfo
* lock
);
45 void RemoveLock(LockInfo
* lock
, LockInfo
* prev
);
46 void DeleteLock(LockInfo
* lock
);
48 status_t
Reclaim(uint64 newClientID
);
53 status_t
_ReclaimOpen(uint64 newClientID
);
54 status_t
_ReclaimLocks(uint64 newClientID
);
55 status_t
_ReleaseLockOwner(LockOwner
* owner
);