2 srvsvc interface definitions
5 [ uuid(4b324fc8-1670-01d3-1278-5a47bf6ee188),
7 pointer_default(unique)
59 [size_is(count)] srvsvc_NetConn0 *array;
74 [size_is(count)] srvsvc_NetConn1 *array;
78 } srvsvc_NetConnCtrDefault;
80 typedef [nodiscriminant,public] union {
81 case(0) srvsvc_NetConnCtr0 *ctr0;
82 case(1) srvsvc_NetConnCtr1 *ctr1;
83 default srvsvc_NetConnCtrDefault ctrDefault;
84 } srvsvc_NetConnSubCtr;
89 [switch_is(level)] srvsvc_NetConnSubCtr subctr;
92 WERROR srvsvc_NetConnEnum(
93 [in] unistr *server_unc,
95 [in,out] srvsvc_NetConnCtr ctr,
96 [in] uint32 preferred_len,
98 [in,out] uint32 *resume_handle
110 [size_is(count)] srvsvc_NetFile2 *array;
111 } srvsvc_NetFileCtr2;
123 [size_is(count)] srvsvc_NetFile3 *array;
124 } srvsvc_NetFileCtr3;
127 } srvsvc_NetFileCtrDefault;
129 typedef [nodiscriminant,public] union {
130 case(2) srvsvc_NetFileCtr2 *ctr2;
131 case(3) srvsvc_NetFileCtr3 *ctr3;
132 default srvsvc_NetFileCtrDefault ctrDefault;
133 } srvsvc_NetFileSubCtr;
138 [switch_is(level)] srvsvc_NetFileSubCtr subctr;
141 WERROR srvsvc_NetFileEnum(
142 [in] unistr *server_unc,
145 [in,out] srvsvc_NetFileCtr ctr,
146 [in] uint32 preferred_len,
148 [in,out] uint32 *resume_handle
158 NTSTATUS srvsvc_NET_FILE_CLOSE(
170 [size_is(count)] srvsvc_NetSess0 *array;
171 } srvsvc_NetSessCtr0;
184 [size_is(count)] srvsvc_NetSess1 *array;
185 } srvsvc_NetSessCtr1;
199 [size_is(count)] srvsvc_NetSess2 *array;
200 } srvsvc_NetSessCtr2;
211 [size_is(count)] srvsvc_NetSess10 *array;
212 } srvsvc_NetSessCtr10;
227 [size_is(count)] srvsvc_NetSess502 *array;
228 } srvsvc_NetSessCtr502;
231 } srvsvc_NetSessCtrDefault;
233 typedef [nodiscriminant,public] union {
234 case(0) srvsvc_NetSessCtr0 *ctr0;
235 case(1) srvsvc_NetSessCtr1 *ctr1;
236 case(2) srvsvc_NetSessCtr2 *ctr2;
237 case(10) srvsvc_NetSessCtr10 *ctr10;
238 case(502) srvsvc_NetSessCtr502 *ctr502;
239 default srvsvc_NetSessCtrDefault ctrDefault;
240 } srvsvc_NetSessSubCtr;
245 [switch_is(level)] srvsvc_NetSessSubCtr subctr;
248 WERROR srvsvc_NetSessEnum(
249 [in] unistr *server_unc,
252 [in,out] srvsvc_NetSessCtr ctr,
253 [in] uint32 preferred_len,
255 [in,out] uint32 *resume_handle
265 NTSTATUS srvsvc_NET_SHARE_ADD(
277 [size_is(count)] srvsvc_NetShare0 *array;
278 } srvsvc_NetShareCtr0;
288 [size_is(count)] srvsvc_NetShare1 *array;
289 } srvsvc_NetShareCtr1;
297 uint32 current_users;
304 [size_is(count)] srvsvc_NetShare2 *array;
305 } srvsvc_NetShareCtr2;
312 } srvsvc_NetShare501;
316 [size_is(count)] srvsvc_NetShare501 *array;
317 } srvsvc_NetShareCtr501;
325 uint32 current_users;
329 [subcontext] security_descriptor *sd;
330 } srvsvc_NetShare502;
334 [size_is(count)] srvsvc_NetShare502 *array;
335 } srvsvc_NetShareCtr502;
338 } srvsvc_NetShareCtrDefault;
340 typedef [nodiscriminant,public] union {
341 case(0) srvsvc_NetShareCtr0 *ctr0;
342 case(1) srvsvc_NetShareCtr1 *ctr1;
343 case(2) srvsvc_NetShareCtr2 *ctr2;
344 case(501) srvsvc_NetShareCtr501 *ctr501;
345 case(502) srvsvc_NetShareCtr502 *ctr502;
346 default srvsvc_NetShareCtrDefault ctrDefault;
347 } srvsvc_NetShareSubCtr;
351 [switch_is(level)] srvsvc_NetShareSubCtr subctr;
352 } srvsvc_NetShareCtr;
354 WERROR srvsvc_NetShareEnumAll(
355 [in] unistr *server_unc,
357 [in,out] srvsvc_NetShareCtr ctr,
358 [in] uint32 preferred_len,
359 [out] uint32 totalentries,
360 [in,out] uint32 *resume_handle
365 NTSTATUS srvsvc_NET_SHARE_GET_INFO(
370 NTSTATUS srvsvc_NET_SHARE_SET_INFO(
375 NTSTATUS srvsvc_NET_SHARE_DEL(
380 NTSTATUS srvsvc_NET_SHARE_DEL_STICKY(
390 NTSTATUS srvsvc_NET_SRV_GET_INFO(
395 NTSTATUS srvsvc_NET_SRV_SET_INFO(
404 [size_is(size)] uint8 *disk;
411 [size_is(count)] srvsvc_NetDisk0 *array;
412 } srvsvc_NetDiskCtr0;
420 [size_is(count)] srvsvc_NetDisk1 *array;
421 } srvsvc_NetDiskCtr1;
429 [size_is(count)] srvsvc_NetDisk2 *array;
430 } srvsvc_NetDiskCtr2;
438 [size_is(count)] srvsvc_NetDisk3 *array;
439 } srvsvc_NetDiskCtr3;
442 } srvsvc_NetDiskCtrDefault;
444 typedef [nodiscriminant,public] union {
445 case(0) srvsvc_NetDiskCtr0 ctr0;
446 case(1) srvsvc_NetDiskCtr1 ctr1;
447 case(2) srvsvc_NetDiskCtr2 ctr2;
448 case(3) srvsvc_NetDiskCtr3 ctr3;
449 default srvsvc_NetDiskCtrDefault ctrDefault;
450 } srvsvc_NetDiskSubCtr;
454 srvsvc_NetDiskCtr0 *ctr0;
457 WERROR srvsvc_NetDiskEnum(
458 [in] unistr *server_unc,
460 [in] uint32 unknown1,
461 [in] uint32 unknown2,
462 [in] uint32 preferred_len,
463 [out] srvsvc_NetDiskCtr ctr,
465 [in,out] uint32 *resume_handle
483 [size_is(count)] uint8 *addr;
484 } srvsvc_TransportAddress;
489 srvsvc_TransportAddress *addr;
492 } srvsvc_NetTransport0;
496 [size_is(count)] srvsvc_NetTransport0 *array;
497 } srvsvc_NetTransportCtr0;
502 srvsvc_TransportAddress *addr;
506 } srvsvc_NetTransport1;
510 [size_is(count)] srvsvc_NetTransport1 *array;
511 } srvsvc_NetTransportCtr1;
515 } srvsvc_NetTransport2;
519 [size_is(count)] srvsvc_NetTransport2 *array;
520 } srvsvc_NetTransportCtr2;
523 } srvsvc_NetTransportCtrDefault;
525 typedef [nodiscriminant,public] union {
526 case(0) srvsvc_NetTransportCtr0 *ctr0;
527 case(1) srvsvc_NetTransportCtr1 *ctr1;
528 case(2) srvsvc_NetTransportCtr2 *ctr2;
529 default srvsvc_NetTransportCtrDefault ctrDefault;
530 } srvsvc_NetTransportSubCtr;
535 [switch_is(level)] srvsvc_NetTransportSubCtr subctr;
536 } srvsvc_NetTransportCtr;
538 WERROR srvsvc_NetTransportEnum(
539 [in] unistr *server_unc,
540 [in,out] srvsvc_NetTransportCtr ctr,
541 [in] uint32 preferred_len,
543 [in,out] uint32 *resume_handle
553 NTSTATUS srvsvc_NET_REMOTE_TOD(
578 NTSTATUS srvsvc_NET_NAME_VALIDATE(
593 /* Note, there must be some way to return entries read vs
595 WERROR srvsvc_NetShareEnum(
596 [in] unistr *server_unc,
598 [in,out] srvsvc_NetShareCtr ctr,
599 [in] uint32 preferred_len,
600 [out] uint32 entriesread,
601 [out] uint32 totalentries,
602 [in,out] uint32 *resume_handle
617 NTSTATUS srvsvc_NET_FILE_QUERY_SECDESC(
622 NTSTATUS srvsvc_NET_FILE_SET_SECDESC(