2 * Copyright 2000, International Business Machines Corporation and others.
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
12 * Common values and structures used in the AFS File Server
13 * and Cache Manager interfaces.
16 %#ifndef FSINT_COMMON_XG
25 afs_uint32 CallBackVersion;
26 afs_uint32 ExpirationTime;
27 afs_uint32 CallBackType;
30 struct AFSDBLockDesc {
41 struct AFSDBCacheEntry {
43 afs_int32 cell; /*Cell part of the fid*/
44 AFSFid netFid; /*Network part of the fid*/
46 afs_int32 DataVersion;
47 struct AFSDBLockDesc lock;
59 struct AFSDBLockDesc lock;
65 const CB_EXCLUSIVE = 1;
69 const AFSNAMEMAX = 256; /*Max size for name*/
70 const AFSPATHMAX = 1024; /*Max size for pathname*/
73 * Define the maximum opaque structure to be passed.
75 const AFSOPAQUEMAX = 1024;
76 typedef opaque AFSOpaque <AFSOPAQUEMAX>;
79 * Define the maximum arrays for passing callback fids and callbacks
83 typedef AFSFid AFSCBFids<AFSCBMAX>;
84 typedef AFSCallBack AFSCBs<AFSCBMAX>;
87 * Define the version of Cache Manager and File Server extended statistics
90 const AFSCB_XSTAT_VERSION = 2;
91 const AFS_XSTAT_VERSION = 2;
94 * Define the maximum arrays for passing extended statistics information
95 * for the Cache Manager and File Server back to our caller.
97 const AFSCB_MAX_XSTAT_LONGS = 2048;
98 const AFS_MAX_XSTAT_LONGS = 1024;
100 typedef afs_int32 AFSCB_CollData<AFSCB_MAX_XSTAT_LONGS>;
101 typedef afs_int32 AFS_CollData<AFS_MAX_XSTAT_LONGS>;
104 * Define the identifiers for the accessible extended stats data
107 const AFSCB_XSTATSCOLL_CALL_INFO = 0; /*CM call counting & info*/
108 const AFSCB_XSTATSCOLL_PERF_INFO = 1; /*CM performance info*/
109 const AFSCB_XSTATSCOLL_FULL_PERF_INFO = 2; /*CM performance info*/
111 const AFS_XSTATSCOLL_CALL_INFO = 0; /*FS call counting & info*/
112 const AFS_XSTATSCOLL_PERF_INFO = 1; /*FS performance info*/
113 const AFS_XSTATSCOLL_FULL_PERF_INFO = 2; /*Full FS performance info*/
115 typedef afs_uint32 VolumeId;
116 typedef afs_uint32 VolId;
117 typedef afs_uint32 VnodeId;
118 typedef afs_uint32 Unique;
119 typedef afs_uint32 UserId;
120 typedef afs_uint32 FileVersion;
121 typedef afs_int32 ErrorCode;
122 typedef afs_int32 Rights;
124 const AFS_DISKNAMESIZE = 32;
125 typedef opaque DiskName[AFS_DISKNAMESIZE];
127 const CALLBACK_VERSION = 1;
129 const AFS_MAX_INTERFACE_ADDR = 32;
130 struct interfaceAddr { /* for multihomed clients */
131 int numberOfInterfaces;
133 afs_int32 addr_in[AFS_MAX_INTERFACE_ADDR]; /* interface addresses */
134 afs_int32 subnetmask[AFS_MAX_INTERFACE_ADDR]; /* subnet masks in net ord */
135 afs_int32 mtu[AFS_MAX_INTERFACE_ADDR]; /* MTU */
138 const AFSMAXCELLHOSTS = 8; /*Max VLDB servers per cell*/
139 typedef afs_int32 serverList[AFSMAXCELLHOSTS];
141 typedef afs_uint32 cacheConfig<>;
143 %#endif /* FSINT_COMMON_XG */