Windows: cm_ShutdownSCache corrections
[openafs.git] / src / WINNT / afsd / cm_daemon.h
1 /*
2  * Copyright 2000, International Business Machines Corporation and others.
3  * All Rights Reserved.
4  *
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
8  */
9
10 #ifndef OPENAFS_WINNT_AFSD_CM_DAEMON_H
11 #define OPENAFS_WINNT_AFSD_CM_DAEMON_H 1
12
13 /* externs */
14 extern long cm_daemonCheckDownInterval;
15 extern long cm_daemonCheckUpInterval;
16 extern long cm_daemonCheckVolInterval;
17 extern long cm_daemonCheckCBInterval;
18 extern long cm_daemonCheckLockInterval;
19 extern long cm_daemonTokenCheckInterval;
20
21 extern osi_rwlock_t cm_daemonLock;
22
23 void cm_DaemonShutdown(void);
24
25 void cm_InitDaemon(int nDaemons);
26
27 typedef afs_int32 (cm_bkgProc_t)(cm_scache_t *scp, afs_uint32 p1, afs_uint32 p2, afs_uint32 p3,
28         afs_uint32 p4, struct cm_user *up);
29
30 typedef struct cm_bkgRequest {
31         osi_queue_t q;
32         cm_bkgProc_t *procp;
33         cm_scache_t *scp;
34         afs_uint32 p1;
35         afs_uint32 p2;
36         afs_uint32 p3;
37         afs_uint32 p4;
38         struct cm_user *userp;
39 } cm_bkgRequest_t;
40
41 extern void cm_QueueBKGRequest(cm_scache_t *scp, cm_bkgProc_t *procp, afs_uint32 p1,
42         afs_uint32 p2, afs_uint32 p3, afs_uint32 p4, cm_user_t *userp);
43
44 #define CM_MAX_DAEMONS 64
45
46 #endif /*  OPENAFS_WINNT_AFSD_CM_DAEMON_H */