- Add all publicly available information about the spoolsv RPC interface of Windows...
[reactos.git] / reactos / include / reactos / idl / wlansvc.idl
1 /*
2 * WLAN Service interface definition
3 */
4
5 #include <ms-dtyp.idl>
6 #include <wlanapi.h>
7
8 typedef [context_handle] PVOID WLANSVC_RPC_HANDLE;
9 typedef WLANSVC_RPC_HANDLE *LPWLANSVC_RPC_HANDLE;
10 typedef [handle, string] LPWSTR WLANSVC_HANDLE;
11
12 /* FIXME */
13 typedef struct struct_C {
14 ULONGLONG elem_1;
15 ULONGLONG elem_2;
16 GUID elem_3;
17 GUID elem_4;
18 DWORD elem_5;
19 GUID elem_6;
20 DWORD elem_7;
21 DWORD elem_8;
22 ULONGLONG elem_9;
23 [size_is(elem_7)] BYTE elem_10[];
24 } struct_C ;
25
26 typedef struct struct_D {
27 GUID elem_1;
28 GUID elem_2;
29 DWORD elem_3;
30 ULONGLONG elem_4;
31 [size_is(elem_3)] BYTE elem_5[];
32 } struct_D ;
33
34 typedef struct struct_E {
35 /* enum16 */ short elem_1;
36 DWORD elem_2;
37 WCHAR elem_3[256];
38 WCHAR elem_4[1024];
39 } struct_E ;
40
41 [
42 uuid(266f33b4-c7c1-4bd1-8f52-ddb8f2214ea9),
43 version(1.0),
44 pointer_default(unique)
45 #ifndef __midl
46 ,explicit_handle
47 #endif
48 ]
49
50 interface wlansvc_interface
51 {
52 /* Function: 0x00 */
53 DWORD _RpcOpenHandle(
54 [in] WLANSVC_HANDLE szMachineName,
55 [in] DWORD dwClientVersion,
56 [out] DWORD* pdwNegotiatedVersion,
57 [out] WLANSVC_RPC_HANDLE *phClientHandle);
58
59 /* Function: 0x01 */
60 DWORD _RpcCloseHandle(
61 [in, out] WLANSVC_RPC_HANDLE *phClientHandle);
62
63 /* Function: 0x02 */
64 DWORD _RpcEnumInterfaces(
65 [in] WLANSVC_RPC_HANDLE hClientHandle,
66 [out, ref] PWLAN_INTERFACE_INFO_LIST *ppInterfaceList);
67
68 /* Function: 0x03 */
69 DWORD _RpcSetAutoConfigParameter(
70 [in] WLANSVC_RPC_HANDLE hClientHandle,
71 [in] /* enum32 */ long OpCode,
72 [in] DWORD dwDataSize,
73 [in][size_is(dwDataSize)] LPBYTE pData);
74
75 /* Function: 0x04 */
76 DWORD _RpcQueryAutoConfigParameter(
77 [in] WLANSVC_RPC_HANDLE hClientHandle,
78 [in] /* enum32 */ DWORD OpCode,
79 [in, out] LPDWORD pdwDataSize,
80 [out][ref][size_is(*pdwDataSize)] char ** ppData,
81 [out] /* enum32 */ DWORD * pWlanOpcodeValueType);
82
83 /* Function: 0x05 */
84 DWORD _RpcGetInterfaceCapability(
85 [in] WLANSVC_RPC_HANDLE hClientHandle,
86 [in] const GUID* pInterfaceGuid,
87 [out, ref] PWLAN_INTERFACE_CAPABILITY *ppCapability);
88
89 /* Function: 0x06 */
90 DWORD _RpcSetInterface(
91 [in] WLANSVC_RPC_HANDLE hClientHandle,
92 [in] const GUID* pInterfaceGuid,
93 [in] /* enum32 */ DWORD OpCode,
94 [in] DWORD dwDataSize,
95 [in, size_is(dwDataSize)] LPBYTE pData);
96
97 /* Function: 0x07 */
98 DWORD _RpcQueryInterface(
99 [in] WLANSVC_RPC_HANDLE hClientHandle,
100 [in] const GUID* pInterfaceGuid,
101 [in] /* enum32 */ long OpCode,
102 [in, out] LPDWORD pdwDataSize,
103 [out][ref][size_is(*pdwDataSize)] LPBYTE* ppData,
104 [out] /* enum32 */ LPDWORD pWlanOpcodeValueType);
105
106 /* Function: 0x08 */
107 DWORD _RpcIhvControl(
108 [in] WLANSVC_RPC_HANDLE hClientHandle,
109 [in] const GUID* pInterfaceGuid,
110 [in] /* enum32 */ DWORD Type,
111 [in] DWORD dwInBufferSize,
112 [in][size_is(dwInBufferSize)] LPBYTE pInBuffer,
113 [in] DWORD dwOutBufferSize,
114 [out][size_is(dwOutBufferSize), length_is(*pdwBytesReturned)] LPBYTE pOutBuffer,
115 [out] LPDWORD pdwBytesReturned);
116
117 /* Function: 0x09 */
118 DWORD _RpcScan(
119 [in] WLANSVC_RPC_HANDLE hClientHandle,
120 [in] const GUID* pInterfaceGuid,
121 [in][unique] PDOT11_SSID pDot11Ssid,
122 [in][unique] PWLAN_RAW_DATA pIeData);
123
124 /* Function: 0x0A */
125 DWORD _RpcGetAvailableNetworkList(
126 [in] WLANSVC_RPC_HANDLE hClientHandle,
127 [in] const GUID* pInterfaceGuid,
128 [in] DWORD dwFlags,
129 [out][ref] WLAN_AVAILABLE_NETWORK_LIST **ppAvailableNetworkList);
130
131 /* Function: 0x0B */
132 DWORD _RpcGetNetworkBssList(
133 [in] WLANSVC_RPC_HANDLE hClientHandle,
134 [in] const GUID* pInterfaceGuid,
135 [in][unique] PDOT11_SSID pDot11Ssid,
136 [in] /* enum16 */ short dot11BssType,
137 [in] DWORD bSecurityEnabled,
138 [in, out] LPDWORD dwBssListSize,
139 [out][ref][size_is(*dwBssListSize)] LPBYTE *ppWlanBssList);
140
141 /* Function: 0x0C */
142 DWORD _RpcConnect(
143 [in] WLANSVC_RPC_HANDLE hClientHandle,
144 [in] const GUID* pInterfaceGuid,
145 [in] const PWLAN_CONNECTION_PARAMETERS* pConnectionParameters);
146
147 /* Function: 0x0D */
148 DWORD _RpcDisconnect(
149 [in] WLANSVC_RPC_HANDLE hClientHandle,
150 [in] const GUID* pInterfaceGUID);
151
152 /* Function: 0x0E */
153 DWORD _RpcRegisterNotification(
154 [in] WLANSVC_RPC_HANDLE hClientHandle,
155 [in] DWORD arg_2,
156 [out] LPDWORD pdwPrevNotifSource);
157
158 /* Function: 0x0F */
159 DWORD _RpcAsyncGetNotification(
160 [in] WLANSVC_RPC_HANDLE hClientHandle,
161 [out][ref] PWLAN_NOTIFICATION_DATA *NotificationData);
162
163 /* Function: 0x10 */
164 DWORD _RpcSetProfileEapUserData(
165 [in] WLANSVC_RPC_HANDLE hClientHandle,
166 [in] const GUID* pInterfaceGuid,
167 [in][string] wchar_t * strProfileName,
168 [in] EAP_METHOD_TYPE MethodType,
169 [in] DWORD dwFlags,
170 [in] DWORD dwEapUserDataSize,
171 [in][size_is(dwEapUserDataSize)] LPBYTE pbEapUserData);
172
173 /* Function: 0x11 */
174 DWORD _RpcSetProfile(
175 [in] WLANSVC_RPC_HANDLE hClientHandle,
176 [in] const GUID* pInterfaceGuid,
177 [in] DWORD dwFlags,
178 [in][string] wchar_t * strProfileXml,
179 [in][unique][string] wchar_t * strAllUserProfileSecurity,
180 [in] BOOL bOverwrite,
181 [out] LPDWORD pdwReasonCode);
182
183 /* Function: 0x12 */
184 DWORD _RpcGetProfile(
185 [in] WLANSVC_RPC_HANDLE hClientHandle,
186 [in] const GUID* pInterfaceGuid,
187 [in][string] wchar_t * strProfileName,
188 [out][ref][string] wchar_t ** pstrProfileXml,
189 [out] LPDWORD pdwFlags,
190 [in, out][unique] LPDWORD pdwGrantedAccess);
191
192 /* Function: 0x13 */
193 DWORD _RpcDeleteProfile(
194 [in] WLANSVC_RPC_HANDLE hClientHandle,
195 [in] const GUID* pInterfaceGuid,
196 [in][string] const wchar_t * strProfileName);
197
198 /* Function: 0x14 */
199 DWORD _RpcRenameProfile(
200 [in] WLANSVC_RPC_HANDLE hClientHandle,
201 [in] const GUID* pInterfaceGuid,
202 [in][string] const wchar_t * strOldProfileName,
203 [in][string] const wchar_t * strNewProfileName);
204
205 /* Function: 0x15 */
206 DWORD _RpcSetProfileList(
207 [in] WLANSVC_RPC_HANDLE hClientHandle,
208 [in] const GUID* pInterfaceGuid,
209 [in] DWORD dwItems,
210 [in] /* [string] */ [size_is(dwItems)] /* wchar_t */ BYTE ** strProfileNames); /* FIXME */
211
212 /* Function: 0x16 */
213 DWORD _RpcGetProfileList(
214 [in] WLANSVC_RPC_HANDLE hClientHandle,
215 [in] const GUID* pInterfaceGuid,
216 [out][ref] PWLAN_PROFILE_INFO_LIST *ppProfileList);
217
218 /* Function: 0x17 */
219 DWORD _RpcSetProfilePosition(
220 [in] WLANSVC_RPC_HANDLE hClientHandle,
221 [in] const GUID* pInterfaceGuid,
222 [in][string] wchar_t * strProfileName,
223 [in] DWORD dwPosition);
224
225 /* Function: 0x18 */
226 DWORD _RpcSetProfileCustomUserData(
227 [in] WLANSVC_RPC_HANDLE hClientHandle,
228 [in] const GUID* pInterfaceGuid,
229 [in][string] wchar_t * strProfileName,
230 [in] DWORD dwDataSize,
231 [in][unique][size_is(dwDataSize)] LPBYTE pData);
232
233 /* Function: 0x19 */
234 DWORD _RpcGetProfileCustomUserData(
235 [in] WLANSVC_RPC_HANDLE hClientHandle,
236 [in] const GUID* pInterfaceGuid,
237 [in][string] wchar_t * strProfileName,
238 [in, out] LPDWORD dwDataSize,
239 [out][ref][size_is(*dwDataSize)] LPBYTE *pData);
240
241 /* Function: 0x1A */
242 DWORD _RpcSetFilterList(
243 [in] WLANSVC_RPC_HANDLE hClientHandle,
244 [in] /* enum16 */ short wlanFilterListType,
245 [in][unique] PDOT11_NETWORK_LIST pNetworkList);
246
247 /* Function: 0x1B */
248 DWORD _RpcGetFilterList(
249 [in] WLANSVC_RPC_HANDLE hClientHandle,
250 [in] /* enum16 */ short wlanFilterListType,
251 [out][ref] PDOT11_NETWORK_LIST *pNetworkList);
252
253 /* Function: 0x1C */
254 DWORD _RpcSetPsdIEDataList(
255 [in] WLANSVC_RPC_HANDLE hClientHandle,
256 [in][unique][string] wchar_t * strFormat,
257 [in] DWORD dwDataListSize,
258 [in][unique][size_is(dwDataListSize)] LPBYTE pPsdIEDataList);
259
260 /* Function: 0x1D */
261 DWORD _RpcSaveTemporaryProfile(
262 [in] WLANSVC_RPC_HANDLE hClientHandle,
263 [in] const GUID* pInterfaceGuid,
264 [in][string] wchar_t * strProfileName,
265 [in][unique][string] wchar_t * strAllUserProfileSecurity,
266 [in] DWORD dwFlags,
267 [in] BOOL bOverWrite);
268
269 /* Function: 0x1E */
270 DWORD _RpcIsUIRequestPending(
271 [in] WLANSVC_HANDLE arg_1,
272 [in] const GUID* pInterfaceGuid,
273 [in] struct_C * arg_3,
274 [out] LPDWORD arg_4);
275
276 /* Function: 0x1F */
277 DWORD _RpcSetUIForwardingNetworkList(
278 [in] WLANSVC_HANDLE arg_1,
279 [in][size_is(dwSize)] GUID* arg_2,
280 [in] DWORD dwSize,
281 [out] GUID* arg_4);
282
283 /* Function: 0x20 */
284 DWORD _RpcIsNetworkSuppressed(
285 [in] WLANSVC_HANDLE arg_1,
286 [in] DWORD arg_2,
287 [in] const GUID* pInterfaceGuid,
288 [out] LPDWORD arg_4);
289
290 /* Function: 0x21 */
291 DWORD _RpcRemoveUIForwardingNetworkList(
292 [in] WLANSVC_HANDLE arg_1,
293 [in] const GUID* pInterfaceGuid);
294
295 /* Function: 0x22 */
296 DWORD _RpcQueryExtUIRequest(
297 [in] WLANSVC_HANDLE arg_1,
298 [in] GUID* arg_2,
299 [in] GUID* arg_3,
300 [in] /* enum16 */ short arg_4,
301 [out] GUID* pInterfaceGuid,
302 [out][ref] struct_C ** arg_6);
303
304 /* Function: 0x23 */
305 DWORD _RpcUIResponse(
306 [in] WLANSVC_HANDLE arg_1,
307 [in] struct_C * arg_2,
308 [in] struct_D * arg_3);
309
310 /* Function: 0x24 */
311 DWORD _RpcGetProfileKeyInfo(
312 [in] WLANSVC_HANDLE arg_1,
313 [in] DWORD arg_2,
314 [in] const GUID* pInterfaceGuid,
315 [in][string] wchar_t * arg_4,
316 [in] DWORD arg_5,
317 [out] LPDWORD arg_6,
318 [in, out][unique][size_is(arg_5)] char * arg_7,
319 [out] LPDWORD arg_8);
320
321 /* Function: 0x25 */
322 DWORD _RpcAsyncDoPlap(
323 [in] WLANSVC_HANDLE arg_1,
324 [in] const GUID* pInterfaceGuid,
325 [in][string] wchar_t * arg_3,
326 [in] DWORD dwSize,
327 [in][size_is(dwSize)] struct_E arg_5[]);
328
329 /* Function: 0x26 */
330 DWORD _RpcQueryPlapCredentials(
331 [in] WLANSVC_HANDLE arg_1,
332 [in, out] LPDWORD dwSize,
333 [out][ref][size_is(*dwSize)] struct_E ** arg_3,
334 [out][ref][string] wchar_t ** arg_4,
335 [out] GUID* pInterfaceGuid,
336 [out] LPDWORD arg_6,
337 [out] LPDWORD arg_7,
338 [out] LPDWORD arg_8,
339 [out] LPDWORD arg_9);
340
341 /* Function: 0x27 */
342 DWORD _RpcCancelPlap(
343 [in] WLANSVC_HANDLE arg_1,
344 [in] const GUID* pInterfaceGuid);
345
346 /* Function: 0x28 */
347 DWORD _RpcSetSecuritySettings(
348 [in] WLANSVC_RPC_HANDLE hClientHandle,
349 [in] WLAN_SECURABLE_OBJECT SecurableObject,
350 [in][string] const wchar_t * strModifiedSDDL);
351
352 /* Function: 0x29 */
353 DWORD _RpcGetSecuritySettings(
354 [in] WLANSVC_RPC_HANDLE hClientHandle,
355 [in] WLAN_SECURABLE_OBJECT SecurableObject,
356 [out] WLAN_OPCODE_VALUE_TYPE *pValueType,
357 [out][ref][string] wchar_t ** pstrCurrentSDDL,
358 [out] LPDWORD pdwGrantedAccess);
359
360 }