OpenAFS
OpenAFS distributed network file system
|
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_DAEMON_H 00011 #define OPENAFS_WINNT_AFSD_CM_DAEMON_H 1 00012 00013 /* externs */ 00014 extern long cm_daemonCheckDownInterval; 00015 extern long cm_daemonCheckUpInterval; 00016 extern long cm_daemonCheckVolInterval; 00017 extern long cm_daemonCheckCBInterval; 00018 extern long cm_daemonCheckLockInterval; 00019 extern long cm_daemonTokenCheckInterval; 00020 00021 extern osi_rwlock_t *cm_daemonLockp; 00022 extern int cm_nDaemons; 00023 00024 void cm_DaemonShutdown(void); 00025 00026 void cm_InitDaemon(int nDaemons); 00027 00028 typedef afs_int32 (cm_bkgProc_t)(cm_scache_t *scp, afs_uint32 p1, afs_uint32 p2, afs_uint32 p3, 00029 afs_uint32 p4, struct cm_user *up, cm_req_t *reqp); 00030 00031 typedef struct cm_bkgRequest { 00032 osi_queue_t q; 00033 cm_bkgProc_t *procp; 00034 cm_scache_t *scp; 00035 afs_uint32 p1; 00036 afs_uint32 p2; 00037 afs_uint32 p3; 00038 afs_uint32 p4; 00039 cm_user_t *userp; 00040 cm_req_t req; 00041 } cm_bkgRequest_t; 00042 00043 extern void cm_QueueBKGRequest(cm_scache_t *scp, cm_bkgProc_t *procp, afs_uint32 p1, 00044 afs_uint32 p2, afs_uint32 p3, afs_uint32 p4, cm_user_t *userp, cm_req_t *reqp); 00045 00046 #define CM_MAX_DAEMONS 64 00047 00048 #endif /* OPENAFS_WINNT_AFSD_CM_DAEMON_H */