home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 May / PCP163A.iso / Runimage / Cbuilder4 / Include / RPCDCE2.H < prev    next >
Encoding:
C/C++ Source or Header  |  1999-01-26  |  4.6 KB  |  202 lines

  1. /*++
  2.  
  3. Module Name:
  4.  
  5.     rpcdce2.h
  6.  
  7. Abstract:
  8.  
  9.     This file contains the prototypes of the RPC APIs which are not contained
  10.     in the runtime dll, but in a seperate library.
  11.  
  12. Author:
  13.  
  14.     Michael Montague (mikemon) 12-Apr-1993
  15.  
  16. Revision History:
  17.  
  18. --*/
  19.  
  20. /*
  21.  *      C/C++ Run Time Library - Version 9.5
  22.  *
  23.  *      Copyright (c) 1994, 1999 by Inprise Corporation
  24.  *      All Rights Reserved.
  25.  *
  26.  */
  27.  
  28.  
  29. #ifndef __RPCDCE2_H__
  30. #pragma option push -b -a8 -pc -A- /*P_O_Push_S*/
  31. #define __RPCDCE2_H__
  32. #define __RPCDCE2_H
  33. #pragma option push -b
  34.  
  35.  
  36. #ifdef __cplusplus
  37. extern "C" {
  38. #endif
  39.  
  40. signed int RPC_ENTRY
  41. UuidCompare (
  42.     IN UUID __RPC_FAR * Uuid1,
  43.     IN UUID __RPC_FAR * Uuid2,
  44.     OUT RPC_STATUS __RPC_FAR * Status
  45.     );
  46.  
  47. RPC_STATUS RPC_ENTRY
  48. UuidCreateNil (
  49.     OUT UUID __RPC_FAR * NilUuid
  50.     );
  51.  
  52. int RPC_ENTRY
  53. UuidEqual (
  54.     IN UUID __RPC_FAR * Uuid1,
  55.     IN UUID __RPC_FAR * Uuid2,
  56.     OUT RPC_STATUS __RPC_FAR * Status
  57.     );
  58.  
  59. unsigned short RPC_ENTRY
  60. UuidHash (
  61.     IN UUID __RPC_FAR * Uuid,
  62.     OUT RPC_STATUS __RPC_FAR * Status
  63.     );
  64.  
  65. int RPC_ENTRY
  66. UuidIsNil (
  67.     IN UUID __RPC_FAR * Uuid,
  68.     OUT RPC_STATUS __RPC_FAR * Status
  69.     );
  70.  
  71. #ifdef RPC_UNICODE_SUPPORTED
  72.  
  73. RPC_STATUS RPC_ENTRY
  74. DceErrorInqTextA (
  75.     IN RPC_STATUS RpcStatus,
  76.     OUT unsigned char __RPC_FAR * ErrorText
  77.     );
  78.  
  79. RPC_STATUS RPC_ENTRY
  80. DceErrorInqTextW (
  81.     IN RPC_STATUS RpcStatus,
  82.     OUT unsigned short __RPC_FAR * ErrorText
  83.     );
  84.  
  85. #ifdef UNICODE
  86. #define DceErrorInqText DceErrorInqTextW
  87. #else /* UNICODE */
  88. #define DceErrorInqText DceErrorInqTextA
  89. #endif /* UNICODE */
  90.  
  91. #else /* RPC_UNICODE_SUPPORTED */
  92.  
  93. RPC_STATUS RPC_ENTRY
  94. DceErrorInqText (
  95.     IN RPC_STATUS RpcStatus,
  96.     OUT unsigned char __RPC_FAR * ErrorText
  97.     );
  98.  
  99. #endif /* RPC_UNICODE_SUPPORTED */
  100.  
  101. #define DCE_C_ERROR_STRING_LEN 256
  102.  
  103. typedef void __RPC_FAR * RPC_EP_INQ_HANDLE;
  104.  
  105. #define  RPC_C_EP_ALL_ELTS        0
  106. #define  RPC_C_EP_MATCH_BY_IF     1
  107. #define  RPC_C_EP_MATCH_BY_OBJ    2
  108. #define  RPC_C_EP_MATCH_BY_BOTH   3
  109.  
  110. #define  RPC_C_VERS_ALL           1
  111. #define  RPC_C_VERS_COMPATIBLE    2
  112. #define  RPC_C_VERS_EXACT         3
  113. #define  RPC_C_VERS_MAJOR_ONLY    4
  114. #define  RPC_C_VERS_UPTO          5
  115.  
  116. RPC_STATUS RPC_ENTRY
  117. RpcMgmtEpEltInqBegin (
  118.     IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
  119.     IN unsigned long InquiryType,
  120.     IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
  121.     IN unsigned long VersOption OPTIONAL,
  122.     IN UUID __RPC_FAR * ObjectUuid OPTIONAL,
  123.     OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
  124.     );
  125.  
  126. RPC_STATUS RPC_ENTRY
  127. RpcMgmtEpEltInqDone (
  128.     IN OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
  129.     );
  130.  
  131. #ifdef RPC_UNICODE_SUPPORTED
  132.  
  133. RPC_STATUS RPC_ENTRY
  134. RpcMgmtEpEltInqNextA (
  135.     IN RPC_EP_INQ_HANDLE InquiryContext,
  136.     OUT RPC_IF_ID __RPC_FAR * IfId,
  137.     OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
  138.     OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
  139.     OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
  140.     );
  141.  
  142. RPC_STATUS RPC_ENTRY
  143. RpcMgmtEpEltInqNextW (
  144.     IN RPC_EP_INQ_HANDLE InquiryContext,
  145.     OUT RPC_IF_ID __RPC_FAR * IfId,
  146.     OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
  147.     OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
  148.     OUT unsigned short __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
  149.     );
  150.  
  151. #ifdef UNICODE
  152. #define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextW
  153. #else /* UNICODE */
  154. #define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextA
  155. #endif /* UNICODE */
  156.  
  157. #else /* RPC_UNICODE_SUPPORTED */
  158.  
  159. RPC_STATUS RPC_ENTRY
  160. RpcMgmtEpEltInqNext (
  161.     IN RPC_EP_INQ_HANDLE InquiryContext,
  162.     OUT RPC_IF_ID __RPC_FAR * IfId,
  163.     OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
  164.     OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
  165.     );
  166.  
  167. #endif /* RPC_UNICODE_SUPPORTED */
  168.  
  169. RPC_STATUS RPC_ENTRY
  170. RpcMgmtEpUnregister (
  171.     IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
  172.     IN RPC_IF_ID __RPC_FAR * IfId,
  173.     IN RPC_BINDING_HANDLE Binding,
  174.     IN UUID __RPC_FAR * ObjectUuid OPTIONAL
  175.     );
  176.  
  177. typedef int
  178. (__RPC_API * RPC_MGMT_AUTHORIZATION_FN) (
  179.     IN RPC_BINDING_HANDLE ClientBinding,
  180.     IN unsigned long RequestedMgmtOperation,
  181.     OUT RPC_STATUS __RPC_FAR * Status
  182.     );
  183.  
  184. #define RPC_C_MGMT_INQ_IF_IDS         0
  185. #define RPC_C_MGMT_INQ_PRINC_NAME     1
  186. #define RPC_C_MGMT_INQ_STATS          2
  187. #define RPC_C_MGMT_IS_SERVER_LISTEN   3
  188. #define RPC_C_MGMT_STOP_SERVER_LISTEN 4
  189.  
  190. RPC_STATUS RPC_ENTRY
  191. RpcMgmtSetAuthorizationFn (
  192.     IN RPC_MGMT_AUTHORIZATION_FN AuthorizationFn
  193.     );
  194.  
  195. #ifdef __cplusplus
  196. }
  197. #endif
  198.  
  199. #pragma option pop
  200. #pragma option pop /*P_O_Pop*/
  201. #endif /* __RPCDCE2_H__ */
  202.