4 srvsvc interface definitions
7 [ uuid(4b324fc8-1670-01d3-1278-5a47bf6ee188),
9 pointer_default(unique)
61 [size_is(count)] srvsvc_NetConn0 *array;
76 [size_is(count)] srvsvc_NetConn1 *array;
80 [case(0)] srvsvc_NetConnCtr0 *ctr0;
81 [case(1)] srvsvc_NetConnCtr1 *ctr1;
85 WERROR srvsvc_NetConnEnum(
86 [in] unistr *server_unc,
88 [in,out] uint32 level,
89 [in,out,switch_is(level)] srvsvc_NetConnCtr ctr,
90 [in] uint32 preferred_len,
92 [in,out] uint32 *resume_handle
104 [size_is(count)] srvsvc_NetFile2 *array;
105 } srvsvc_NetFileCtr2;
117 [size_is(count)] srvsvc_NetFile3 *array;
118 } srvsvc_NetFileCtr3;
121 [case(2)] srvsvc_NetFileCtr2 *ctr2;
122 [case(3)] srvsvc_NetFileCtr3 *ctr3;
126 WERROR srvsvc_NetFileEnum(
127 [in] unistr *server_unc,
130 [in,out] uint32 level,
131 [in,out,switch_is(level)] srvsvc_NetFileCtr ctr,
132 [in] uint32 preferred_len,
134 [in,out] uint32 *resume_handle
144 NTSTATUS srvsvc_NET_FILE_CLOSE(
156 [size_is(count)] srvsvc_NetSess0 *array;
157 } srvsvc_NetSessCtr0;
170 [size_is(count)] srvsvc_NetSess1 *array;
171 } srvsvc_NetSessCtr1;
185 [size_is(count)] srvsvc_NetSess2 *array;
186 } srvsvc_NetSessCtr2;
197 [size_is(count)] srvsvc_NetSess10 *array;
198 } srvsvc_NetSessCtr10;
213 [size_is(count)] srvsvc_NetSess502 *array;
214 } srvsvc_NetSessCtr502;
217 [case(0)] srvsvc_NetSessCtr0 *ctr0;
218 [case(1)] srvsvc_NetSessCtr1 *ctr1;
219 [case(2)] srvsvc_NetSessCtr2 *ctr2;
220 [case(10)] srvsvc_NetSessCtr10 *ctr10;
221 [case(502)] srvsvc_NetSessCtr502 *ctr502;
225 WERROR srvsvc_NetSessEnum(
226 [in] unistr *server_unc,
229 [in,out] uint32 level,
230 [in,out,switch_is(level)] srvsvc_NetSessCtr ctr,
231 [in] uint32 preferred_len,
233 [in,out] uint32 *resume_handle
243 NTSTATUS srvsvc_NET_SHARE_ADD(
255 [size_is(count)] srvsvc_NetShare0 *array;
256 } srvsvc_NetShareCtr0;
266 [size_is(count)] srvsvc_NetShare1 *array;
267 } srvsvc_NetShareCtr1;
275 uint32 current_users;
282 [size_is(count)] srvsvc_NetShare2 *array;
283 } srvsvc_NetShareCtr2;
290 } srvsvc_NetShare501;
294 [size_is(count)] srvsvc_NetShare501 *array;
295 } srvsvc_NetShareCtr501;
303 uint32 current_users;
307 [subcontext(4)] security_descriptor *sd;
308 } srvsvc_NetShare502;
312 [size_is(count)] srvsvc_NetShare502 *array;
313 } srvsvc_NetShareCtr502;
317 } srvsvc_NetShare1004;
320 [case(0)] srvsvc_NetShareCtr0 *ctr0;
321 [case(1)] srvsvc_NetShareCtr1 *ctr1;
322 [case(2)] srvsvc_NetShareCtr2 *ctr2;
323 [case(501)] srvsvc_NetShareCtr501 *ctr501;
324 [case(502)] srvsvc_NetShareCtr502 *ctr502;
326 } srvsvc_NetShareUnion;
328 WERROR srvsvc_NetShareEnumAll (
329 [in] unistr *server_unc,
330 [in,out] uint32 level,
331 [in,out,switch_is(level)] srvsvc_NetShareUnion ctr,
332 [in] uint32 max_buffer,
333 [out] uint32 totalentries,
334 [in,out] uint32 *resume_handle
339 NTSTATUS srvsvc_NET_SHARE_GET_INFO(
344 NTSTATUS srvsvc_NET_SHARE_SET_INFO(
349 NTSTATUS srvsvc_NET_SHARE_DEL(
354 NTSTATUS srvsvc_NET_SHARE_DEL_STICKY(
364 NTSTATUS srvsvc_NET_SRV_GET_INFO(
369 NTSTATUS srvsvc_NET_SRV_SET_INFO(
378 [size_is(size)] uint8 *disk;
385 [size_is(count)] srvsvc_NetDisk0 *array;
386 } srvsvc_NetDiskCtr0;
394 [size_is(count)] srvsvc_NetDisk1 *array;
395 } srvsvc_NetDiskCtr1;
403 [size_is(count)] srvsvc_NetDisk2 *array;
404 } srvsvc_NetDiskCtr2;
412 [size_is(count)] srvsvc_NetDisk3 *array;
413 } srvsvc_NetDiskCtr3;
416 [case(0)] srvsvc_NetDiskCtr0 ctr0;
417 [case(1)] srvsvc_NetDiskCtr1 ctr1;
418 [case(2)] srvsvc_NetDiskCtr2 ctr2;
419 [case(3)] srvsvc_NetDiskCtr3 ctr3;
421 } srvsvc_NetDiskSubCtr;
425 srvsvc_NetDiskCtr0 *ctr0;
428 WERROR srvsvc_NetDiskEnum(
429 [in] unistr *server_unc,
431 [in] uint32 unknown1,
432 [in] uint32 unknown2,
433 [in] uint32 preferred_len,
434 [out] srvsvc_NetDiskCtr ctr,
436 [in,out] uint32 *resume_handle
454 [size_is(count)] uint8 *addr;
455 } srvsvc_TransportAddress;
460 srvsvc_TransportAddress *addr;
463 } srvsvc_NetTransport0;
467 [size_is(count)] srvsvc_NetTransport0 *array;
468 } srvsvc_NetTransportCtr0;
473 srvsvc_TransportAddress *addr;
477 } srvsvc_NetTransport1;
481 [size_is(count)] srvsvc_NetTransport1 *array;
482 } srvsvc_NetTransportCtr1;
486 } srvsvc_NetTransport2;
490 [size_is(count)] srvsvc_NetTransport2 *array;
491 } srvsvc_NetTransportCtr2;
494 [case(0)] srvsvc_NetTransportCtr0 *ctr0;
495 [case(1)] srvsvc_NetTransportCtr1 *ctr1;
496 [case(2)] srvsvc_NetTransportCtr2 *ctr2;
497 } srvsvc_NetTransportCtr;
499 WERROR srvsvc_NetTransportEnum(
500 [in] unistr *server_unc,
501 [in,out] uint32 level,
502 [in,out,switch_is(level)] srvsvc_NetTransportCtr ctr,
503 [in] uint32 preferred_len,
505 [in,out] uint32 *resume_handle
515 NTSTATUS srvsvc_NET_REMOTE_TOD(
540 NTSTATUS srvsvc_NET_NAME_VALIDATE(
555 /* Note, there must be some way to return entries read vs
557 WERROR srvsvc_NetShareEnum(
558 [in] unistr *server_unc,
559 [in,out] uint32 level,
560 [in,out,switch_is(level)] srvsvc_NetShareUnion ctr,
561 [in] uint32 preferred_len,
562 [out] uint32 totalentries,
563 [in,out] uint32 *resume_handle
578 NTSTATUS srvsvc_NET_FILE_QUERY_SECDESC(
583 NTSTATUS srvsvc_NET_FILE_SET_SECDESC(