OpenAFS
OpenAFS distributed network file system
/cygdrive/c/src/openafs/openafs.git/repo/src/WINNT/client_osi/dbrpc.idl
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 }
 All Data Structures Files Functions Variables