home *** CD-ROM | disk | FTP | other *** search
/ QBasic & Borland Pascal & C / Delphi5.iso / C / BC_502 / RTLWIN32.PAK / RPCDCE2.H < prev    next >
Encoding:
C/C++ Source or Header  |  1997-05-06  |  4.4 KB  |  193 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. /* $Copyright: 1994$ */
  21.  
  22. #ifndef __RPCDCE2_H__
  23. #define __RPCDCE2_H__
  24. #define __RPCDCE2_H
  25. #pragma option -b
  26.  
  27. #ifdef __cplusplus
  28. extern "C" {
  29. #endif
  30.  
  31. signed int RPC_ENTRY
  32. UuidCompare (
  33.     IN UUID __RPC_FAR * Uuid1,
  34.     IN UUID __RPC_FAR * Uuid2,
  35.     OUT RPC_STATUS __RPC_FAR * Status
  36.     );
  37.  
  38. RPC_STATUS RPC_ENTRY
  39. UuidCreateNil (
  40.     OUT UUID __RPC_FAR * NilUuid
  41.     );
  42.  
  43. int RPC_ENTRY
  44. UuidEqual (
  45.     IN UUID __RPC_FAR * Uuid1,
  46.     IN UUID __RPC_FAR * Uuid2,
  47.     OUT RPC_STATUS __RPC_FAR * Status
  48.     );
  49.  
  50. unsigned short RPC_ENTRY
  51. UuidHash (
  52.     IN UUID __RPC_FAR * Uuid,
  53.     OUT RPC_STATUS __RPC_FAR * Status
  54.     );
  55.  
  56. int RPC_ENTRY
  57. UuidIsNil (
  58.     IN UUID __RPC_FAR * Uuid,
  59.     OUT RPC_STATUS __RPC_FAR * Status
  60.     );
  61.  
  62. #ifdef RPC_UNICODE_SUPPORTED
  63.  
  64. RPC_STATUS RPC_ENTRY
  65. DceErrorInqTextA (
  66.     IN RPC_STATUS RpcStatus,
  67.     OUT unsigned char __RPC_FAR * ErrorText
  68.     );
  69.  
  70. RPC_STATUS RPC_ENTRY
  71. DceErrorInqTextW (
  72.     IN RPC_STATUS RpcStatus,
  73.     OUT unsigned short __RPC_FAR * ErrorText
  74.     );
  75.  
  76. #ifdef UNICODE
  77. #define DceErrorInqText DceErrorInqTextW
  78. #else /* UNICODE */
  79. #define DceErrorInqText DceErrorInqTextA
  80. #endif /* UNICODE */
  81.  
  82. #else /* RPC_UNICODE_SUPPORTED */
  83.  
  84. RPC_STATUS RPC_ENTRY
  85. DceErrorInqText (
  86.     IN RPC_STATUS RpcStatus,
  87.     OUT unsigned char __RPC_FAR * ErrorText
  88.     );
  89.  
  90. #endif /* RPC_UNICODE_SUPPORTED */
  91.  
  92. #define DCE_C_ERROR_STRING_LEN 256
  93.  
  94. typedef void __RPC_FAR * RPC_EP_INQ_HANDLE;
  95.  
  96. #define  RPC_C_EP_ALL_ELTS        0
  97. #define  RPC_C_EP_MATCH_BY_IF     1
  98. #define  RPC_C_EP_MATCH_BY_OBJ    2
  99. #define  RPC_C_EP_MATCH_BY_BOTH   3
  100.  
  101. #define  RPC_C_VERS_ALL           1
  102. #define  RPC_C_VERS_COMPATIBLE    2
  103. #define  RPC_C_VERS_EXACT         3
  104. #define  RPC_C_VERS_MAJOR_ONLY    4
  105. #define  RPC_C_VERS_UPTO          5
  106.  
  107. RPC_STATUS RPC_ENTRY
  108. RpcMgmtEpEltInqBegin (
  109.     IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
  110.     IN unsigned long InquiryType,
  111.     IN RPC_IF_ID __RPC_FAR * IfId OPTIONAL,
  112.     IN unsigned long VersOption OPTIONAL,
  113.     IN UUID __RPC_FAR * ObjectUuid OPTIONAL,
  114.     OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
  115.     );
  116.  
  117. RPC_STATUS RPC_ENTRY
  118. RpcMgmtEpEltInqDone (
  119.     IN OUT RPC_EP_INQ_HANDLE __RPC_FAR * InquiryContext
  120.     );
  121.  
  122. #ifdef RPC_UNICODE_SUPPORTED
  123.  
  124. RPC_STATUS RPC_ENTRY
  125. RpcMgmtEpEltInqNextA (
  126.     IN RPC_EP_INQ_HANDLE InquiryContext,
  127.     OUT RPC_IF_ID __RPC_FAR * IfId,
  128.     OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
  129.     OUT UUID __RPC_FAR * ObjectUuid OPTIONAL,
  130.     OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
  131.     );
  132.  
  133. RPC_STATUS RPC_ENTRY
  134. RpcMgmtEpEltInqNextW (
  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 short __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
  140.     );
  141.  
  142. #ifdef UNICODE
  143. #define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextW
  144. #else /* UNICODE */
  145. #define RpcMgmtEpEltInqNext RpcMgmtEpEltInqNextA
  146. #endif /* UNICODE */
  147.  
  148. #else /* RPC_UNICODE_SUPPORTED */
  149.  
  150. RPC_STATUS RPC_ENTRY
  151. RpcMgmtEpEltInqNext (
  152.     IN RPC_EP_INQ_HANDLE InquiryContext,
  153.     OUT RPC_IF_ID __RPC_FAR * IfId,
  154.     OUT RPC_BINDING_HANDLE __RPC_FAR * Binding OPTIONAL,
  155.     OUT unsigned char __RPC_FAR * __RPC_FAR * Annotation OPTIONAL
  156.     );
  157.  
  158. #endif /* RPC_UNICODE_SUPPORTED */
  159.  
  160. RPC_STATUS RPC_ENTRY
  161. RpcMgmtEpUnregister (
  162.     IN RPC_BINDING_HANDLE EpBinding OPTIONAL,
  163.     IN RPC_IF_ID __RPC_FAR * IfId,
  164.     IN RPC_BINDING_HANDLE Binding,
  165.     IN UUID __RPC_FAR * ObjectUuid OPTIONAL
  166.     );
  167.  
  168. typedef int
  169. (__RPC_API * RPC_MGMT_AUTHORIZATION_FN) (
  170.     IN RPC_BINDING_HANDLE ClientBinding,
  171.     IN unsigned long RequestedMgmtOperation,
  172.     OUT RPC_STATUS __RPC_FAR * Status
  173.     );
  174.  
  175. #define RPC_C_MGMT_INQ_IF_IDS         0
  176. #define RPC_C_MGMT_INQ_PRINC_NAME     1
  177. #define RPC_C_MGMT_INQ_STATS          2
  178. #define RPC_C_MGMT_IS_SERVER_LISTEN   3
  179. #define RPC_C_MGMT_STOP_SERVER_LISTEN 4
  180.  
  181. RPC_STATUS RPC_ENTRY
  182. RpcMgmtSetAuthorizationFn (
  183.     IN RPC_MGMT_AUTHORIZATION_FN AuthorizationFn
  184.     );
  185.  
  186. #ifdef __cplusplus
  187. }
  188. #endif
  189.  
  190. #pragma option -b.
  191. #endif /* __RPCDCE2_H__ */
  192.  
  193.