1 /***********************************************************************\
2 * rpcdce2.d *
3 * *
4 * Windows API header module *
5 * *
6 * Translated from MinGW Windows headers *
7 * *
8 * Placed into public domain *
9 \***********************************************************************/
10 module win32.rpcdce2;
11 version(Windows):
12
13 import win32.rpcdce;
14 private import win32.basetyps;
15
16 // FIXME: deal with RPC_UNICODE_SUPPORTED
17 // FIXME: check types of constants
18
19 enum {
20 RPC_C_EP_ALL_ELTS,
21 RPC_C_EP_MATCH_BY_IF,
22 RPC_C_EP_MATCH_BY_OBJ,
23 RPC_C_EP_MATCH_BY_BOTH
24 }
25
26 enum {
27 RPC_C_VERS_ALL = 1,
28 RPC_C_VERS_COMPATIBLE,
29 RPC_C_VERS_EXACT,
30 RPC_C_VERS_MAJOR_ONLY,
31 RPC_C_VERS_UPTO
32 }
33
34 const size_t DCE_C_ERROR_STRING_LEN = 256;
35
36 enum {
37 RPC_C_MGMT_INQ_IF_IDS,
38 RPC_C_MGMT_INQ_PRINC_NAME,
39 RPC_C_MGMT_INQ_STATS,
40 RPC_C_MGMT_IS_SERVER_LISTEN,
41 RPC_C_MGMT_STOP_SERVER_LISTEN
42 }
43
44 extern (Windows) {
45 int UuidCompare(UUID*, UUID*, RPC_STATUS*);
46 RPC_STATUS UuidCreateNil(UUID*);
47 int UuidEqual(UUID*, UUID*, RPC_STATUS*);
48 ushort UuidHash(UUID*, RPC_STATUS*);
49 int UuidIsNil(UUID*, RPC_STATUS*);
50
51 RPC_STATUS RpcMgmtEpEltInqBegin(RPC_BINDING_HANDLE, uint, RPC_IF_ID*,
52 uint, UUID*, RPC_EP_INQ_HANDLE*);
53 RPC_STATUS RpcMgmtEpEltInqDone(RPC_EP_INQ_HANDLE*);
54 RPC_STATUS RpcMgmtEpUnregister(RPC_BINDING_HANDLE, RPC_IF_ID*,
55 RPC_BINDING_HANDLE, UUID*);
56 RPC_STATUS RpcMgmtSetAuthorizationFn(RPC_MGMT_AUTHORIZATION_FN);
57 }
58
59
60 //#ifdef RPC_UNICODE_SUPPORTED
61 RPC_STATUS DceErrorInqTextA(RPC_STATUS, char*);
62 RPC_STATUS DceErrorInqTextW(RPC_STATUS, wchar*);
63 RPC_STATUS RpcMgmtEpEltInqNextA(RPC_EP_INQ_HANDLE, RPC_IF_ID*,
64 RPC_BINDING_HANDLE*, UUID*, char**);
65 RPC_STATUS RpcMgmtEpEltInqNextW(RPC_EP_INQ_HANDLE, RPC_IF_ID*,
66 RPC_BINDING_HANDLE*, UUID*, wchar**);
67 version (Unicode) {
68 alias RpcMgmtEpEltInqNextW RpcMgmtEpEltInqNext;
69 alias DceErrorInqTextW DceErrorInqText;
70 } else {
71 alias RpcMgmtEpEltInqNextA RpcMgmtEpEltInqNext;
72 alias DceErrorInqTextA DceErrorInqText;
73 }
74 /+
75 #else /* RPC_UNICODE_SUPPORTED */
76 RPC_STATUS RPC_ENTRY DceErrorInqText(RPC_STATUS,unsigned char*);
77 RPC_STATUS RPC_ENTRY RpcMgmtEpEltInqNext(RPC_EP_INQ_HANDLE,RPC_IF_ID*,RPC_BINDING_HANDLE*,UUID*,unsigned char**);
78 #endif
79 +/