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