Import Upstream version 1.8.5
[hcoop/debian/openafs.git] / src / afs / nfsclient.h
CommitLineData
805e021f
CE
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 __NFSCLIENT__
11#define __NFSCLIENT__
12
13#define NNFSCLIENTS 32 /* Hash table size for afs_nfspags table */
14#define NHash(host) ((host) & (NNFSCLIENTS-1))
15#define NFSCLIENTGC (24*3600) /* time after which to GC nfsclientpag structs */
16#define NFSXLATOR_CRED 0xaaaa
17
18struct nfsclientpag {
19 /* From here to .... */
20 struct nfsclientpag *next; /* Next hash pointer */
21 struct exporterops *nfs_ops;
22 afs_int32 states;
23 afs_int32 type;
24 struct exporterstats nfs_stats;
25 /* .... here is also an overlay to the afs_exporter structure */
26
27 afs_int32 refCount; /* Ref count for packages using this */
28 afs_int32 uid; /* search based on uid and ... */
29 afs_uint32 host; /* ... nfs client's host ip address */
30 afs_int32 pag; /* active pag for all (uid, host) "unpaged" conns */
31 afs_int32 client_uid; /* actual UID on client */
32 char *sysname[MAXNUMSYSNAMES];/* user's "@sys" value; also kept in unixuser */
33 int sysnamecount; /* number of sysnames */
34 afs_int32 lastcall; /* Used for timing out nfsclientpag structs */
35};
36
37
38#endif /* __NFSCLIENT__ */