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
10 #ifndef __BUDB_CLIENT__
11 #define __BUDB_CLIENT__
14 #ifndef BUDB_MAJORVERSION /* get the installed RPC stuff */
15 #include <sys/types.h>
21 /* for ubik_Call_SingleServer */
23 #define UF_SINGLESERVER 1 /* begin single server operation */
24 #define UF_END_SINGLESERVER 2 /* terminate single server operation */
27 /* handle for the ubik database connection */
30 afs_int32 uh_scIndex; /* what type of sec. object */
31 struct rx_securityClass *uh_secobj; /* security object */
32 struct rx_connection *uh_serverConn[MAXSERVERS]; /* server connections */
33 struct ubik_client *uh_client; /* ubik client handle */
34 afs_uint32 uh_instanceId; /* instance of client */
37 typedef struct udbHandleS udbHandleT;
38 typedef udbHandleT *udbHandleP;
40 /* suggested text block management structure */
42 struct udbClientTextS {
43 char *textName; /* for info. only */
44 afs_int32 textType; /* used as key for access */
45 afs_uint32 textVersion; /* version # for cache mgmt */
46 afs_uint32 lockHandle; /* for atomicity */
47 afs_int32 textSize; /* no. of bytes */
48 FILE *textStream; /* file stream or NULL */
51 typedef struct udbClientTextS udbClientTextT;
52 typedef udbClientTextT *udbClientTextP;