X-Git-Url: http://git.openafs.org/?p=openafs.git;a=blobdiff_plain;f=src%2FWINNT%2Fafsd%2Fcm_vnodeops.h;h=569f698808998b14b87972936f0455313c04de5a;hp=a96e1224d4f0e37a8486bff58b0249f50683b48f;hb=14408c7e88c198d80ce89e90e209f48685da89da;hpb=0b90d69f8a44e6c7ba20553cfb7d5cf7072bab57 diff --git a/src/WINNT/afsd/cm_vnodeops.h b/src/WINNT/afsd/cm_vnodeops.h index a96e122..569f698 100644 --- a/src/WINNT/afsd/cm_vnodeops.h +++ b/src/WINNT/afsd/cm_vnodeops.h @@ -145,18 +145,43 @@ extern long cm_CheckNTDelete(cm_scache_t *dscp, cm_scache_t *scp, extern long cm_EvaluateSymLink(cm_scache_t *dscp, cm_scache_t *linkScp, cm_scache_t **outScpp, cm_user_t *userp, cm_req_t *reqp); -extern long cm_Lock(cm_scache_t *scp, unsigned char LockType, - LARGE_INTEGER LOffset, LARGE_INTEGER LLength, - u_long Timeout, cm_user_t *userp, cm_req_t *reqp, - void **lockpp); +extern long cm_Lock(cm_scache_t *scp, unsigned char sLockType, + LARGE_INTEGER LOffset, LARGE_INTEGER LLength, cm_key_t key, + int allowWait, cm_user_t *userp, cm_req_t *reqp, + cm_file_lock_t **lockpp); -extern long cm_Unlock(cm_scache_t *scp, unsigned char LockType, - LARGE_INTEGER LOffset, LARGE_INTEGER LLength, +#define CM_UNLOCK_BY_FID 1 + +extern long cm_UnlockByKey(cm_scache_t * scp, + cm_key_t key, + int flags, + cm_user_t * userp, + cm_req_t * reqp); + +extern long cm_Unlock(cm_scache_t *scp, unsigned char sLockType, + LARGE_INTEGER LOffset, LARGE_INTEGER LLength, cm_key_t key, cm_user_t *userp, cm_req_t *reqp); +extern long cm_LockCheckRead(cm_scache_t *scp, + LARGE_INTEGER LOffset, + LARGE_INTEGER LLength, + cm_key_t key); + +extern long cm_LockCheckWrite(cm_scache_t *scp, + LARGE_INTEGER LOffset, + LARGE_INTEGER LLength, + cm_key_t key); + extern void cm_CheckLocks(); -extern long cm_RetryLock(cm_file_lock_t *oldFileLock, int vcp_is_dead); +extern long cm_RetryLock(cm_file_lock_t *oldFileLock, int client_is_dead); + +#define CM_SESSION_SMB 0xffff +#define CM_SESSION_IFS 0xfffe +#define CM_SESSION_CMINT 0xfffd +#define CM_SESSION_RESERVED 0xfff0 + +extern cm_key_t cm_GenerateKey(unsigned int session, unsigned long process_id, unsigned int file_id); #define MAX_SYMLINK_COUNT 16 #endif /* __CM_VNODEOPS_H_ENV__ */