2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
10 #ifndef OPENAFS_WINNT_AFSD_CM_H
11 #define OPENAFS_WINNT_AFSD_CM_H 1
13 /* We use pthreads in the cache manager (not LWP) */
14 #ifndef AFS_PTHREAD_ENV
15 #define AFS_PTHREAD_ENV 1
19 #include <afs/vldbint.h>
20 #include <afs/afsint.h>
21 #include <afs/cm_error.h>
23 #define CM_DEFAULT_CALLBACKPORT 7001
25 /* common flags to many procedures */
26 #define CM_FLAG_CREATE 1 /* create entry */
27 #define CM_FLAG_CASEFOLD 2 /* fold case in namei, lookup, etc. */
28 #define CM_FLAG_EXCLUSIVE 4 /* create exclusive */
29 #define CM_FLAG_FOLLOW 8 /* follow symlinks, even at the end (namei) */
30 #define CM_FLAG_8DOT3 0x10 /* restrict to 8.3 name */
31 #define CM_FLAG_NOMOUNTCHASE 0x20 /* don't follow mount points */
32 #define CM_FLAG_DIRSEARCH 0x40 /* for directory search */
33 #define CM_FLAG_CHECKPATH 0x80 /* Path instead of File */
34 #define CM_FLAG_NOPROBE 0x100 /* For use with cm_GetCellxxx - do not probe server status */
35 #define CM_FLAG_DFS_REFERRAL 0x200 /* The request is a DFS Referral - the last char of the lookup name may be missing */
37 /* Used by cm_FollowMountPoint and cm_FindVolumeByName */
38 /* And as an index in cm_volume_t */
43 #define LOCK_HIERARCHY_IGNORE 0
45 #define LOCK_HIERARCHY_RDR_GLOBAL 10
46 #define LOCK_HIERARCHY_SMB_STARTED 20
47 #define LOCK_HIERARCHY_SMB_LISTENER 30
48 #define LOCK_HIERARCHY_SMB_DIRWATCH 40
49 #define LOCK_HIERARCHY_SMB_GLOBAL 50
50 #define LOCK_HIERARCHY_SMB_DIRSEARCH 60
51 #define LOCK_HIERARCHY_SMB_FID 70
52 #define LOCK_HIERARCHY_SMB_TID 80
53 #define LOCK_HIERARCHY_SMB_UID 90
54 #define LOCK_HIERARCHY_SMB_RAWBUF 100
55 #define LOCK_HIERARCHY_SMB_RCT_GLOBAL 110
56 #define LOCK_HIERARCHY_SMB_VC 120
57 #define LOCK_HIERARCHY_SMB_MONITOR 125
60 #define LOCK_HIERARCHY_SCACHE_DIRLOCK 500
61 #define LOCK_HIERARCHY_DAEMON_GLOBAL 510
62 #define LOCK_HIERARCHY_SMB_USERNAME 520
63 #define LOCK_HIERARCHY_SCACHE_BUFCREATE 530
64 #define LOCK_HIERARCHY_BUFFER 540
65 #define LOCK_HIERARCHY_SCACHE 550
66 #define LOCK_HIERARCHY_BUF_GLOBAL 560
67 #define LOCK_HIERARCHY_SCACHE_REDIRMX 565
68 #define LOCK_HIERARCHY_VOLUME 570
69 #define LOCK_HIERARCHY_USER 580
70 #define LOCK_HIERARCHY_SCACHE_GLOBAL 590
71 #define LOCK_HIERARCHY_CONN_GLOBAL 600
72 #define LOCK_HIERARCHY_CELL 620
73 #define LOCK_HIERARCHY_CELL_GLOBAL 630
74 #define LOCK_HIERARCHY_SERVER 640
75 #define LOCK_HIERARCHY_CALLBACK_GLOBAL 645
76 #define LOCK_HIERARCHY_SERVER_GLOBAL 650
77 #define LOCK_HIERARCHY_CONN 660
78 #define LOCK_HIERARCHY_VOLUME_GLOBAL 670
79 #define LOCK_HIERARCHY_DNLC_GLOBAL 690
80 #define LOCK_HIERARCHY_FREELANCE_GLOBAL 700
81 #define LOCK_HIERARCHY_UTILS_GLOBAL 710
82 #define LOCK_HIERARCHY_OTHER_GLOBAL 720
83 #define LOCK_HIERARCHY_ACL_GLOBAL 730
84 #define LOCK_HIERARCHY_EACCES_GLOBAL 740
85 #define LOCK_HIERARCHY_USER_GLOBAL 750
86 #define LOCK_HIERARCHY_AFSDBSBMT_GLOBAL 1000
87 #define LOCK_HIERARCHY_TOKEN_EVENT_GLOBAL 2000
88 #define LOCK_HIERARCHY_SYSCFG_GLOBAL 3000
90 #define LOCK_HIERARCHY_RDR_EXTENTS 0
91 #endif /* OPENAFS_WINNT_AFSD_CM_H */