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;
57 struct AFSDBCacheEntry64 {
59 afs_int32 cell; /*Cell part of the fid*/
60 AFSFid netFid; /*Network part of the fid*/
62 afs_int32 DataVersion;
63 struct AFSDBLockDesc lock;
75 struct AFSDBLockDesc lock;
81 const CB_EXCLUSIVE = 1;
85 const AFSNAMEMAX = 256; /*Max size for name*/
86 const AFSPATHMAX = 1024; /*Max size for pathname*/
89 * Define the maximum opaque structure to be passed.
91 const AFSOPAQUEMAX = 1024;
92 typedef opaque AFSOpaque <AFSOPAQUEMAX>;
95 * Define the maximum arrays for passing callback fids and callbacks
99 typedef AFSFid AFSCBFids<AFSCBMAX>;
100 typedef AFSCallBack AFSCBs<AFSCBMAX>;
103 * Define the version of Cache Manager and File Server extended statistics
106 const AFSCB_XSTAT_VERSION = 2;
107 const AFS_XSTAT_VERSION = 2;
110 * Define the maximum arrays for passing extended statistics information
111 * for the Cache Manager and File Server back to our caller.
113 const AFSCB_MAX_XSTAT_LONGS = 2048;
114 const AFS_MAX_XSTAT_LONGS = 1024;
116 typedef afs_int32 AFSCB_CollData<AFSCB_MAX_XSTAT_LONGS>;
117 typedef afs_int32 AFS_CollData<AFS_MAX_XSTAT_LONGS>;
120 * Define the identifiers for the accessible extended stats data
123 const AFSCB_XSTATSCOLL_CALL_INFO = 0; /*CM call counting & info*/
124 const AFSCB_XSTATSCOLL_PERF_INFO = 1; /*CM performance info*/
125 const AFSCB_XSTATSCOLL_FULL_PERF_INFO = 2; /*CM performance info*/
127 const AFS_XSTATSCOLL_CALL_INFO = 0; /*FS call counting & info*/
128 const AFS_XSTATSCOLL_PERF_INFO = 1; /*FS performance info*/
129 const AFS_XSTATSCOLL_FULL_PERF_INFO = 2; /*Full FS performance info*/
131 typedef afs_uint32 VolumeId;
132 typedef afs_uint32 VolId;
133 typedef afs_uint32 VnodeId;
134 typedef afs_uint32 Unique;
135 typedef afs_uint32 UserId;
136 typedef afs_uint32 FileVersion;
137 typedef afs_int32 ErrorCode;
138 typedef afs_int32 Rights;
140 const AFS_DISKNAMESIZE = 32;
141 typedef opaque DiskName[AFS_DISKNAMESIZE];
143 const CALLBACK_VERSION = 1;
145 const AFS_MAX_INTERFACE_ADDR = 32;
146 struct interfaceAddr { /* for multihomed clients */
147 int numberOfInterfaces;
149 afs_int32 addr_in[AFS_MAX_INTERFACE_ADDR]; /* interface addresses */
150 afs_int32 subnetmask[AFS_MAX_INTERFACE_ADDR]; /* subnet masks in net ord */
151 afs_int32 mtu[AFS_MAX_INTERFACE_ADDR]; /* MTU */
154 const AFSMAXCELLHOSTS = 8; /*Max VLDB servers per cell*/
155 typedef afs_int32 serverList<AFSMAXCELLHOSTS>;
157 typedef afs_uint32 cacheConfig<>;
159 const AFSCAPABILITIESMAX = 196;
160 typedef afs_int32 Capabilities<AFSCAPABILITIESMAX>;
162 %#endif /* FSINT_COMMON_XG */