spoolss: use nstring_array in spoolss_EnumPrinterKey.
[Samba.git] / librpc / idl / ntsvcs.idl
blobbe7fcdff13b7fece0ea90707479a17f9c94d7b63
1 /*
2 plug and play services
3 */
5 import "winreg.idl";
8 uuid("8d9f4e40-a03d-11ce-8f69-08003e30051b"),
9 version(1.0),
10 endpoint("ncacn_np:[\\pipe\\ntsvcs]","ncacn_np:[\\pipe\\plugplay]"),
11 helpstring("Plug and Play services")
13 interface ntsvcs
15 /******************/
16 /* Function: 0x00 */
18 [todo] WERROR PNP_Disconnect();
20 /******************/
21 /* Function: 0x01 */
23 [todo] WERROR PNP_Connect();
25 /******************/
26 /* Function: 0x02 */
28 WERROR PNP_GetVersion(
29 [out,ref] uint16 *version
32 /******************/
33 /* Function: 0x03 */
35 [todo] WERROR PNP_GetGlobalState();
37 /******************/
38 /* Function: 0x04 */
40 [todo] WERROR PNP_InitDetection();
42 /******************/
43 /* Function: 0x05 */
45 [todo] WERROR PNP_ReportLogOn();
47 /******************/
48 /* Function: 0x06 */
50 WERROR PNP_ValidateDeviceInstance(
51 [in,ref] [string,charset(UTF16)] uint16 *devicepath,
52 [in] uint32 flags
55 /******************/
56 /* Function: 0x07 */
58 [todo] WERROR PNP_GetRootDeviceInstance();
60 /******************/
61 /* Function: 0x08 */
63 [todo] WERROR PNP_GetRelatedDeviceInstance();
65 /******************/
66 /* Function: 0x09 */
68 [todo] WERROR PNP_EnumerateSubKeys();
70 /******************/
71 /* Function: 0x0a */
73 WERROR PNP_GetDeviceList(
74 [in,unique] [string,charset(UTF16)] uint16 *filter,
75 [out,ref] [size_is(*length),length_is(*length)] uint16 *buffer,
76 [in,out,ref] uint32 *length,
77 [in] uint32 flags
80 /******************/
81 /* Function: 0x0b */
83 WERROR PNP_GetDeviceListSize(
84 [in,unique] [string,charset(UTF16)] uint16 *devicename,
85 [out,ref] uint32 *size,
86 [in] uint32 flags
89 /******************/
90 /* Function: 0x0c */
92 [todo] WERROR PNP_GetDepth();
94 /******************/
95 /* Function: 0x0d */
97 const int DEV_REGPROP_DESC = 1;
99 WERROR PNP_GetDeviceRegProp(
100 [in,ref] [string,charset(UTF16)] uint16 *devicepath,
101 [in] uint32 property,
102 [in,out,ref] winreg_Type *reg_data_type,
103 [out,ref] [size_is(*buffer_size)] [length_is(*buffer_size)] uint8 *buffer,
104 [in,out,ref] uint32 *buffer_size,
105 [in,out,ref] uint32 *needed,
106 [in] uint32 flags
109 /******************/
110 /* Function: 0x0e */
112 [todo] WERROR PNP_SetDeviceRegProp();
114 /******************/
115 /* Function: 0x0f */
117 [todo] WERROR PNP_GetClassInstance();
119 /******************/
120 /* Function: 0x10 */
122 [todo] WERROR PNP_CreateKey();
124 /******************/
125 /* Function: 0x11 */
127 [todo] WERROR PNP_DeleteRegistryKey();
129 /******************/
130 /* Function: 0x12 */
132 [todo] WERROR PNP_GetClassCount();
134 /******************/
135 /* Function: 0x13 */
137 [todo] WERROR PNP_GetClassName();
139 /******************/
140 /* Function: 0x14 */
142 [todo] WERROR PNP_DeleteClassKey();
144 /******************/
145 /* Function: 0x15 */
147 [todo] WERROR PNP_GetInterfaceDeviceAlias();
149 /******************/
150 /* Function: 0x16 */
152 [todo] WERROR PNP_GetInterfaceDeviceList();
154 /******************/
155 /* Function: 0x17 */
157 [todo] WERROR PNP_GetInterfaceDeviceListSize();
159 /******************/
160 /* Function: 0x18 */
162 [todo] WERROR PNP_RegisterDeviceClassAssociation();
164 /******************/
165 /* Function: 0x19 */
167 [todo] WERROR PNP_UnregisterDeviceClassAssociation();
169 /******************/
170 /* Function: 0x1a */
172 [todo] WERROR PNP_GetClassRegProp();
174 /******************/
175 /* Function: 0x1b */
177 [todo] WERROR PNP_SetClassRegProp();
179 /******************/
180 /* Function: 0x1c */
182 [todo] WERROR PNP_CreateDevInst();
184 /******************/
185 /* Function: 0x1d */
187 [todo] WERROR PNP_DeviceInstanceAction();
189 /******************/
190 /* Function: 0x1e */
192 [todo] WERROR PNP_GetDeviceStatus();
194 /******************/
195 /* Function: 0x1f */
197 [todo] WERROR PNP_SetDeviceProblem();
199 /******************/
200 /* Function: 0x20 */
202 [todo] WERROR PNP_DisableDevInst();
204 /******************/
205 /* Function: 0x21 */
207 [todo] WERROR PNP_UninstallDevInst();
209 /******************/
210 /* Function: 0x22 */
212 [todo] WERROR PNP_AddID();
214 /******************/
215 /* Function: 0x23 */
217 [todo] WERROR PNP_RegisterDriver();
219 /******************/
220 /* Function: 0x24 */
222 [todo] WERROR PNP_QueryRemove();
224 /******************/
225 /* Function: 0x25 */
227 [todo] WERROR PNP_RequestDeviceEject();
229 /******************/
230 /* Function: 0x26 */
232 [todo] WERROR PNP_IsDockStationPresent();
234 /******************/
235 /* Function: 0x27 */
237 [todo] WERROR PNP_RequestEjectPC();
239 /******************/
240 /* Function: 0x28 */
242 WERROR PNP_HwProfFlags(
243 [in] uint32 action,
244 [in,ref] [string,charset(UTF16)] uint16 *devicepath,
245 [in] uint32 config,
246 [in,out,ref] uint32 *profile_flags,
247 [in,out,unique] uint16 *veto_type,
248 [in,unique] [string,charset(UTF16)] uint16 *unknown5,
249 [out,unique] [string,charset(UTF16)] uint16 **unknown5a,
250 [in] uint32 name_length,
251 [in] uint32 flags
254 /******************/
255 /* Function: 0x29 */
257 typedef struct {
258 uint32 profile_handle;
259 uint16 friendly_name[80];
260 uint32 flags;
261 } PNP_HwProfInfo;
263 WERROR PNP_GetHwProfInfo(
264 [in] uint32 idx,
265 [in,out,ref] PNP_HwProfInfo *info,
266 [in] uint32 size,
267 [in] uint32 flags
270 /******************/
271 /* Function: 0x2a */
273 [todo] WERROR PNP_AddEmptyLogConf();
275 /******************/
276 /* Function: 0x2b */
278 [todo] WERROR PNP_FreeLogConf();
280 /******************/
281 /* Function: 0x2c */
283 [todo] WERROR PNP_GetFirstLogConf();
285 /******************/
286 /* Function: 0x2d */
288 [todo] WERROR PNP_GetNextLogConf();
290 /******************/
291 /* Function: 0x2e */
293 [todo] WERROR PNP_GetLogConfPriority();
295 /******************/
296 /* Function: 0x2f */
298 [todo] WERROR PNP_AddResDes();
300 /******************/
301 /* Function: 0x30 */
303 [todo] WERROR PNP_FreeResDes();
305 /******************/
306 /* Function: 0x31 */
308 [todo] WERROR PNP_GetNextResDes();
310 /******************/
311 /* Function: 0x32 */
313 [todo] WERROR PNP_GetResDesData();
315 /******************/
316 /* Function: 0x33 */
318 [todo] WERROR PNP_GetResDesDataSize();
320 /******************/
321 /* Function: 0x34 */
323 [todo] WERROR PNP_ModifyResDes();
325 /******************/
326 /* Function: 0x35 */
328 [todo] WERROR PNP_DetectResourceLimit();
330 /******************/
331 /* Function: 0x36 */
333 [todo] WERROR PNP_QueryResConfList();
335 /******************/
336 /* Function: 0x37 */
338 [todo] WERROR PNP_SetHwProf();
340 /******************/
341 /* Function: 0x38 */
343 [todo] WERROR PNP_QueryArbitratorFreeData();
345 /******************/
346 /* Function: 0x39 */
348 [todo] WERROR PNP_QueryArbitratorFreeSize();
350 /******************/
351 /* Function: 0x3a */
353 [todo] WERROR PNP_RunDetection();
355 /******************/
356 /* Function: 0x3b */
358 [todo] WERROR PNP_RegisterNotification();
360 /******************/
361 /* Function: 0x3c */
363 [todo] WERROR PNP_UnregisterNotification();
365 /******************/
366 /* Function: 0x3d */
368 [todo] WERROR PNP_GetCustomDevProp();
370 /******************/
371 /* Function: 0x3e */
373 [todo] WERROR PNP_GetVersionInternal();
375 /******************/
376 /* Function: 0x3f */
378 [todo] WERROR PNP_GetBlockedDriverInfo();
380 /******************/
381 /* Function: 0x40 */
383 [todo] WERROR PNP_GetServerSideDeviceInstallFlags();