4 srvsvc interface definitions
7 import
"security.idl", "svcctl.idl";
9 [ uuid("4b324fc8-1670-01d3-1278-5a47bf6ee188"),
11 endpoint("ncacn_np:[\\pipe\\srvsvc]", "ncacn_ip_tcp:", "ncalrpc:"),
12 pointer_default(unique),
13 pointer_default_top
(unique),
14 helpstring("Server Service")
17 declare bitmap svcctl_ServerType
;
18 declare bitmap security_secinfo
;
20 /**************************/
21 /* srvsvc_NetCharDev */
22 /**************************/
24 [string,charset
(UTF16
)] uint16
*device
;
25 } srvsvc_NetCharDevInfo0
;
29 [size_is(count
)] srvsvc_NetCharDevInfo0
*array
;
30 } srvsvc_NetCharDevCtr0
;
33 [string,charset
(UTF16
)] uint16
*device
;
35 [string,charset
(UTF16
)] uint16
*user
;
37 } srvsvc_NetCharDevInfo1
;
41 [size_is(count
)] srvsvc_NetCharDevInfo1
*array
;
42 } srvsvc_NetCharDevCtr1
;
45 [case(0)] srvsvc_NetCharDevInfo0
*info0
;
46 [case(1)] srvsvc_NetCharDevInfo1
*info1
;
48 } srvsvc_NetCharDevInfo
;
51 [case(0)] srvsvc_NetCharDevCtr0
*ctr0
;
52 [case(1)] srvsvc_NetCharDevCtr1
*ctr1
;
54 } srvsvc_NetCharDevCtr
;
58 WERROR srvsvc_NetCharDevEnum
(
59 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
60 [in,out,ref] uint32
*level
,
61 [in,out,ref,switch_is(*level
)] srvsvc_NetCharDevCtr
*ctr
,
62 [in] uint32 max_buffer
,
63 [out,ref] uint32
*totalentries
,
64 [in,out,unique] uint32
*resume_handle
69 WERROR srvsvc_NetCharDevGetInfo
(
70 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
71 [in] [string,charset
(UTF16
)] uint16 device_name
[],
73 [out,ref,switch_is(level
)] srvsvc_NetCharDevInfo
*info
78 WERROR srvsvc_NetCharDevControl
(
79 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
80 [in] [string,charset
(UTF16
)] uint16 device_name
[],
84 /**************************/
85 /* srvsvc_NetCharDevQ */
86 /**************************/
88 [string,charset
(UTF16
)] uint16
*device
;
89 } srvsvc_NetCharDevQInfo0
;
93 [size_is(count
)] srvsvc_NetCharDevQInfo0
*array
;
94 } srvsvc_NetCharDevQCtr0
;
97 [string,charset
(UTF16
)] uint16
*device
;
99 [string,charset
(UTF16
)] uint16
*devices
;
102 } srvsvc_NetCharDevQInfo1
;
106 [size_is(count
)] srvsvc_NetCharDevQInfo1
*array
;
107 } srvsvc_NetCharDevQCtr1
;
110 [case(0)] srvsvc_NetCharDevQInfo0
*info0
;
111 [case(1)] srvsvc_NetCharDevQInfo1
*info1
;
113 } srvsvc_NetCharDevQInfo
;
116 [case(0)] srvsvc_NetCharDevQCtr0
*ctr0
;
117 [case(1)] srvsvc_NetCharDevQCtr1
*ctr1
;
119 } srvsvc_NetCharDevQCtr
;
123 WERROR srvsvc_NetCharDevQEnum
(
124 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
125 [in] [string,charset
(UTF16
)] uint16
*user
,
126 [in,out,ref] uint32
*level
,
127 [in,out,switch_is(*level
),ref] srvsvc_NetCharDevQCtr
*ctr
,
128 [in] uint32 max_buffer
,
129 [out,ref] uint32
*totalentries
,
130 [in,out] uint32
*resume_handle
135 WERROR srvsvc_NetCharDevQGetInfo
(
136 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
137 [in] [string,charset
(UTF16
)] uint16 queue_name
[],
138 [in] [string,charset
(UTF16
)] uint16 user
[],
140 [out,switch_is(level
),ref] srvsvc_NetCharDevQInfo
*info
145 WERROR srvsvc_NetCharDevQSetInfo
(
146 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
147 [in] [string,charset
(UTF16
)] uint16 queue_name
[],
149 [in,switch_is(level
)] srvsvc_NetCharDevQInfo info
,
150 [in,out] uint32
*parm_error
155 WERROR srvsvc_NetCharDevQPurge
(
156 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
157 [in] [string,charset
(UTF16
)] uint16 queue_name
[]
162 WERROR srvsvc_NetCharDevQPurgeSelf
(
163 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
164 [in] [string,charset
(UTF16
)] uint16 queue_name
[],
165 [in] [string,charset
(UTF16
)] uint16 computer_name
[]
168 /**************************/
170 /**************************/
173 } srvsvc_NetConnInfo0
;
177 [size_is(count
)] srvsvc_NetConnInfo0
*array
;
178 } srvsvc_NetConnCtr0
;
186 [string,charset
(UTF16
)] uint16
*user
;
187 [string,charset
(UTF16
)] uint16
*share
;
188 } srvsvc_NetConnInfo1
;
192 [size_is(count
)] srvsvc_NetConnInfo1
*array
;
193 } srvsvc_NetConnCtr1
;
196 [case(0)] srvsvc_NetConnCtr0
*ctr0
;
197 [case(1)] srvsvc_NetConnCtr1
*ctr1
;
203 WERROR srvsvc_NetConnEnum
(
204 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
205 [in] [string,charset
(UTF16
)] uint16
*path
,
206 [in,out,ref] uint32
*level
,
207 [in,out,switch_is(*level
),ref] srvsvc_NetConnCtr
*ctr
,
208 [in] uint32 max_buffer
,
209 [out,ref] uint32
*totalentries
,
210 [in,out,unique] uint32
*resume_handle
213 /**************************/
215 /**************************/
218 } srvsvc_NetFileInfo2
;
222 [size_is(count
)] srvsvc_NetFileInfo2
*array
;
223 } srvsvc_NetFileCtr2
;
229 [string,charset
(UTF16
)] uint16
*path
;
230 [string,charset
(UTF16
)] uint16
*user
;
231 } srvsvc_NetFileInfo3
;
235 [size_is(count
)] srvsvc_NetFileInfo3
*array
;
236 } srvsvc_NetFileCtr3
;
239 [case(2)] srvsvc_NetFileInfo2
*info2
;
240 [case(3)] srvsvc_NetFileInfo3
*info3
;
242 } srvsvc_NetFileInfo
;
245 [case(2)] srvsvc_NetFileCtr2
*ctr2
;
246 [case(3)] srvsvc_NetFileCtr3
*ctr3
;
252 WERROR srvsvc_NetFileEnum
(
253 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
254 [in] [string,charset
(UTF16
)] uint16
*path
,
255 [in] [string,charset
(UTF16
)] uint16
*user
,
256 [in,out,ref] uint32
*level
,
257 [in,out,switch_is(*level
),ref] srvsvc_NetFileCtr
*ctr
,
258 [in] uint32 max_buffer
,
259 [out,ref] uint32
*totalentries
,
260 [in,out,unique] uint32
*resume_handle
265 WERROR srvsvc_NetFileGetInfo
(
266 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
269 [out,switch_is(level
),ref] srvsvc_NetFileInfo
*info
274 WERROR srvsvc_NetFileClose
(
275 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
279 /**************************/
281 /**************************/
283 [string,charset
(UTF16
)] uint16
*client
;
284 } srvsvc_NetSessInfo0
;
288 [size_is(count
)] srvsvc_NetSessInfo0
*array
;
289 } srvsvc_NetSessCtr0
;
292 [string,charset
(UTF16
)] uint16
*client
;
293 [string,charset
(UTF16
)] uint16
*user
;
298 } srvsvc_NetSessInfo1
;
302 [size_is(count
)] srvsvc_NetSessInfo1
*array
;
303 } srvsvc_NetSessCtr1
;
306 [string,charset
(UTF16
)] uint16
*client
;
307 [string,charset
(UTF16
)] uint16
*user
;
312 [string,charset
(UTF16
)] uint16
*client_type
;
313 } srvsvc_NetSessInfo2
;
317 [size_is(count
)] srvsvc_NetSessInfo2
*array
;
318 } srvsvc_NetSessCtr2
;
321 [string,charset
(UTF16
)] uint16
*client
;
322 [string,charset
(UTF16
)] uint16
*user
;
325 } srvsvc_NetSessInfo10
;
329 [size_is(count
)] srvsvc_NetSessInfo10
*array
;
330 } srvsvc_NetSessCtr10
;
333 [string,charset
(UTF16
)] uint16
*client
;
334 [string,charset
(UTF16
)] uint16
*user
;
339 [string,charset
(UTF16
)] uint16
*client_type
;
340 [string,charset
(UTF16
)] uint16
*transport
;
341 } srvsvc_NetSessInfo502
;
345 [size_is(count
)] srvsvc_NetSessInfo502
*array
;
346 } srvsvc_NetSessCtr502
;
349 [case(0)] srvsvc_NetSessCtr0
*ctr0
;
350 [case(1)] srvsvc_NetSessCtr1
*ctr1
;
351 [case(2)] srvsvc_NetSessCtr2
*ctr2
;
352 [case(10)] srvsvc_NetSessCtr10
*ctr10
;
353 [case(502)] srvsvc_NetSessCtr502
*ctr502
;
359 WERROR srvsvc_NetSessEnum
(
360 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
361 [in] [string,charset
(UTF16
)] uint16
*client
,
362 [in] [string,charset
(UTF16
)] uint16
*user
,
363 [in,out,ref] uint32
*level
,
364 [in,out,switch_is(*level
),ref] srvsvc_NetSessCtr
*ctr
,
365 [in] uint32 max_buffer
,
366 [out,ref] uint32
*totalentries
,
367 [in,out,unique] uint32
*resume_handle
372 WERROR srvsvc_NetSessDel
(
373 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
374 [in] [string,charset
(UTF16
)] uint16
*client
,
375 [in] [string,charset
(UTF16
)] uint16
*user
378 /**************************/
379 /* srvsvc_NetShare */
380 /**************************/
383 const uint32 STYPE_TEMPORARY
= 0x40000000; /* share is a temporary one */
384 const uint32 STYPE_HIDDEN
= 0x80000000; /* share is a hidden one */
386 typedef [v1_enum, flag
(NDR_PAHEX
)] enum {
388 STYPE_DISKTREE_TEMPORARY
= STYPE_DISKTREE|STYPE_TEMPORARY
,
389 STYPE_DISKTREE_HIDDEN
= STYPE_DISKTREE|STYPE_HIDDEN
,
391 STYPE_PRINTQ_TEMPORARY
= STYPE_PRINTQ|STYPE_TEMPORARY
,
392 STYPE_PRINTQ_HIDDEN
= STYPE_PRINTQ|STYPE_HIDDEN
,
393 STYPE_DEVICE
= 2, /* Serial device */
394 STYPE_DEVICE_TEMPORARY
= STYPE_DEVICE|STYPE_TEMPORARY
,
395 STYPE_DEVICE_HIDDEN
= STYPE_DEVICE|STYPE_HIDDEN
,
396 STYPE_IPC
= 3, /* Interprocess communication (IPC) */
397 STYPE_IPC_TEMPORARY
= STYPE_IPC|STYPE_TEMPORARY
,
398 STYPE_IPC_HIDDEN
= STYPE_IPC|STYPE_HIDDEN
402 [string,charset
(UTF16
)] uint16
*name
;
403 } srvsvc_NetShareInfo0
;
407 [size_is(count
)] srvsvc_NetShareInfo0
*array
;
408 } srvsvc_NetShareCtr0
;
411 [string,charset
(UTF16
)] uint16
*name
;
412 srvsvc_ShareType type
;
413 [string,charset
(UTF16
)] uint16
*comment
;
414 } srvsvc_NetShareInfo1
;
418 [size_is(count
)] srvsvc_NetShareInfo1
*array
;
419 } srvsvc_NetShareCtr1
;
422 [string,charset
(UTF16
)] uint16
*name
;
423 srvsvc_ShareType type
;
424 [string,charset
(UTF16
)] uint16
*comment
;
427 uint32 current_users
;
428 [string,charset
(UTF16
)] uint16
*path
;
429 [string,charset
(UTF16
)] uint16
*password
;
430 } srvsvc_NetShareInfo2
;
434 [size_is(count
)] srvsvc_NetShareInfo2
*array
;
435 } srvsvc_NetShareCtr2
;
438 [string,charset
(UTF16
)] uint16
*name
;
439 srvsvc_ShareType type
;
440 [string,charset
(UTF16
)] uint16
*comment
;
442 } srvsvc_NetShareInfo501
;
446 [size_is(count
)] srvsvc_NetShareInfo501
*array
;
447 } srvsvc_NetShareCtr501
;
450 [string,charset
(UTF16
)] uint16
*name
;
451 srvsvc_ShareType type
;
452 [string,charset
(UTF16
)] uint16
*comment
;
455 uint32 current_users
;
456 [string,charset
(UTF16
)] uint16
*path
;
457 [string,charset
(UTF16
)] uint16
*password
;
458 /* maybe here is a struct sec_desc_buf following */
460 [subcontext
(4)] security_descriptor
*sd
;
461 } srvsvc_NetShareInfo502
;
465 [size_is(count
)] srvsvc_NetShareInfo502
*array
;
466 } srvsvc_NetShareCtr502
;
469 [string,charset
(UTF16
)] uint16
*comment
;
470 } srvsvc_NetShareInfo1004
;
474 [size_is(count
)] srvsvc_NetShareInfo1004
*array
;
475 } srvsvc_NetShareCtr1004
;
478 SHARE_1005_IN_DFS
= 0x00000001,
479 SHARE_1005_DFS_ROOT
= 0x00000002
480 } NetShareInfo1005Flags
;
482 const uint32 SHARE_1005_CSC_POLICY_MASK
= 0x00000030;
483 const uint32 SHARE_1005_CSC_POLICY_SHIFT
= 4;
486 NetShareInfo1005Flags dfs_flags
;
487 } srvsvc_NetShareInfo1005
;
491 [size_is(count
)] srvsvc_NetShareInfo1005
*array
;
492 } srvsvc_NetShareCtr1005
;
496 } srvsvc_NetShareInfo1006
;
500 [size_is(count
)] srvsvc_NetShareInfo1006
*array
;
501 } srvsvc_NetShareCtr1006
;
505 [string,charset
(UTF16
)] uint16
*alternate_directory_name
;
506 } srvsvc_NetShareInfo1007
;
510 [size_is(count
)] srvsvc_NetShareInfo1007
*array
;
511 } srvsvc_NetShareCtr1007
;
515 [size_is(count
)] sec_desc_buf
*array
;
516 } srvsvc_NetShareCtr1501
;
519 [case(0)] srvsvc_NetShareInfo0
*info0
;
520 [case(1)] srvsvc_NetShareInfo1
*info1
;
521 [case(2)] srvsvc_NetShareInfo2
*info2
;
522 [case(501)] srvsvc_NetShareInfo501
*info501
;
523 [case(502)] srvsvc_NetShareInfo502
*info502
;
524 [case(1004)] srvsvc_NetShareInfo1004
*info1004
;
525 [case(1005)] srvsvc_NetShareInfo1005
*info1005
;
526 [case(1006)] srvsvc_NetShareInfo1006
*info1006
;
527 [case(1007)] srvsvc_NetShareInfo1007
*info1007
;
528 [case(1501)] sec_desc_buf
*info1501
;
530 } srvsvc_NetShareInfo
;
533 [case(0)] srvsvc_NetShareCtr0
*ctr0
;
534 [case(1)] srvsvc_NetShareCtr1
*ctr1
;
535 [case(2)] srvsvc_NetShareCtr2
*ctr2
;
536 [case(501)] srvsvc_NetShareCtr501
*ctr501
;
537 [case(502)] srvsvc_NetShareCtr502
*ctr502
;
538 [case(1004)] srvsvc_NetShareCtr1004
*ctr1004
;
539 [case(1005)] srvsvc_NetShareCtr1005
*ctr1005
;
540 [case(1006)] srvsvc_NetShareCtr1006
*ctr1006
;
541 [case(1007)] srvsvc_NetShareCtr1007
*ctr1007
;
542 [case(1501)] srvsvc_NetShareCtr1501
*ctr1501
;
544 } srvsvc_NetShareCtr
;
548 WERROR srvsvc_NetShareAdd
(
549 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
551 [in,switch_is(level
)] srvsvc_NetShareInfo info
,
552 [in,out] uint32
*parm_error
557 WERROR srvsvc_NetShareEnumAll
(
558 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
559 [in,out,ref] uint32
*level
,
560 [in,out,ref,switch_is(*level
)] srvsvc_NetShareCtr
*ctr
,
561 [in] uint32 max_buffer
,
562 [out,ref] uint32
*totalentries
,
563 [in,out] uint32
*resume_handle
568 WERROR srvsvc_NetShareGetInfo
(
569 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
570 [in] [string,charset
(UTF16
)] uint16 share_name
[],
572 [out,ref,switch_is(level
)] srvsvc_NetShareInfo
*info
577 WERROR srvsvc_NetShareSetInfo
(
578 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
579 [in] [string,charset
(UTF16
)] uint16 share_name
[],
581 [in,switch_is(level
)] srvsvc_NetShareInfo info
,
582 [in,out] uint32
*parm_error
587 WERROR srvsvc_NetShareDel
(
588 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
589 [in] [string,charset
(UTF16
)] uint16 share_name
[],
595 WERROR srvsvc_NetShareDelSticky
(
596 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
597 [in] [string,charset
(UTF16
)] uint16 share_name
[],
603 WERROR srvsvc_NetShareCheck
(
604 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
605 [in] [string,charset
(UTF16
)] uint16 device_name
[],
606 [out,ref] srvsvc_ShareType
*type
609 /**************************/
611 /**************************/
612 typedef [public,v1_enum] enum {
613 PLATFORM_ID_DOS
= 300,
614 PLATFORM_ID_OS2
= 400,
615 PLATFORM_ID_NT
= 500,
616 PLATFORM_ID_OSF
= 600,
617 PLATFORM_ID_VMS
= 700
621 srvsvc_PlatformId platform_id
;
622 [string,charset
(UTF16
)] uint16
*server_name
;
623 } srvsvc_NetSrvInfo100
;
626 srvsvc_PlatformId platform_id
;
627 [string,charset
(UTF16
)] uint16
*server_name
;
628 uint32 version_major
;
629 uint32 version_minor
;
630 svcctl_ServerType server_type
;
631 [string,charset
(UTF16
)] uint16
*comment
;
632 } srvsvc_NetSrvInfo101
;
635 srvsvc_PlatformId platform_id
;
636 [string,charset
(UTF16
)] uint16
*server_name
;
637 uint32 version_major
;
638 uint32 version_minor
;
639 svcctl_ServerType server_type
;
640 [string,charset
(UTF16
)] uint16
*comment
;
647 [string,charset
(UTF16
)] uint16
*userpath
;
648 } srvsvc_NetSrvInfo102
;
654 [string,charset
(UTF16
)] uint16
*alerts
;
658 [string,charset
(UTF16
)] uint16
*guestaccount
;
680 [string,charset
(UTF16
)] uint16
*srvheuristics
;
681 } srvsvc_NetSrvInfo402
;
687 [string,charset
(UTF16
)] uint16
*alerts
;
691 [string,charset
(UTF16
)] uint16
*guestaccount
;
713 [string,charset
(UTF16
)] uint16
*srvheuristics
;
714 uint32 auditedevents
;
716 [string,charset
(UTF16
)] uint16
*autopath
;
717 } srvsvc_NetSrvInfo403
;
724 uint32 initworkitems
;
731 uint32 maxpagedmemoryusage
;
732 uint32 maxnonpagedmemoryusage
;
733 uint32 enablesoftcompat
;
734 uint32 enableforcedlogoff
;
736 uint32 acceptdownlevelapis
;
738 } srvsvc_NetSrvInfo502
;
745 uint32 initworkitems
;
752 uint32 maxpagedmemoryusage
;
753 uint32 maxnonpagedmemoryusage
;
754 uint32 enablesoftcompat
;
755 uint32 enableforcedlogoff
;
757 uint32 acceptdownlevelapis
;
759 [string,charset
(UTF16
)] uint16
*domain
;
760 uint32 maxcopyreadlen
;
761 uint32 maxcopywritelen
;
762 uint32 minkeepsearch
;
763 uint32 maxkeepsearch
;
764 uint32 minkeepcomplsearch
;
765 uint32 maxkeepcomplsearch
;
766 uint32 threadcountadd
;
767 uint32 numlockthreads
;
770 uint32 minfreeworkitems
;
772 uint32 threadpriority
;
774 uint32 oplockbreakwait
;
775 uint32 oplockbreakresponsewait
;
776 uint32 enableoplocks
;
777 uint32 enableoplockforceclose
;
778 uint32 enablefcbopens
;
780 uint32 enablesharednetdrives
;
781 uint32 minfreeconnections
;
782 uint32 maxfreeconnections
;
783 } srvsvc_NetSrvInfo503
;
790 uint32 initworkitems
;
797 uint32 maxpagedmemoryusage
;
798 uint32 maxnonpagedmemoryusage
;
799 uint32 enablesoftcompat
;
800 uint32 enableforcedlogoff
;
802 uint32 acceptdownlevelapis
;
804 [string,charset
(UTF16
)] uint16
*domain
;
805 uint32 maxcopyreadlen
;
806 uint32 maxcopywritelen
;
807 uint32 minkeepsearch
;
808 uint32 minkeepcomplsearch
;
809 uint32 maxkeepcomplsearch
;
810 uint32 threadcountadd
;
811 uint32 numlockthreads
;
814 uint32 minfreeworkitems
;
816 uint32 threadpriority
;
818 uint32 oplockbreakwait
;
819 uint32 oplockbreakresponsewait
;
820 uint32 enableoplocks
;
821 uint32 enableoplockforceclose
;
822 uint32 enablefcbopens
;
824 uint32 enablesharednetdrives
;
825 uint32 minfreeconnections
;
826 uint32 maxfreeconnections
;
827 uint32 initsesstable
;
828 uint32 initconntable
;
829 uint32 initfiletable
;
830 uint32 initsearchtable
;
832 uint32 errortreshold
;
833 uint32 networkerrortreshold
;
834 uint32 diskspacetreshold
;
837 uint32 minlinkthroughput
;
838 uint32 linkinfovalidtime
;
839 uint32 scavqosinfoupdatetime
;
840 uint32 maxworkitemidletime
;
841 } srvsvc_NetSrvInfo599
;
844 [string,charset
(UTF16
)] uint16
*comment
;
845 } srvsvc_NetSrvInfo1005
;
849 } srvsvc_NetSrvInfo1010
;
853 } srvsvc_NetSrvInfo1016
;
857 } srvsvc_NetSrvInfo1017
;
861 } srvsvc_NetSrvInfo1018
;
865 } srvsvc_NetSrvInfo1107
;
869 } srvsvc_NetSrvInfo1501
;
873 } srvsvc_NetSrvInfo1502
;
877 } srvsvc_NetSrvInfo1503
;
881 } srvsvc_NetSrvInfo1506
;
885 } srvsvc_NetSrvInfo1509
;
889 } srvsvc_NetSrvInfo1510
;
893 } srvsvc_NetSrvInfo1511
;
896 uint32 maxnonpagedmemoryusage
;
897 } srvsvc_NetSrvInfo1512
;
900 uint32 maxpagedmemoryusage
;
901 } srvsvc_NetSrvInfo1513
;
904 uint32 enablesoftcompat
;
905 } srvsvc_NetSrvInfo1514
;
908 uint32 enableforcedlogoff
;
909 } srvsvc_NetSrvInfo1515
;
913 } srvsvc_NetSrvInfo1516
;
917 } srvsvc_NetSrvInfo1518
;
920 uint32 maxcopyreadlen
;
921 } srvsvc_NetSrvInfo1520
;
924 uint32 maxcopywritelen
;
925 } srvsvc_NetSrvInfo1521
;
928 uint32 minkeepsearch
;
929 } srvsvc_NetSrvInfo1522
;
932 uint32 maxkeepsearch
;
933 } srvsvc_NetSrvInfo1523
;
936 uint32 minkeepcomplsearch
;
937 } srvsvc_NetSrvInfo1524
;
940 uint32 maxkeepcomplsearch
;
941 } srvsvc_NetSrvInfo1525
;
945 } srvsvc_NetSrvInfo1528
;
949 } srvsvc_NetSrvInfo1529
;
952 uint32 minfreeworkitems
;
953 } srvsvc_NetSrvInfo1530
;
957 } srvsvc_NetSrvInfo1533
;
960 uint32 oplockbreakwait
;
961 } srvsvc_NetSrvInfo1534
;
964 uint32 oplockbreakresponsewait
;
965 } srvsvc_NetSrvInfo1535
;
968 uint32 enableoplocks
;
969 } srvsvc_NetSrvInfo1536
;
972 uint32 enableoplockforceclose
;
973 } srvsvc_NetSrvInfo1537
;
976 uint32 enablefcbopens
;
977 } srvsvc_NetSrvInfo1538
;
981 } srvsvc_NetSrvInfo1539
;
984 uint32 enablesharednetdrives
;
985 } srvsvc_NetSrvInfo1540
;
988 uint32 minfreeconnections
;
989 } srvsvc_NetSrvInfo1541
;
992 uint32 maxfreeconnections
;
993 } srvsvc_NetSrvInfo1542
;
996 uint32 initsesstable
;
997 } srvsvc_NetSrvInfo1543
;
1000 uint32 initconntable
;
1001 } srvsvc_NetSrvInfo1544
;
1004 uint32 initfiletable
;
1005 } srvsvc_NetSrvInfo1545
;
1008 uint32 initsearchtable
;
1009 } srvsvc_NetSrvInfo1546
;
1013 } srvsvc_NetSrvInfo1547
;
1016 uint32 errortreshold
;
1017 } srvsvc_NetSrvInfo1548
;
1020 uint32 networkerrortreshold
;
1021 } srvsvc_NetSrvInfo1549
;
1024 uint32 diskspacetreshold
;
1025 } srvsvc_NetSrvInfo1550
;
1028 uint32 maxlinkdelay
;
1029 } srvsvc_NetSrvInfo1552
;
1032 uint32 minlinkthroughput
;
1033 } srvsvc_NetSrvInfo1553
;
1036 uint32 linkinfovalidtime
;
1037 } srvsvc_NetSrvInfo1554
;
1040 uint32 scavqosinfoupdatetime
;
1041 } srvsvc_NetSrvInfo1555
;
1044 uint32 maxworkitemidletime
;
1045 } srvsvc_NetSrvInfo1556
;
1049 [case(100)] srvsvc_NetSrvInfo100
*info100
;
1050 [case(101)] srvsvc_NetSrvInfo101
*info101
;
1051 [case(102)] srvsvc_NetSrvInfo102
*info102
;
1052 [case(402)] srvsvc_NetSrvInfo402
*info402
;
1053 [case(403)] srvsvc_NetSrvInfo403
*info403
;
1054 [case(502)] srvsvc_NetSrvInfo502
*info502
;
1055 [case(503)] srvsvc_NetSrvInfo503
*info503
;
1056 [case(599)] srvsvc_NetSrvInfo599
*info599
;
1057 [case(1005)] srvsvc_NetSrvInfo1005
*info1005
;
1058 [case(1010)] srvsvc_NetSrvInfo1010
*info1010
;
1059 [case(1016)] srvsvc_NetSrvInfo1016
*info1016
;
1060 [case(1017)] srvsvc_NetSrvInfo1017
*info1017
;
1061 [case(1018)] srvsvc_NetSrvInfo1018
*info1018
;
1062 [case(1107)] srvsvc_NetSrvInfo1107
*info1107
;
1063 [case(1501)] srvsvc_NetSrvInfo1501
*info1501
;
1064 [case(1502)] srvsvc_NetSrvInfo1502
*info1502
;
1065 [case(1503)] srvsvc_NetSrvInfo1503
*info1503
;
1066 [case(1506)] srvsvc_NetSrvInfo1506
*info1506
;
1067 [case(1509)] srvsvc_NetSrvInfo1509
*info1509
;
1068 [case(1510)] srvsvc_NetSrvInfo1510
*info1510
;
1069 [case(1511)] srvsvc_NetSrvInfo1511
*info1511
;
1070 [case(1512)] srvsvc_NetSrvInfo1512
*info1512
;
1071 [case(1513)] srvsvc_NetSrvInfo1513
*info1513
;
1072 [case(1514)] srvsvc_NetSrvInfo1514
*info1514
;
1073 [case(1515)] srvsvc_NetSrvInfo1515
*info1515
;
1074 [case(1516)] srvsvc_NetSrvInfo1516
*info1516
;
1075 [case(1518)] srvsvc_NetSrvInfo1518
*info1518
;
1076 [case(1520)] srvsvc_NetSrvInfo1520
*info1520
;
1077 [case(1521)] srvsvc_NetSrvInfo1521
*info1521
;
1078 [case(1522)] srvsvc_NetSrvInfo1522
*info1522
;
1079 [case(1523)] srvsvc_NetSrvInfo1523
*info1523
;
1080 [case(1524)] srvsvc_NetSrvInfo1524
*info1524
;
1081 [case(1525)] srvsvc_NetSrvInfo1525
*info1525
;
1082 [case(1528)] srvsvc_NetSrvInfo1528
*info1528
;
1083 [case(1529)] srvsvc_NetSrvInfo1529
*info1529
;
1084 [case(1530)] srvsvc_NetSrvInfo1530
*info1530
;
1085 [case(1533)] srvsvc_NetSrvInfo1533
*info1533
;
1086 [case(1534)] srvsvc_NetSrvInfo1534
*info1534
;
1087 [case(1535)] srvsvc_NetSrvInfo1535
*info1535
;
1088 [case(1536)] srvsvc_NetSrvInfo1536
*info1536
;
1089 [case(1537)] srvsvc_NetSrvInfo1537
*info1537
;
1090 [case(1538)] srvsvc_NetSrvInfo1538
*info1538
;
1091 [case(1539)] srvsvc_NetSrvInfo1539
*info1539
;
1092 [case(1540)] srvsvc_NetSrvInfo1540
*info1540
;
1093 [case(1541)] srvsvc_NetSrvInfo1541
*info1541
;
1094 [case(1542)] srvsvc_NetSrvInfo1542
*info1542
;
1095 [case(1543)] srvsvc_NetSrvInfo1543
*info1543
;
1096 [case(1544)] srvsvc_NetSrvInfo1544
*info1544
;
1097 [case(1545)] srvsvc_NetSrvInfo1545
*info1545
;
1098 [case(1546)] srvsvc_NetSrvInfo1546
*info1546
;
1099 [case(1547)] srvsvc_NetSrvInfo1547
*info1547
;
1100 [case(1548)] srvsvc_NetSrvInfo1548
*info1548
;
1101 [case(1549)] srvsvc_NetSrvInfo1549
*info1549
;
1102 [case(1550)] srvsvc_NetSrvInfo1550
*info1550
;
1103 [case(1552)] srvsvc_NetSrvInfo1552
*info1552
;
1104 [case(1553)] srvsvc_NetSrvInfo1553
*info1553
;
1105 [case(1554)] srvsvc_NetSrvInfo1554
*info1554
;
1106 [case(1555)] srvsvc_NetSrvInfo1555
*info1555
;
1107 [case(1556)] srvsvc_NetSrvInfo1556
*info1556
;
1109 } srvsvc_NetSrvInfo
;
1111 /******************/
1112 /* Function: 0x15 */
1113 WERROR srvsvc_NetSrvGetInfo
(
1114 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1116 [out,ref,switch_is(level
)] srvsvc_NetSrvInfo
*info
1119 /******************/
1120 /* Function: 0x16 */
1121 WERROR srvsvc_NetSrvSetInfo
(
1122 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1124 [in,switch_is(level
)] srvsvc_NetSrvInfo info
,
1125 [in,out] uint32
*parm_error
1128 /**************************/
1129 /* srvsvc_NetDisk */
1130 /**************************/
1132 [flag
(STR_LEN4
)] string disk
;
1133 } srvsvc_NetDiskInfo0
;
1137 [size_is(count
), length_is(count
)] srvsvc_NetDiskInfo0
*disks
;
1138 } srvsvc_NetDiskInfo
;
1140 /******************/
1141 /* Function: 0x17 */
1142 WERROR srvsvc_NetDiskEnum
(
1143 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1145 [in,out,ref] srvsvc_NetDiskInfo
*info
,
1147 [out,ref] uint32
*totalentries
,
1148 [in,out] uint32
*resume_handle
1151 /**************************/
1152 /* srvsvc_NetStatistics */
1153 /**************************/
1165 uint32 bytessent_low
;
1166 uint32 bytessent_high
;
1167 uint32 bytesrcvd_low
;
1168 uint32 bytesrcvd_high
;
1172 } srvsvc_Statistics
;
1174 /******************/
1175 /* Function: 0x18 */
1176 WERROR srvsvc_NetServerStatisticsGet
(
1177 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1178 [in] [string,charset
(UTF16
)] uint16
*service
,
1180 [in] uint32 options
,
1181 [out,ref] srvsvc_Statistics
*stats
1184 /**************************/
1185 /* srvsvc_NetTransport */
1186 /**************************/
1189 [string,charset
(UTF16
)] uint16
*name
;
1190 [size_is(addr_len
)] uint8
*addr
;
1192 [string,charset
(UTF16
)] uint16
*net_addr
;
1193 } srvsvc_NetTransportInfo0
;
1195 /******************/
1196 /* Function: 0x19 */
1197 WERROR srvsvc_NetTransportAdd
(
1198 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1200 [in,switch_is(level
)] srvsvc_NetTransportInfo info
1205 [size_is(count
)] srvsvc_NetTransportInfo0
*array
;
1206 } srvsvc_NetTransportCtr0
;
1210 [string,charset
(UTF16
)] uint16
*name
;
1211 [size_is(addr_len
)] uint8
*addr
;
1213 [string,charset
(UTF16
)] uint16
*net_addr
;
1214 [string,charset
(UTF16
)] uint16
*domain
;
1215 } srvsvc_NetTransportInfo1
;
1219 [size_is(count
)] srvsvc_NetTransportInfo1
*array
;
1220 } srvsvc_NetTransportCtr1
;
1224 [string,charset
(UTF16
)] uint16
*name
;
1225 [size_is(addr_len
)] uint8
*addr
;
1227 [string,charset
(UTF16
)] uint16
*net_addr
;
1228 [string,charset
(UTF16
)] uint16
*domain
;
1230 } srvsvc_NetTransportInfo2
;
1234 [size_is(count
)] srvsvc_NetTransportInfo2
*array
;
1235 } srvsvc_NetTransportCtr2
;
1239 [string,charset
(UTF16
)] uint16
*name
;
1240 [size_is(addr_len
)] uint8
*addr
;
1242 [string,charset
(UTF16
)] uint16
*net_addr
;
1243 [string,charset
(UTF16
)] uint16
*domain
;
1246 uint8 unknown3
[256];
1247 } srvsvc_NetTransportInfo3
;
1251 [size_is(count
)] srvsvc_NetTransportInfo3
*array
;
1252 } srvsvc_NetTransportCtr3
;
1255 [case(0)] srvsvc_NetTransportCtr0
*ctr0
;
1256 [case(1)] srvsvc_NetTransportCtr1
*ctr1
;
1257 [case(2)] srvsvc_NetTransportCtr2
*ctr2
;
1258 [case(3)] srvsvc_NetTransportCtr3
*ctr3
;
1260 } srvsvc_NetTransportCtr
;
1262 /******************/
1263 /* Function: 0x1a */
1264 WERROR srvsvc_NetTransportEnum
(
1265 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1266 [in,out,ref] uint32
*level
,
1267 [in,out,ref,switch_is(*level
)] srvsvc_NetTransportCtr
*transports
,
1268 [in] uint32 max_buffer
,
1269 [out,ref] uint32
*totalentries
,
1270 [in,out,unique] uint32
*resume_handle
1273 /******************/
1274 /* Function: 0x1b */
1275 WERROR srvsvc_NetTransportDel
(
1276 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1277 [in] uint32 unknown
,
1278 [in] srvsvc_NetTransportInfo0 transport
1281 /**************************/
1282 /* srvsvc_NetRemoteTOD */
1283 /**************************/
1285 uint32 elapsed
; /* time(NULL) */
1286 uint32 msecs
; /* milliseconds till system reboot (uptime) */
1291 int32 timezone
; /* in minutes */
1292 uint32 tinterval
; /* clock tick interval in 0.0001 second units; 310 on windows */
1297 } srvsvc_NetRemoteTODInfo
;
1299 /******************/
1300 /* Function: 0x1c */
1301 WERROR srvsvc_NetRemoteTOD
(
1302 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1303 [out] srvsvc_NetRemoteTODInfo
*info
1306 /**************************/
1307 /* srvsvc_NetServiceBits */
1308 /**************************/
1309 /******************/
1310 /* Function: 0x1d */
1311 WERROR srvsvc_NetSetServiceBits
(
1312 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1313 [in] [string,charset
(UTF16
)] uint16
*transport
,
1314 [in] uint32 servicebits
,
1315 [in] uint32 updateimmediately
1318 /**************************/
1319 /* srvsvc_NetPath */
1320 /**************************/
1321 /******************/
1322 /* Function: 0x1e */
1323 WERROR srvsvc_NetPathType
(
1324 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1325 [in] [string,charset
(UTF16
)] uint16 path
[],
1326 [in] uint32 pathflags
,
1327 [out,ref] uint32
*pathtype
1330 /******************/
1331 /* Function: 0x1f */
1332 WERROR srvsvc_NetPathCanonicalize
(
1333 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1334 [in] [string,charset
(UTF16
)] uint16 path
[],
1335 [out] [size_is(maxbuf
)] uint8 can_path
[],
1337 [in] [string,charset
(UTF16
)] uint16 prefix
[],
1338 [in,out,ref] uint32
*pathtype
,
1339 [in] uint32 pathflags
1342 /******************/
1343 /* Function: 0x20 */
1344 WERROR srvsvc_NetPathCompare
(
1345 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1346 [in] [string,charset
(UTF16
)] uint16 path1
[],
1347 [in] [string,charset
(UTF16
)] uint16 path2
[],
1348 [in] uint32 pathtype
,
1349 [in] uint32 pathflags
1352 /**************************/
1353 /* srvsvc_NetName */
1354 /**************************/
1355 /******************/
1356 /* Function: 0x21 */
1357 WERROR srvsvc_NetNameValidate
(
1358 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1359 [in] [string,charset
(UTF16
)] uint16 name
[],
1360 [in] uint32 name_type
,
1364 /******************/
1365 /* Function: 0x22 */
1366 WERROR srvsvc_NETRPRNAMECANONICALIZE
(
1369 /******************/
1370 /* Function: 0x23 */
1371 WERROR srvsvc_NetPRNameCompare
(
1372 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1373 [in] [string,charset
(UTF16
)] uint16 name1
[],
1374 [in] [string,charset
(UTF16
)] uint16 name2
[],
1375 [in] uint32 name_type
,
1379 /**************************/
1380 /* srvsvc_NetShare ... */
1381 /**************************/
1382 /******************/
1383 /* Function: 0x24 */
1384 /* Note, there must be some way to return entries read vs
1385 total entries ... */
1386 WERROR srvsvc_NetShareEnum
(
1387 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1388 [in,out,ref] uint32
*level
,
1389 [in,out,ref,switch_is(*level
)] srvsvc_NetShareCtr
*ctr
,
1390 [in] uint32 max_buffer
,
1391 [out,ref] uint32
*totalentries
,
1392 [in,out,unique] uint32
*resume_handle
1395 /******************/
1396 /* Function: 0x25 */
1397 WERROR srvsvc_NetShareDelStart
(
1398 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1399 [in] [string,charset
(UTF16
)] uint16 share
[],
1400 [in] uint32 reserved
,
1401 [out] policy_handle
*hnd
1404 /******************/
1405 /* Function: 0x26 */
1406 WERROR srvsvc_NetShareDelCommit
(
1407 [in, out] policy_handle
*hnd
1410 /******************/
1411 /* Function: 0x27 */
1412 WERROR srvsvc_NetGetFileSecurity
(
1413 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1414 [in] [string,charset
(UTF16
)] uint16
*share
,
1415 [in] [string,charset
(UTF16
)] uint16 file
[],
1416 [in] security_secinfo securityinformation
,
1417 [out] sec_desc_buf
*sd_buf
1420 /******************/
1421 /* Function: 0x28 */
1422 WERROR srvsvc_NetSetFileSecurity
(
1423 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1424 [in] [string,charset
(UTF16
)] uint16
*share
,
1425 [in] [string,charset
(UTF16
)] uint16 file
[],
1426 [in] security_secinfo securityinformation
,
1427 [in] sec_desc_buf sd_buf
1432 typedef [switch_type(uint32
)] union {
1433 [case(0)] srvsvc_NetTransportInfo0 info0
;
1434 [case(1)] srvsvc_NetTransportInfo1 info1
;
1435 [case(2)] srvsvc_NetTransportInfo2 info2
;
1436 [case(3)] srvsvc_NetTransportInfo3 info3
;
1437 } srvsvc_NetTransportInfo
;
1439 /******************/
1440 /* Function: 0x29 */
1441 WERROR srvsvc_NetServerTransportAddEx
(
1442 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1444 [in,switch_is(level
)] srvsvc_NetTransportInfo info
1447 /******************/
1448 /* Function: 0x2a */
1449 WERROR srvsvc_NetServerSetServiceBitsEx
(
1450 [in] [string,charset
(UTF16
)] uint16
*server_unc
,
1451 [in] [string,charset
(UTF16
)] uint16
*emulated_server_unc
,
1452 [in] [string,charset
(UTF16
)] uint16
*transport
,
1453 [in] uint32 servicebitsofinterest
,
1454 [in] uint32 servicebits
,
1455 [in] uint32 updateimmediately
1458 /******************/
1459 /* Function: 0x2b */
1460 WERROR srvsvc_NETRDFSGETVERSION
(
1463 /******************/
1464 /* Function: 0x2c */
1465 WERROR srvsvc_NETRDFSCREATELOCALPARTITION
(
1468 /******************/
1469 /* Function: 0x2d */
1470 WERROR srvsvc_NETRDFSDELETELOCALPARTITION
(
1473 /******************/
1474 /* Function: 0x2e */
1475 WERROR srvsvc_NETRDFSSETLOCALVOLUMESTATE
(
1478 /******************/
1479 /* Function: 0x2f */
1480 WERROR srvsvc_NETRDFSSETSERVERINFO
(
1483 /******************/
1484 /* Function: 0x30 */
1485 WERROR srvsvc_NETRDFSCREATEEXITPOINT
(
1488 /******************/
1489 /* Function: 0x31 */
1490 WERROR srvsvc_NETRDFSDELETEEXITPOINT
(
1493 /******************/
1494 /* Function: 0x32 */
1495 WERROR srvsvc_NETRDFSMODIFYPREFIX
(
1498 /******************/
1499 /* Function: 0x33 */
1500 WERROR srvsvc_NETRDFSFIXLOCALVOLUME
(
1503 /******************/
1504 /* Function: 0x34 */
1505 WERROR srvsvc_NETRDFSMANAGERREPORTSITEINFO
(
1508 /******************/
1509 /* Function: 0x35 */
1510 WERROR srvsvc_NETRSERVERTRANSPORTDELEX
(