OpenAFS
OpenAFS distributed network file system
/cygdrive/c/src/openafs/openafs.git/repo/src/afs/nfsclient.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 __NFSCLIENT__
00011 #define __NFSCLIENT__
00012 
00013 #define NNFSCLIENTS     32      /* Hash table size for afs_nfspags table */
00014 #define NHash(host)     ((host) & (NNFSCLIENTS-1))
00015 #define NFSCLIENTGC     (24*3600)       /* time after which to GC nfsclientpag structs */
00016 #define NFSXLATOR_CRED  0xaaaa
00017 
00018 struct nfsclientpag {
00019     /* From here to .... */
00020     struct nfsclientpag *next;  /* Next hash pointer */
00021     struct exporterops *nfs_ops;
00022     afs_int32 states;
00023     afs_int32 type;
00024     struct exporterstats nfs_stats;
00025     /* .... here is also an overlay to the afs_exporter structure */
00026 
00027     afs_int32 refCount;         /* Ref count for packages using this */
00028     afs_int32 uid;              /* search based on uid and ... */
00029     afs_uint32 host;            /* ... nfs client's host ip address */
00030     afs_int32 pag;              /* active pag for all  (uid, host) "unpaged" conns */
00031     afs_int32 client_uid;       /* actual UID on client */
00032     char *sysname[MAXNUMSYSNAMES];/* user's "@sys" value; also kept in unixuser */
00033     int sysnamecount;           /*  number of sysnames */
00034     afs_int32 lastcall;         /*  Used for timing out nfsclientpag structs  */
00035 };
00036 
00037 
00038 #endif /* __NFSCLIENT__ */
 All Data Structures Files Functions Variables