1 /**
2  * Windows API header module
3  *
4  * RPC Name Service (RpcNs APIs)
5  *
6  * Translated from MinGW Windows headers
7  *
8  * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
9  * Source: $(DRUNTIMESRC core/sys/windows/_rpcnsi.d)
10  */
11 /// Automatically imported and edited from the druntime module
12 /// core.sys.windows.rpcnsi for the auto-generated win32 package.
13 module win32.rpcnsi;
14 //version (Windows):
15 @system:
16 
17 version (ANSI) {} else version = Unicode;
18 version (Win32_UseLib) pragma(lib, "rpcns4");
19 
20 import win32.basetyps, win32.rpcdcep, win32.rpcnsi, win32.rpcdce,
21   win32.w32api;
22 import win32.windef;  // for HANDLE
23 
24 mixin DECLARE_HANDLE!("RPC_NS_HANDLE");
25 
26 enum RPC_C_NS_SYNTAX_DEFAULT=0;
27 enum RPC_C_NS_SYNTAX_DCE=3;
28 enum RPC_C_PROFILE_DEFAULT_ELT=0;
29 enum RPC_C_PROFILE_ALL_ELT=1;
30 enum RPC_C_PROFILE_MATCH_BY_IF=2;
31 enum RPC_C_PROFILE_MATCH_BY_MBR=3;
32 enum RPC_C_PROFILE_MATCH_BY_BOTH=4;
33 enum RPC_C_NS_DEFAULT_EXP_AGE=-1;
34 
35 extern (Windows) {
36     RPC_STATUS RpcNsBindingExportA(uint, ubyte*, RPC_IF_HANDLE,
37       RPC_BINDING_VECTOR*, UUID_VECTOR*);
38     RPC_STATUS RpcNsBindingUnexportA(uint, ubyte*, RPC_IF_HANDLE,
39       UUID_VECTOR*);
40     RPC_STATUS RpcNsBindingLookupBeginA(uint, ubyte*, RPC_IF_HANDLE, UUID*,
41       uint, RPC_NS_HANDLE*);
42     RPC_STATUS RpcNsBindingLookupNext(RPC_NS_HANDLE, RPC_BINDING_VECTOR**);
43     RPC_STATUS RpcNsBindingLookupDone(RPC_NS_HANDLE*);
44     RPC_STATUS RpcNsGroupDeleteA(uint, ubyte*);
45     RPC_STATUS RpcNsGroupMbrAddA(uint, ubyte*, uint, ubyte*);
46     RPC_STATUS RpcNsGroupMbrRemoveA(uint, ubyte*, uint, ubyte*);
47     RPC_STATUS RpcNsGroupMbrInqBeginA(uint, ubyte*, uint, RPC_NS_HANDLE*);
48     RPC_STATUS RpcNsGroupMbrInqNextA(RPC_NS_HANDLE, ubyte**);
49     RPC_STATUS RpcNsGroupMbrInqDone(RPC_NS_HANDLE*);
50     RPC_STATUS RpcNsProfileDeleteA(uint, ubyte*);
51     RPC_STATUS RpcNsProfileEltAddA(uint, ubyte*, RPC_IF_ID*, uint, ubyte*,
52       uint, ubyte*);
53     RPC_STATUS RpcNsProfileEltRemoveA(uint, ubyte*, RPC_IF_ID*, uint, ubyte*);
54     RPC_STATUS RpcNsProfileEltInqBeginA(uint, ubyte*, uint, RPC_IF_ID*, uint,
55       uint, ubyte*, RPC_NS_HANDLE*);
56     RPC_STATUS RpcNsProfileEltInqNextA(RPC_NS_HANDLE, RPC_IF_ID*, ubyte**,
57       uint*, ubyte**);
58     RPC_STATUS RpcNsProfileEltInqDone(RPC_NS_HANDLE*);
59     RPC_STATUS RpcNsEntryObjectInqNext(RPC_NS_HANDLE, UUID*);
60     RPC_STATUS RpcNsEntryObjectInqDone(RPC_NS_HANDLE*);
61     RPC_STATUS RpcNsEntryExpandNameA(uint, ubyte*, ubyte**);
62     RPC_STATUS RpcNsMgmtBindingUnexportA(uint, ubyte*, RPC_IF_ID*, uint,
63       UUID_VECTOR*);
64     RPC_STATUS RpcNsMgmtEntryCreateA(uint, ubyte*);
65     RPC_STATUS RpcNsMgmtEntryDeleteA(uint, ubyte*);
66     RPC_STATUS RpcNsMgmtEntryInqIfIdsA(uint, ubyte*, RPC_IF_ID_VECTOR**);
67     RPC_STATUS RpcNsMgmtHandleSetExpAge(RPC_NS_HANDLE, uint);
68     RPC_STATUS RpcNsMgmtInqExpAge(uint*);
69     RPC_STATUS RpcNsMgmtSetExpAge(uint);
70     RPC_STATUS RpcNsBindingImportNext(RPC_NS_HANDLE, RPC_BINDING_HANDLE*);
71     RPC_STATUS RpcNsBindingImportDone(RPC_NS_HANDLE*);
72     RPC_STATUS RpcNsBindingSelect(RPC_BINDING_VECTOR*, RPC_BINDING_HANDLE*);
73 
74 version (Unicode) {
75 } else {
76     RPC_STATUS RpcNsEntryObjectInqBeginA(uint, ubyte*, RPC_NS_HANDLE*);
77     RPC_STATUS RpcNsBindingImportBeginA(uint, ubyte*, RPC_IF_HANDLE, UUID*,
78       RPC_NS_HANDLE*);
79 }
80 
81     RPC_STATUS RpcNsBindingExportW(uint, ushort*, RPC_IF_HANDLE,
82       RPC_BINDING_VECTOR*, UUID_VECTOR*);
83     RPC_STATUS RpcNsBindingUnexportW(uint, ushort*, RPC_IF_HANDLE,
84       UUID_VECTOR*);
85     RPC_STATUS RpcNsBindingLookupBeginW(uint, ushort*, RPC_IF_HANDLE, UUID*,
86       uint, RPC_NS_HANDLE*);
87     RPC_STATUS RpcNsGroupDeleteW(uint, ushort*);
88     RPC_STATUS RpcNsGroupMbrAddW(uint, ushort*, uint, ushort*);
89     RPC_STATUS RpcNsGroupMbrRemoveW(uint, ushort*, uint, ushort*);
90     RPC_STATUS RpcNsGroupMbrInqBeginW(uint, ushort*, uint, RPC_NS_HANDLE*);
91     RPC_STATUS RpcNsGroupMbrInqNextW(RPC_NS_HANDLE, ushort**);
92     RPC_STATUS RpcNsProfileDeleteW(uint, ushort*);
93     RPC_STATUS RpcNsProfileEltAddW(uint, ushort*, RPC_IF_ID*, uint, ushort*,
94       uint, ushort*);
95     RPC_STATUS RpcNsProfileEltRemoveW(uint, ushort*, RPC_IF_ID*, uint,
96       ushort*);
97     RPC_STATUS RpcNsProfileEltInqBeginW(uint, ushort*, uint, RPC_IF_ID*,
98       uint, uint, ushort*, RPC_NS_HANDLE*);
99     RPC_STATUS RpcNsProfileEltInqNextW(RPC_NS_HANDLE, RPC_IF_ID*, ushort**,
100       uint*, ushort**);
101     RPC_STATUS RpcNsEntryObjectInqBeginW(uint, ushort*, RPC_NS_HANDLE*);
102     RPC_STATUS RpcNsEntryExpandNameW(uint, ushort*, ushort**);
103     RPC_STATUS RpcNsMgmtBindingUnexportW(uint, ushort*, RPC_IF_ID*, uint,
104       UUID_VECTOR*);
105     RPC_STATUS RpcNsMgmtEntryCreateW(uint, ushort*);
106     RPC_STATUS RpcNsMgmtEntryDeleteW(uint, ushort*);
107     RPC_STATUS RpcNsMgmtEntryInqIfIdsW(uint, ushort , RPC_IF_ID_VECTOR**);
108     RPC_STATUS RpcNsBindingImportBeginW(uint, ushort*, RPC_IF_HANDLE, UUID*,
109       RPC_NS_HANDLE*);
110 }
111 
112 version (Unicode) {
113     alias RpcNsBindingLookupBeginW RpcNsBindingLookupBegin;
114     alias RpcNsBindingImportBeginW RpcNsBindingImportBegin;
115     alias RpcNsBindingExportW RpcNsBindingExport;
116     alias RpcNsBindingUnexportW RpcNsBindingUnexport;
117     alias RpcNsGroupDeleteW RpcNsGroupDelete;
118     alias RpcNsGroupMbrAddW RpcNsGroupMbrAdd;
119     alias RpcNsGroupMbrRemoveW RpcNsGroupMbrRemove;
120     alias RpcNsGroupMbrInqBeginW RpcNsGroupMbrInqBegin;
121     alias RpcNsGroupMbrInqNextW RpcNsGroupMbrInqNext;
122     alias RpcNsEntryExpandNameW RpcNsEntryExpandName;
123     alias RpcNsEntryObjectInqBeginW RpcNsEntryObjectInqBegin;
124     alias RpcNsMgmtBindingUnexportW RpcNsMgmtBindingUnexport;
125     alias RpcNsMgmtEntryCreateW RpcNsMgmtEntryCreate;
126     alias RpcNsMgmtEntryDeleteW RpcNsMgmtEntryDelete;
127     alias RpcNsMgmtEntryInqIfIdsW RpcNsMgmtEntryInqIfIds;
128     alias RpcNsProfileDeleteW RpcNsProfileDelete;
129     alias RpcNsProfileEltAddW RpcNsProfileEltAdd;
130     alias RpcNsProfileEltRemoveW RpcNsProfileEltRemove;
131     alias RpcNsProfileEltInqBeginW RpcNsProfileEltInqBegin;
132     alias RpcNsProfileEltInqNextW RpcNsProfileEltInqNext;
133 } else {
134     alias RpcNsBindingLookupBeginA RpcNsBindingLookupBegin;
135     alias RpcNsBindingImportBeginA RpcNsBindingImportBegin;
136     alias RpcNsBindingExportA RpcNsBindingExport;
137     alias RpcNsBindingUnexportA RpcNsBindingUnexport;
138     alias RpcNsGroupDeleteA RpcNsGroupDelete;
139     alias RpcNsGroupMbrAddA RpcNsGroupMbrAdd;
140     alias RpcNsGroupMbrRemoveA RpcNsGroupMbrRemove;
141     alias RpcNsGroupMbrInqBeginA RpcNsGroupMbrInqBegin;
142     alias RpcNsGroupMbrInqNextA RpcNsGroupMbrInqNext;
143     alias RpcNsEntryExpandNameA RpcNsEntryExpandName;
144     alias RpcNsEntryObjectInqBeginA RpcNsEntryObjectInqBegin;
145     alias RpcNsMgmtBindingUnexportA RpcNsMgmtBindingUnexport;
146     alias RpcNsMgmtEntryCreateA RpcNsMgmtEntryCreate;
147     alias RpcNsMgmtEntryDeleteA RpcNsMgmtEntryDelete;
148     alias RpcNsMgmtEntryInqIfIdsA RpcNsMgmtEntryInqIfIds;
149     alias RpcNsProfileDeleteA RpcNsProfileDelete;
150     alias RpcNsProfileEltAddA RpcNsProfileEltAdd;
151     alias RpcNsProfileEltRemoveA RpcNsProfileEltRemove;
152     alias RpcNsProfileEltInqBeginA RpcNsProfileEltInqBegin;
153     alias RpcNsProfileEltInqNextA RpcNsProfileEltInqNext;
154 }