root/trunk/win32/rpcnsi.d

Revision 345, 7.4 kB (checked in by CyberShadow, 2 years ago)

Replace "inout" with "ref" for D2 compatibility

Line 
1 /***********************************************************************\
2 *                                rpcnsi.d                               *
3 *                                                                       *
4 *                       Windows API header module                       *
5 *                     RPC Name Service (RpcNs APIs)                     *
6 *                                                                       *
7 *                 Translated from MinGW Windows headers                 *
8 *                                                                       *
9 *                       Placed into public domain                       *
10 \***********************************************************************/
11 module win32.rpcnsi;
12 pragma(lib, "rpcns4.lib");
13
14 private import win32.basetyps, win32.rpcdcep, win32.rpcnsi, win32.rpcdce,
15   win32.w32api;
16 private import win32.windef;  // for HANDLE
17
18 alias HANDLE RPC_NS_HANDLE;
19
20 const RPC_C_NS_SYNTAX_DEFAULT=0;
21 const RPC_C_NS_SYNTAX_DCE=3;
22 const RPC_C_PROFILE_DEFAULT_ELT=0;
23 const RPC_C_PROFILE_ALL_ELT=1;
24 const RPC_C_PROFILE_MATCH_BY_IF=2;
25 const RPC_C_PROFILE_MATCH_BY_MBR=3;
26 const RPC_C_PROFILE_MATCH_BY_BOTH=4;
27 const RPC_C_NS_DEFAULT_EXP_AGE=-1;
28
29 extern (Windows) {
30     RPC_STATUS RpcNsBindingExportA(uint, ubyte*, RPC_IF_HANDLE,
31       RPC_BINDING_VECTOR*, UUID_VECTOR*);
32     RPC_STATUS RpcNsBindingUnexportA(uint, ubyte*, RPC_IF_HANDLE,
33       UUID_VECTOR*);
34     RPC_STATUS RpcNsBindingLookupBeginA(uint, ubyte*, RPC_IF_HANDLE, UUID*,
35       uint, RPC_NS_HANDLE*);
36     RPC_STATUS RpcNsBindingLookupNext(RPC_NS_HANDLE, RPC_BINDING_VECTOR**);
37     RPC_STATUS RpcNsBindingLookupDone(RPC_NS_HANDLE*);
38     RPC_STATUS RpcNsGroupDeleteA(uint, ubyte*);
39     RPC_STATUS RpcNsGroupMbrAddA(uint, ubyte*, uint, ubyte*);
40     RPC_STATUS RpcNsGroupMbrRemoveA(uint, ubyte*, uint, ubyte*);
41     RPC_STATUS RpcNsGroupMbrInqBeginA(uint, ubyte*, uint, RPC_NS_HANDLE*);
42     RPC_STATUS RpcNsGroupMbrInqNextA(RPC_NS_HANDLE, ubyte**);
43     RPC_STATUS RpcNsGroupMbrInqDone(RPC_NS_HANDLE*);
44     RPC_STATUS RpcNsProfileDeleteA(uint, ubyte*);
45     RPC_STATUS RpcNsProfileEltAddA(uint, ubyte*, RPC_IF_ID*, uint, ubyte*,
46       uint, ubyte*);
47     RPC_STATUS RpcNsProfileEltRemoveA(uint, ubyte*, RPC_IF_ID*, uint, ubyte*);
48     RPC_STATUS RpcNsProfileEltInqBeginA(uint, ubyte*, uint, RPC_IF_ID*, uint,
49       uint, ubyte*, RPC_NS_HANDLE*);
50     RPC_STATUS RpcNsProfileEltInqNextA(RPC_NS_HANDLE, RPC_IF_ID*, ubyte**,
51       uint*, ubyte**);
52     RPC_STATUS RpcNsProfileEltInqDone(RPC_NS_HANDLE*);
53     RPC_STATUS RpcNsEntryObjectInqNext(in RPC_NS_HANDLE, out UUID*);
54     RPC_STATUS RpcNsEntryObjectInqDone(ref RPC_NS_HANDLE*);
55     RPC_STATUS RpcNsEntryExpandNameA(uint, ubyte*, ubyte**);
56     RPC_STATUS RpcNsMgmtBindingUnexportA(uint, ubyte*, RPC_IF_ID*, uint,
57       UUID_VECTOR*);
58     RPC_STATUS RpcNsMgmtEntryCreateA(uint, ubyte*);
59     RPC_STATUS RpcNsMgmtEntryDeleteA(uint, ubyte*);
60     RPC_STATUS RpcNsMgmtEntryInqIfIdsA(uint, ubyte*, RPC_IF_ID_VECTOR**);
61     RPC_STATUS RpcNsMgmtHandleSetExpAge(RPC_NS_HANDLE, uint);
62     RPC_STATUS RpcNsMgmtInqExpAge(uint*);
63     RPC_STATUS RpcNsMgmtSetExpAge(uint);
64     RPC_STATUS RpcNsBindingImportNext(RPC_NS_HANDLE, RPC_BINDING_HANDLE*);
65     RPC_STATUS RpcNsBindingImportDone(RPC_NS_HANDLE*);
66     RPC_STATUS RpcNsBindingSelect(RPC_BINDING_VECTOR*, RPC_BINDING_HANDLE*);
67 }
68
69 // For the cases where Win95, 98, ME have no _W versions, and we must alias to
70 // _A even for version(Unicode).
71
72 version (Unicode) {
73     static if (_WIN32_WINNT_ONLY) {
74         const bool _WIN32_USE_UNICODE = true;
75     } else {
76         const bool _WIN32_USE_UNICODE = false;
77     }
78 } else {
79     const bool _WIN32_USE_UNICODE = false;
80 }
81
82 static if (!_WIN32_USE_UNICODE) {
83     RPC_STATUS RpcNsEntryObjectInqBeginA(uint, ubyte*, RPC_NS_HANDLE*);
84     RPC_STATUS RpcNsBindingImportBeginA(uint, ubyte*, RPC_IF_HANDLE, UUID*,
85       RPC_NS_HANDLE*);
86 }
87
88 static if (_WIN32_WINNT_ONLY) {
89     RPC_STATUS RpcNsBindingExportW(uint, ushort*, RPC_IF_HANDLE,
90       RPC_BINDING_VECTOR*, UUID_VECTOR*);
91     RPC_STATUS RpcNsBindingUnexportW(uint, ushort*, RPC_IF_HANDLE,
92       UUID_VECTOR*);
93     RPC_STATUS RpcNsBindingLookupBeginW(uint, ushort*, RPC_IF_HANDLE, UUID*,
94       uint, RPC_NS_HANDLE*);
95     RPC_STATUS RpcNsGroupDeleteW(uint, ushort*);
96     RPC_STATUS RpcNsGroupMbrAddW(uint, ushort*, uint, ushort*);
97     RPC_STATUS RpcNsGroupMbrRemoveW(uint, ushort*, uint, ushort*);
98     RPC_STATUS RpcNsGroupMbrInqBeginW(uint, ushort*, uint, RPC_NS_HANDLE*);
99     RPC_STATUS RpcNsGroupMbrInqNextW(RPC_NS_HANDLE, ushort**);
100     RPC_STATUS RpcNsProfileDeleteW(uint, ushort*);
101     RPC_STATUS RpcNsProfileEltAddW(uint, ushort*, RPC_IF_ID*, uint, ushort*,
102       uint, ushort*);
103     RPC_STATUS RpcNsProfileEltRemoveW(uint, ushort*, RPC_IF_ID*, uint,
104       ushort*);
105     RPC_STATUS RpcNsProfileEltInqBeginW(uint, ushort*, uint, RPC_IF_ID*,
106       uint, uint, ushort*, RPC_NS_HANDLE*);
107     RPC_STATUS RpcNsProfileEltInqNextW(RPC_NS_HANDLE, RPC_IF_ID*, ushort**,
108       uint*, ushort**);
109     RPC_STATUS RpcNsEntryObjectInqBeginW(uint, ushort*, RPC_NS_HANDLE*);
110     RPC_STATUS RpcNsEntryExpandNameW(uint, ushort*, ushort**);
111     RPC_STATUS RpcNsMgmtBindingUnexportW(uint, ushort*, RPC_IF_ID*, uint,
112       UUID_VECTOR*);
113     RPC_STATUS RpcNsMgmtEntryCreateW(uint, ushort*);
114     RPC_STATUS RpcNsMgmtEntryDeleteW(uint, ushort*);
115     RPC_STATUS RpcNsMgmtEntryInqIfIdsW(uint, ushort , RPC_IF_ID_VECTOR**);
116     RPC_STATUS RpcNsBindingImportBeginW(uint, ushort*, RPC_IF_HANDLE, UUID*,
117       RPC_NS_HANDLE*);
118 } // _WIN32_WINNT_ONLY
119
120 static if (_WIN32_USE_UNICODE) {
121     alias RpcNsBindingLookupBeginW RpcNsBindingLookupBegin;
122     alias RpcNsBindingImportBeginW RpcNsBindingImportBegin;
123     alias RpcNsBindingExportW RpcNsBindingExport;
124     alias RpcNsBindingUnexportW RpcNsBindingUnexport;
125     alias RpcNsGroupDeleteW RpcNsGroupDelete;
126     alias RpcNsGroupMbrAddW RpcNsGroupMbrAdd;
127     alias RpcNsGroupMbrRemoveW RpcNsGroupMbrRemove;
128     alias RpcNsGroupMbrInqBeginW RpcNsGroupMbrInqBegin;
129     alias RpcNsGroupMbrInqNextW RpcNsGroupMbrInqNext;
130     alias RpcNsEntryExpandNameW RpcNsEntryExpandName;
131     alias RpcNsEntryObjectInqBeginW RpcNsEntryObjectInqBegin;
132     alias RpcNsMgmtBindingUnexportW RpcNsMgmtBindingUnexport;
133     alias RpcNsMgmtEntryCreateW RpcNsMgmtEntryCreate;
134     alias RpcNsMgmtEntryDeleteW RpcNsMgmtEntryDelete;
135     alias RpcNsMgmtEntryInqIfIdsW RpcNsMgmtEntryInqIfIds;
136     alias RpcNsProfileDeleteW RpcNsProfileDelete;
137     alias RpcNsProfileEltAddW RpcNsProfileEltAdd;
138     alias RpcNsProfileEltRemoveW RpcNsProfileEltRemove;
139     alias RpcNsProfileEltInqBeginW RpcNsProfileEltInqBegin;
140     alias RpcNsProfileEltInqNextW RpcNsProfileEltInqNext;
141 } else {
142     alias RpcNsBindingLookupBeginA RpcNsBindingLookupBegin;
143     alias RpcNsBindingImportBeginA RpcNsBindingImportBegin;
144     alias RpcNsBindingExportA RpcNsBindingExport;
145     alias RpcNsBindingUnexportA RpcNsBindingUnexport;
146     alias RpcNsGroupDeleteA RpcNsGroupDelete;
147     alias RpcNsGroupMbrAddA RpcNsGroupMbrAdd;
148     alias RpcNsGroupMbrRemoveA RpcNsGroupMbrRemove;
149     alias RpcNsGroupMbrInqBeginA RpcNsGroupMbrInqBegin;
150     alias RpcNsGroupMbrInqNextA RpcNsGroupMbrInqNext;
151     alias RpcNsEntryExpandNameA RpcNsEntryExpandName;
152     alias RpcNsEntryObjectInqBeginA RpcNsEntryObjectInqBegin;
153     alias RpcNsMgmtBindingUnexportA RpcNsMgmtBindingUnexport;
154     alias RpcNsMgmtEntryCreateA RpcNsMgmtEntryCreate;
155     alias RpcNsMgmtEntryDeleteA RpcNsMgmtEntryDelete;
156     alias RpcNsMgmtEntryInqIfIdsA RpcNsMgmtEntryInqIfIds;
157     alias RpcNsProfileDeleteA RpcNsProfileDelete;
158     alias RpcNsProfileEltAddA RpcNsProfileEltAdd;
159     alias RpcNsProfileEltRemoveA RpcNsProfileEltRemove;
160     alias RpcNsProfileEltInqBeginA RpcNsProfileEltInqBegin;
161     alias RpcNsProfileEltInqNextA RpcNsProfileEltInqNext;
162 }
Note: See TracBrowser for help on using the browser.