OpenAFS
OpenAFS distributed network file system
/cygdrive/c/src/openafs/openafs.git/repo/src/WINNT/afsd/cm.h
00001 /*
00002  * Copyright 2000, International Business Machines Corporation and others.
00003  * All Rights Reserved.
00004  *
00005  * This software has been released under the terms of the IBM Public
00006  * License.  For details, see the LICENSE file in the top-level source
00007  * directory or online at http://www.openafs.org/dl/license10.html
00008  */
00009 
00010 #ifndef OPENAFS_WINNT_AFSD_CM_H
00011 #define OPENAFS_WINNT_AFSD_CM_H 1
00012 
00013 /* We use pthreads in the cache manager (not LWP) */
00014 #ifndef AFS_PTHREAD_ENV
00015 #define AFS_PTHREAD_ENV 1
00016 #endif
00017 
00018 #include <rx/rx.h>
00019 #include <afs/vldbint.h>
00020 #include <afs/afsint.h>
00021 #include <afs/cm_error.h>
00022 
00023 #define CM_DEFAULT_CALLBACKPORT         7001
00024 
00025 /* common flags to many procedures */
00026 #define CM_FLAG_CREATE          1               /* create entry */
00027 #define CM_FLAG_CASEFOLD        2               /* fold case in namei, lookup, etc. */
00028 #define CM_FLAG_EXCLUSIVE       4               /* create exclusive */
00029 #define CM_FLAG_FOLLOW          8               /* follow symlinks, even at the end (namei) */
00030 #define CM_FLAG_8DOT3           0x10            /* restrict to 8.3 name */
00031 #define CM_FLAG_NOMOUNTCHASE    0x20            /* don't follow mount points */
00032 #define CM_FLAG_DIRSEARCH       0x40            /* for directory search */
00033 #define CM_FLAG_CHECKPATH       0x80            /* Path instead of File */
00034 #define CM_FLAG_NOPROBE         0x100           /* For use with cm_GetCellxxx - do not probe server status */
00035 #define CM_FLAG_DFS_REFERRAL    0x200           /* The request is a DFS Referral - the last char of the lookup name may be missing */
00036 
00037 /* Used by cm_FollowMountPoint and cm_FindVolumeByName */
00038 /* And as an index in cm_volume_t */
00039 #define RWVOL   0
00040 #define ROVOL   1
00041 #define BACKVOL 2
00042 
00043 #define LOCK_HIERARCHY_IGNORE                    0
00044 
00045 #define LOCK_HIERARCHY_RDR_GLOBAL               10
00046 #define LOCK_HIERARCHY_SMB_STARTED              20
00047 #define LOCK_HIERARCHY_SMB_LISTENER             30
00048 #define LOCK_HIERARCHY_SMB_DIRWATCH             40
00049 #define LOCK_HIERARCHY_SMB_GLOBAL               50
00050 #define LOCK_HIERARCHY_SMB_DIRSEARCH            60
00051 #define LOCK_HIERARCHY_SMB_FID                  70
00052 #define LOCK_HIERARCHY_SMB_TID                  80
00053 #define LOCK_HIERARCHY_SMB_UID                  90
00054 #define LOCK_HIERARCHY_SMB_RAWBUF              100
00055 #define LOCK_HIERARCHY_SMB_RCT_GLOBAL          110
00056 #define LOCK_HIERARCHY_SMB_VC                  120
00057 #define LOCK_HIERARCHY_SMB_MONITOR             125
00058 
00059 
00060 #define LOCK_HIERARCHY_SCACHE_DIRLOCK          500
00061 #define LOCK_HIERARCHY_DAEMON_GLOBAL           510
00062 #define LOCK_HIERARCHY_SMB_USERNAME            520
00063 #define LOCK_HIERARCHY_SCACHE_BUFCREATE        530
00064 #define LOCK_HIERARCHY_BUFFER                  540
00065 #define LOCK_HIERARCHY_SCACHE                  550
00066 #define LOCK_HIERARCHY_BUF_GLOBAL              560
00067 #define LOCK_HIERARCHY_SCACHE_REDIRMX          565
00068 #define LOCK_HIERARCHY_VOLUME                  570
00069 #define LOCK_HIERARCHY_USER                    580
00070 #define LOCK_HIERARCHY_SCACHE_GLOBAL           590
00071 #define LOCK_HIERARCHY_CONN_GLOBAL             600
00072 #define LOCK_HIERARCHY_CELL                    620
00073 #define LOCK_HIERARCHY_CELL_GLOBAL             630
00074 #define LOCK_HIERARCHY_SERVER                  640
00075 #define LOCK_HIERARCHY_CALLBACK_GLOBAL         645
00076 #define LOCK_HIERARCHY_SERVER_GLOBAL           650
00077 #define LOCK_HIERARCHY_CONN                    660
00078 #define LOCK_HIERARCHY_VOLUME_GLOBAL           670
00079 #define LOCK_HIERARCHY_DNLC_GLOBAL             690
00080 #define LOCK_HIERARCHY_FREELANCE_GLOBAL        700
00081 #define LOCK_HIERARCHY_UTILS_GLOBAL            710
00082 #define LOCK_HIERARCHY_OTHER_GLOBAL            720
00083 #define LOCK_HIERARCHY_ACL_GLOBAL              730
00084 #define LOCK_HIERARCHY_EACCES_GLOBAL           740
00085 #define LOCK_HIERARCHY_USER_GLOBAL             750
00086 #define LOCK_HIERARCHY_AFSDBSBMT_GLOBAL       1000
00087 #define LOCK_HIERARCHY_TOKEN_EVENT_GLOBAL     2000
00088 #define LOCK_HIERARCHY_SYSCFG_GLOBAL          3000
00089 
00090 #define LOCK_HIERARCHY_RDR_EXTENTS               0
00091 #endif /*  OPENAFS_WINNT_AFSD_CM_H */
00092 
00093 
 All Data Structures Files Functions Variables