OpenAFS
OpenAFS distributed network file system
|
00001 /* Copyright (C) 1994 Cazamar Systems, Inc. */ 00002 00003 [ 00004 uuid(7E8952D8-1B50-101B-8952-204C4F4F5020), 00005 version(1.0) 00006 ] 00007 interface dbrpc 00008 { 00009 00010 /* return codes */ 00011 const long OSI_DBRPC_NOENTRY = 1; 00012 const long OSI_DBRPC_EOF = 2; 00013 const long OSI_DBRPC_NOFD = 3; 00014 00015 /* parameter for string descr */ 00016 const long OSI_DBRPC_STRLEN = 256; /* max bytes string */ 00017 00018 /* info passed around */ 00019 const long OSI_DBRPC_NUMINTS = 32; /* # of integers */ 00020 const long OSI_DBRPC_NUMSTRS = 8; /* # of strings */ 00021 00022 /* lock types */ 00023 const long OSI_DBRPC_MUTEXTYPE = 1; /* a mutex */ 00024 const long OSI_DBRPC_RWLOCKTYPE = 2; /* a rwlock */ 00025 00026 /* getformat region values */ 00027 const long OSI_DBRPC_REGIONSTRING = 0; /* string index */ 00028 const long OSI_DBRPC_REGIONINT = 1; /* index in the integer region */ 00029 00030 /* error codes */ 00031 const long OSI_DBRPC_OK = 0; 00032 const long OSI_DBRPC_DONE = 1; 00033 const long OSI_DBRPC_BADFD = 2; 00034 00035 /* format bits */ 00036 const long OSI_DBRPC_SUPRESSIFZERO = 1; /* don't print zeroes */ 00037 const long OSI_DBRPC_HEX = 2; /* print #s in hex */ 00038 const long OSI_DBRPC_SIGNED = 4; /* print as signed # */ 00039 00040 /* describe the format of a statistics entry */ 00041 typedef struct osi_remFormat { 00042 char label[32]; 00043 long format; 00044 } osi_remFormat_t; 00045 00046 typedef struct osi_remHyper { 00047 unsigned long LowPart; 00048 unsigned long HighPart; 00049 } osi_remHyper_t; 00050 00051 typedef char osi_remString_t[OSI_DBRPC_STRLEN]; 00052 00053 typedef struct osi_remGetInfoParms { 00054 long icount; 00055 long scount; 00056 /* [length_is (icount)] __int64 idata[OSI_DBRPC_NUMINTS]; */ 00057 __int64 idata[OSI_DBRPC_NUMINTS]; 00058 [length_is (scount)] osi_remString_t sdata[OSI_DBRPC_NUMSTRS]; 00059 } osi_remGetInfoParms_t; 00060 00061 void dbrpc_Ping( 00062 [in] handle_t handle 00063 ); 00064 00065 void dbrpc_Open( 00066 [in] handle_t handle, 00067 [in, string] char *namep, 00068 [out, ref] osi_remHyper_t *fd, 00069 [out, ref] long *code 00070 ); 00071 00072 void dbrpc_GetInfo( 00073 [in] handle_t handle, 00074 [in, ref] osi_remHyper_t *fd, 00075 [out, ref] osi_remGetInfoParms_t *status, 00076 [out, ref] long *code 00077 ); 00078 00079 void dbrpc_Close( 00080 [in] handle_t handle, 00081 [in, ref] osi_remHyper_t *fd, 00082 [out, ref] long *code 00083 ); 00084 00085 void dbrpc_GetFormat( 00086 [in] handle_t handle, 00087 [in, string] char *namep, 00088 [in] long region, /* 0 for string, 1 for integer */ 00089 [in] long index, 00090 [out, ref] osi_remFormat_t *formatp, 00091 [out, ref] long *code 00092 ); 00093 00094 }