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 totalentries
,
601 [in,out] uint32
*resume_handle
616 NTSTATUS srvsvc_NET_FILE_QUERY_SECDESC
(
621 NTSTATUS srvsvc_NET_FILE_SET_SECDESC
(