Re-run make idl.
[ira/wip.git] / source3 / librpc / gen_ndr / srvsvc.h
1 /* header auto-generated by pidl */
2
3 #include <stdint.h>
4
5 #include "librpc/gen_ndr/security.h"
6 #include "librpc/gen_ndr/svcctl.h"
7 #ifndef _HEADER_srvsvc
8 #define _HEADER_srvsvc
9
10 #define STYPE_TEMPORARY ( 0x40000000 )
11 #define STYPE_HIDDEN    ( 0x80000000 )
12 #define SHARE_1005_CSC_POLICY_MASK      ( 0x00000030 )
13 #define SHARE_1005_CSC_POLICY_SHIFT     ( 4 )
14 struct srvsvc_NetCharDevInfo0 {
15         const char *device;/* [unique,charset(UTF16)] */
16 };
17
18 struct srvsvc_NetCharDevCtr0 {
19         uint32_t count;
20         struct srvsvc_NetCharDevInfo0 *array;/* [unique,size_is(count)] */
21 };
22
23 struct srvsvc_NetCharDevInfo1 {
24         const char *device;/* [unique,charset(UTF16)] */
25         uint32_t status;
26         const char *user;/* [unique,charset(UTF16)] */
27         uint32_t time;
28 };
29
30 struct srvsvc_NetCharDevCtr1 {
31         uint32_t count;
32         struct srvsvc_NetCharDevInfo1 *array;/* [unique,size_is(count)] */
33 };
34
35 union srvsvc_NetCharDevInfo {
36         struct srvsvc_NetCharDevInfo0 *info0;/* [unique,case(0)] */
37         struct srvsvc_NetCharDevInfo1 *info1;/* [unique,case] */
38 };
39
40 union srvsvc_NetCharDevCtr {
41         struct srvsvc_NetCharDevCtr0 *ctr0;/* [unique,case(0)] */
42         struct srvsvc_NetCharDevCtr1 *ctr1;/* [unique,case] */
43 };
44
45 struct srvsvc_NetCharDevQInfo0 {
46         const char *device;/* [unique,charset(UTF16)] */
47 };
48
49 struct srvsvc_NetCharDevQCtr0 {
50         uint32_t count;
51         struct srvsvc_NetCharDevQInfo0 *array;/* [unique,size_is(count)] */
52 };
53
54 struct srvsvc_NetCharDevQInfo1 {
55         const char *device;/* [unique,charset(UTF16)] */
56         uint32_t priority;
57         const char *devices;/* [unique,charset(UTF16)] */
58         uint32_t users;
59         uint32_t num_ahead;
60 };
61
62 struct srvsvc_NetCharDevQCtr1 {
63         uint32_t count;
64         struct srvsvc_NetCharDevQInfo1 *array;/* [unique,size_is(count)] */
65 };
66
67 union srvsvc_NetCharDevQInfo {
68         struct srvsvc_NetCharDevQInfo0 *info0;/* [unique,case(0)] */
69         struct srvsvc_NetCharDevQInfo1 *info1;/* [unique,case] */
70 };
71
72 union srvsvc_NetCharDevQCtr {
73         struct srvsvc_NetCharDevQCtr0 *ctr0;/* [unique,case(0)] */
74         struct srvsvc_NetCharDevQCtr1 *ctr1;/* [unique,case] */
75 };
76
77 struct srvsvc_NetConnInfo0 {
78         uint32_t conn_id;
79 };
80
81 struct srvsvc_NetConnCtr0 {
82         uint32_t count;
83         struct srvsvc_NetConnInfo0 *array;/* [unique,size_is(count)] */
84 };
85
86 struct srvsvc_NetConnInfo1 {
87         uint32_t conn_id;
88         uint32_t conn_type;
89         uint32_t num_open;
90         uint32_t num_users;
91         uint32_t conn_time;
92         const char *user;/* [unique,charset(UTF16)] */
93         const char *share;/* [unique,charset(UTF16)] */
94 };
95
96 struct srvsvc_NetConnCtr1 {
97         uint32_t count;
98         struct srvsvc_NetConnInfo1 *array;/* [unique,size_is(count)] */
99 };
100
101 union srvsvc_NetConnCtr {
102         struct srvsvc_NetConnCtr0 *ctr0;/* [unique,case(0)] */
103         struct srvsvc_NetConnCtr1 *ctr1;/* [unique,case] */
104 };
105
106 struct srvsvc_NetConnInfoCtr {
107         uint32_t level;
108         union srvsvc_NetConnCtr ctr;/* [switch_is(level)] */
109 };
110
111 struct srvsvc_NetFileInfo2 {
112         uint32_t fid;
113 };
114
115 struct srvsvc_NetFileCtr2 {
116         uint32_t count;
117         struct srvsvc_NetFileInfo2 *array;/* [unique,size_is(count)] */
118 };
119
120 struct srvsvc_NetFileInfo3 {
121         uint32_t fid;
122         uint32_t permissions;
123         uint32_t num_locks;
124         const char *path;/* [unique,charset(UTF16)] */
125         const char *user;/* [unique,charset(UTF16)] */
126 };
127
128 struct srvsvc_NetFileCtr3 {
129         uint32_t count;
130         struct srvsvc_NetFileInfo3 *array;/* [unique,size_is(count)] */
131 };
132
133 union srvsvc_NetFileInfo {
134         struct srvsvc_NetFileInfo2 *info2;/* [unique,case(2)] */
135         struct srvsvc_NetFileInfo3 *info3;/* [unique,case(3)] */
136 };
137
138 union srvsvc_NetFileCtr {
139         struct srvsvc_NetFileCtr2 *ctr2;/* [unique,case(2)] */
140         struct srvsvc_NetFileCtr3 *ctr3;/* [unique,case(3)] */
141 };
142
143 struct srvsvc_NetFileInfoCtr {
144         uint32_t level;
145         union srvsvc_NetFileCtr ctr;/* [switch_is(level)] */
146 };
147
148 struct srvsvc_NetSessInfo0 {
149         const char *client;/* [unique,charset(UTF16)] */
150 };
151
152 struct srvsvc_NetSessCtr0 {
153         uint32_t count;
154         struct srvsvc_NetSessInfo0 *array;/* [unique,size_is(count)] */
155 };
156
157 struct srvsvc_NetSessInfo1 {
158         const char *client;/* [unique,charset(UTF16)] */
159         const char *user;/* [unique,charset(UTF16)] */
160         uint32_t num_open;
161         uint32_t time;
162         uint32_t idle_time;
163         uint32_t user_flags;
164 };
165
166 struct srvsvc_NetSessCtr1 {
167         uint32_t count;
168         struct srvsvc_NetSessInfo1 *array;/* [unique,size_is(count)] */
169 };
170
171 struct srvsvc_NetSessInfo2 {
172         const char *client;/* [unique,charset(UTF16)] */
173         const char *user;/* [unique,charset(UTF16)] */
174         uint32_t num_open;
175         uint32_t time;
176         uint32_t idle_time;
177         uint32_t user_flags;
178         const char *client_type;/* [unique,charset(UTF16)] */
179 };
180
181 struct srvsvc_NetSessCtr2 {
182         uint32_t count;
183         struct srvsvc_NetSessInfo2 *array;/* [unique,size_is(count)] */
184 };
185
186 struct srvsvc_NetSessInfo10 {
187         const char *client;/* [unique,charset(UTF16)] */
188         const char *user;/* [unique,charset(UTF16)] */
189         uint32_t time;
190         uint32_t idle_time;
191 };
192
193 struct srvsvc_NetSessCtr10 {
194         uint32_t count;
195         struct srvsvc_NetSessInfo10 *array;/* [unique,size_is(count)] */
196 };
197
198 struct srvsvc_NetSessInfo502 {
199         const char *client;/* [unique,charset(UTF16)] */
200         const char *user;/* [unique,charset(UTF16)] */
201         uint32_t num_open;
202         uint32_t time;
203         uint32_t idle_time;
204         uint32_t user_flags;
205         const char *client_type;/* [unique,charset(UTF16)] */
206         const char *transport;/* [unique,charset(UTF16)] */
207 };
208
209 struct srvsvc_NetSessCtr502 {
210         uint32_t count;
211         struct srvsvc_NetSessInfo502 *array;/* [unique,size_is(count)] */
212 };
213
214 union srvsvc_NetSessCtr {
215         struct srvsvc_NetSessCtr0 *ctr0;/* [unique,case(0)] */
216         struct srvsvc_NetSessCtr1 *ctr1;/* [unique,case] */
217         struct srvsvc_NetSessCtr2 *ctr2;/* [unique,case(2)] */
218         struct srvsvc_NetSessCtr10 *ctr10;/* [unique,case(10)] */
219         struct srvsvc_NetSessCtr502 *ctr502;/* [unique,case(502)] */
220 };
221
222 struct srvsvc_NetSessInfoCtr {
223         uint32_t level;
224         union srvsvc_NetSessCtr ctr;/* [switch_is(level)] */
225 };
226
227 enum srvsvc_ShareType
228 #ifndef USE_UINT_ENUMS
229  {
230         STYPE_DISKTREE=0,
231         STYPE_DISKTREE_TEMPORARY=STYPE_DISKTREE|STYPE_TEMPORARY,
232         STYPE_DISKTREE_HIDDEN=STYPE_DISKTREE|STYPE_HIDDEN,
233         STYPE_PRINTQ=1,
234         STYPE_PRINTQ_TEMPORARY=STYPE_PRINTQ|STYPE_TEMPORARY,
235         STYPE_PRINTQ_HIDDEN=STYPE_PRINTQ|STYPE_HIDDEN,
236         STYPE_DEVICE=2,
237         STYPE_DEVICE_TEMPORARY=STYPE_DEVICE|STYPE_TEMPORARY,
238         STYPE_DEVICE_HIDDEN=STYPE_DEVICE|STYPE_HIDDEN,
239         STYPE_IPC=3,
240         STYPE_IPC_TEMPORARY=STYPE_IPC|STYPE_TEMPORARY,
241         STYPE_IPC_HIDDEN=STYPE_IPC|STYPE_HIDDEN
242 }
243 #else
244  { __donnot_use_enum_srvsvc_ShareType=0x7FFFFFFF}
245 #define STYPE_DISKTREE ( 0 )
246 #define STYPE_DISKTREE_TEMPORARY ( STYPE_DISKTREE|STYPE_TEMPORARY )
247 #define STYPE_DISKTREE_HIDDEN ( STYPE_DISKTREE|STYPE_HIDDEN )
248 #define STYPE_PRINTQ ( 1 )
249 #define STYPE_PRINTQ_TEMPORARY ( STYPE_PRINTQ|STYPE_TEMPORARY )
250 #define STYPE_PRINTQ_HIDDEN ( STYPE_PRINTQ|STYPE_HIDDEN )
251 #define STYPE_DEVICE ( 2 )
252 #define STYPE_DEVICE_TEMPORARY ( STYPE_DEVICE|STYPE_TEMPORARY )
253 #define STYPE_DEVICE_HIDDEN ( STYPE_DEVICE|STYPE_HIDDEN )
254 #define STYPE_IPC ( 3 )
255 #define STYPE_IPC_TEMPORARY ( STYPE_IPC|STYPE_TEMPORARY )
256 #define STYPE_IPC_HIDDEN ( STYPE_IPC|STYPE_HIDDEN )
257 #endif
258 ;
259
260 struct srvsvc_NetShareInfo0 {
261         const char *name;/* [unique,charset(UTF16)] */
262 };
263
264 struct srvsvc_NetShareCtr0 {
265         uint32_t count;
266         struct srvsvc_NetShareInfo0 *array;/* [unique,size_is(count)] */
267 };
268
269 struct srvsvc_NetShareInfo1 {
270         const char *name;/* [unique,charset(UTF16)] */
271         enum srvsvc_ShareType type;
272         const char *comment;/* [unique,charset(UTF16)] */
273 };
274
275 struct srvsvc_NetShareCtr1 {
276         uint32_t count;
277         struct srvsvc_NetShareInfo1 *array;/* [unique,size_is(count)] */
278 };
279
280 struct srvsvc_NetShareInfo2 {
281         const char *name;/* [unique,charset(UTF16)] */
282         enum srvsvc_ShareType type;
283         const char *comment;/* [unique,charset(UTF16)] */
284         uint32_t permissions;
285         uint32_t max_users;
286         uint32_t current_users;
287         const char *path;/* [unique,charset(UTF16)] */
288         const char *password;/* [unique,charset(UTF16)] */
289 };
290
291 struct srvsvc_NetShareCtr2 {
292         uint32_t count;
293         struct srvsvc_NetShareInfo2 *array;/* [unique,size_is(count)] */
294 };
295
296 struct srvsvc_NetShareInfo501 {
297         const char *name;/* [unique,charset(UTF16)] */
298         enum srvsvc_ShareType type;
299         const char *comment;/* [unique,charset(UTF16)] */
300         uint32_t csc_policy;
301 };
302
303 struct srvsvc_NetShareCtr501 {
304         uint32_t count;
305         struct srvsvc_NetShareInfo501 *array;/* [unique,size_is(count)] */
306 };
307
308 struct srvsvc_NetShareInfo502 {
309         const char *name;/* [unique,charset(UTF16)] */
310         enum srvsvc_ShareType type;
311         const char *comment;/* [unique,charset(UTF16)] */
312         uint32_t permissions;
313         int32_t max_users;
314         uint32_t current_users;
315         const char *path;/* [unique,charset(UTF16)] */
316         const char *password;/* [unique,charset(UTF16)] */
317         uint32_t unknown;
318         struct security_descriptor *sd;/* [unique,subcontext(4)] */
319 };
320
321 struct srvsvc_NetShareCtr502 {
322         uint32_t count;
323         struct srvsvc_NetShareInfo502 *array;/* [unique,size_is(count)] */
324 };
325
326 struct srvsvc_NetShareInfo1004 {
327         const char *comment;/* [unique,charset(UTF16)] */
328 };
329
330 struct srvsvc_NetShareCtr1004 {
331         uint32_t count;
332         struct srvsvc_NetShareInfo1004 *array;/* [unique,size_is(count)] */
333 };
334
335 /* bitmap NetShareInfo1005Flags */
336 #define SHARE_1005_IN_DFS ( 0x00000001 )
337 #define SHARE_1005_DFS_ROOT ( 0x00000002 )
338
339 struct srvsvc_NetShareInfo1005 {
340         uint32_t dfs_flags;
341 };
342
343 struct srvsvc_NetShareCtr1005 {
344         uint32_t count;
345         struct srvsvc_NetShareInfo1005 *array;/* [unique,size_is(count)] */
346 };
347
348 struct srvsvc_NetShareInfo1006 {
349         int32_t max_users;
350 };
351
352 struct srvsvc_NetShareCtr1006 {
353         uint32_t count;
354         struct srvsvc_NetShareInfo1006 *array;/* [unique,size_is(count)] */
355 };
356
357 struct srvsvc_NetShareInfo1007 {
358         uint32_t flags;
359         const char *alternate_directory_name;/* [unique,charset(UTF16)] */
360 };
361
362 struct srvsvc_NetShareCtr1007 {
363         uint32_t count;
364         struct srvsvc_NetShareInfo1007 *array;/* [unique,size_is(count)] */
365 };
366
367 struct srvsvc_NetShareCtr1501 {
368         uint32_t count;
369         struct sec_desc_buf *array;/* [unique,size_is(count)] */
370 };
371
372 union srvsvc_NetShareInfo {
373         struct srvsvc_NetShareInfo0 *info0;/* [unique,case(0)] */
374         struct srvsvc_NetShareInfo1 *info1;/* [unique,case] */
375         struct srvsvc_NetShareInfo2 *info2;/* [unique,case(2)] */
376         struct srvsvc_NetShareInfo501 *info501;/* [unique,case(501)] */
377         struct srvsvc_NetShareInfo502 *info502;/* [unique,case(502)] */
378         struct srvsvc_NetShareInfo1004 *info1004;/* [unique,case(1004)] */
379         struct srvsvc_NetShareInfo1005 *info1005;/* [unique,case(1005)] */
380         struct srvsvc_NetShareInfo1006 *info1006;/* [unique,case(1006)] */
381         struct srvsvc_NetShareInfo1007 *info1007;/* [unique,case(1007)] */
382         struct sec_desc_buf *info1501;/* [unique,case(1501)] */
383 };
384
385 union srvsvc_NetShareCtr {
386         struct srvsvc_NetShareCtr0 *ctr0;/* [unique,case(0)] */
387         struct srvsvc_NetShareCtr1 *ctr1;/* [unique,case] */
388         struct srvsvc_NetShareCtr2 *ctr2;/* [unique,case(2)] */
389         struct srvsvc_NetShareCtr501 *ctr501;/* [unique,case(501)] */
390         struct srvsvc_NetShareCtr502 *ctr502;/* [unique,case(502)] */
391         struct srvsvc_NetShareCtr1004 *ctr1004;/* [unique,case(1004)] */
392         struct srvsvc_NetShareCtr1005 *ctr1005;/* [unique,case(1005)] */
393         struct srvsvc_NetShareCtr1006 *ctr1006;/* [unique,case(1006)] */
394         struct srvsvc_NetShareCtr1007 *ctr1007;/* [unique,case(1007)] */
395         struct srvsvc_NetShareCtr1501 *ctr1501;/* [unique,case(1501)] */
396 };
397
398 struct srvsvc_NetShareInfoCtr {
399         uint32_t level;
400         union srvsvc_NetShareCtr ctr;/* [switch_is(level)] */
401 };
402
403 enum srvsvc_PlatformId
404 #ifndef USE_UINT_ENUMS
405  {
406         PLATFORM_ID_DOS=300,
407         PLATFORM_ID_OS2=400,
408         PLATFORM_ID_NT=500,
409         PLATFORM_ID_OSF=600,
410         PLATFORM_ID_VMS=700
411 }
412 #else
413  { __donnot_use_enum_srvsvc_PlatformId=0x7FFFFFFF}
414 #define PLATFORM_ID_DOS ( 300 )
415 #define PLATFORM_ID_OS2 ( 400 )
416 #define PLATFORM_ID_NT ( 500 )
417 #define PLATFORM_ID_OSF ( 600 )
418 #define PLATFORM_ID_VMS ( 700 )
419 #endif
420 ;
421
422 struct srvsvc_NetSrvInfo100 {
423         enum srvsvc_PlatformId platform_id;
424         const char *server_name;/* [unique,charset(UTF16)] */
425 };
426
427 struct srvsvc_NetSrvInfo101 {
428         enum srvsvc_PlatformId platform_id;
429         const char *server_name;/* [unique,charset(UTF16)] */
430         uint32_t version_major;
431         uint32_t version_minor;
432         uint32_t server_type;
433         const char *comment;/* [unique,charset(UTF16)] */
434 };
435
436 struct srvsvc_NetSrvInfo102 {
437         enum srvsvc_PlatformId platform_id;
438         const char *server_name;/* [unique,charset(UTF16)] */
439         uint32_t version_major;
440         uint32_t version_minor;
441         uint32_t server_type;
442         const char *comment;/* [unique,charset(UTF16)] */
443         uint32_t users;
444         uint32_t disc;
445         uint32_t hidden;
446         uint32_t announce;
447         uint32_t anndelta;
448         uint32_t licenses;
449         const char *userpath;/* [unique,charset(UTF16)] */
450 };
451
452 struct srvsvc_NetSrvInfo402 {
453         uint32_t ulist_mtime;
454         uint32_t glist_mtime;
455         uint32_t alist_mtime;
456         const char *alerts;/* [unique,charset(UTF16)] */
457         uint32_t security;
458         uint32_t numadmin;
459         uint32_t lanmask;
460         const char *guestaccount;/* [unique,charset(UTF16)] */
461         uint32_t chdevs;
462         uint32_t chdevqs;
463         uint32_t chdevjobs;
464         uint32_t connections;
465         uint32_t shares;
466         uint32_t openfiles;
467         uint32_t sessopen;
468         uint32_t sesssvc;
469         uint32_t sessreqs;
470         uint32_t opensearch;
471         uint32_t activelocks;
472         uint32_t sizereqbufs;
473         uint32_t numbigbufs;
474         uint32_t numfiletasks;
475         uint32_t alertsched;
476         uint32_t erroralert;
477         uint32_t logonalert;
478         uint32_t accessalert;
479         uint32_t diskalert;
480         uint32_t netioalert;
481         uint32_t maxaudits;
482         const char *srvheuristics;/* [unique,charset(UTF16)] */
483 };
484
485 struct srvsvc_NetSrvInfo403 {
486         uint32_t ulist_mtime;
487         uint32_t glist_mtime;
488         uint32_t alist_mtime;
489         const char *alerts;/* [unique,charset(UTF16)] */
490         uint32_t security;
491         uint32_t numadmin;
492         uint32_t lanmask;
493         const char *guestaccount;/* [unique,charset(UTF16)] */
494         uint32_t chdevs;
495         uint32_t chdevqs;
496         uint32_t chdevjobs;
497         uint32_t connections;
498         uint32_t shares;
499         uint32_t openfiles;
500         uint32_t sessopen;
501         uint32_t sesssvc;
502         uint32_t sessreqs;
503         uint32_t opensearch;
504         uint32_t activelocks;
505         uint32_t sizereqbufs;
506         uint32_t numbigbufs;
507         uint32_t numfiletasks;
508         uint32_t alertsched;
509         uint32_t eroralert;
510         uint32_t logonalert;
511         uint32_t accessalert;
512         uint32_t diskalert;
513         uint32_t netioalert;
514         uint32_t maxaudits;
515         const char *srvheuristics;/* [unique,charset(UTF16)] */
516         uint32_t auditedevents;
517         uint32_t auditprofile;
518         const char *autopath;/* [unique,charset(UTF16)] */
519 };
520
521 struct srvsvc_NetSrvInfo502 {
522         uint32_t sessopen;
523         uint32_t sesssvc;
524         uint32_t opensearch;
525         uint32_t sizereqbufs;
526         uint32_t initworkitems;
527         uint32_t maxworkitems;
528         uint32_t rawworkitems;
529         uint32_t irpstacksize;
530         uint32_t maxrawbuflen;
531         uint32_t sessusers;
532         uint32_t sessconns;
533         uint32_t maxpagedmemoryusage;
534         uint32_t maxnonpagedmemoryusage;
535         uint32_t enablesoftcompat;
536         uint32_t enableforcedlogoff;
537         uint32_t timesource;
538         uint32_t acceptdownlevelapis;
539         uint32_t lmannounce;
540 };
541
542 struct srvsvc_NetSrvInfo503 {
543         uint32_t sessopen;
544         uint32_t sesssvc;
545         uint32_t opensearch;
546         uint32_t sizereqbufs;
547         uint32_t initworkitems;
548         uint32_t maxworkitems;
549         uint32_t rawworkitems;
550         uint32_t irpstacksize;
551         uint32_t maxrawbuflen;
552         uint32_t sessusers;
553         uint32_t sessconns;
554         uint32_t maxpagedmemoryusage;
555         uint32_t maxnonpagedmemoryusage;
556         uint32_t enablesoftcompat;
557         uint32_t enableforcedlogoff;
558         uint32_t timesource;
559         uint32_t acceptdownlevelapis;
560         uint32_t lmannounce;
561         const char *domain;/* [unique,charset(UTF16)] */
562         uint32_t maxcopyreadlen;
563         uint32_t maxcopywritelen;
564         uint32_t minkeepsearch;
565         uint32_t maxkeepsearch;
566         uint32_t minkeepcomplsearch;
567         uint32_t maxkeepcomplsearch;
568         uint32_t threadcountadd;
569         uint32_t numlockthreads;
570         uint32_t scavtimeout;
571         uint32_t minrcvqueue;
572         uint32_t minfreeworkitems;
573         uint32_t xactmemsize;
574         uint32_t threadpriority;
575         uint32_t maxmpxct;
576         uint32_t oplockbreakwait;
577         uint32_t oplockbreakresponsewait;
578         uint32_t enableoplocks;
579         uint32_t enableoplockforceclose;
580         uint32_t enablefcbopens;
581         uint32_t enableraw;
582         uint32_t enablesharednetdrives;
583         uint32_t minfreeconnections;
584         uint32_t maxfreeconnections;
585 };
586
587 struct srvsvc_NetSrvInfo599 {
588         uint32_t sessopen;
589         uint32_t sesssvc;
590         uint32_t opensearch;
591         uint32_t sizereqbufs;
592         uint32_t initworkitems;
593         uint32_t maxworkitems;
594         uint32_t rawworkitems;
595         uint32_t irpstacksize;
596         uint32_t maxrawbuflen;
597         uint32_t sessusers;
598         uint32_t sessconns;
599         uint32_t maxpagedmemoryusage;
600         uint32_t maxnonpagedmemoryusage;
601         uint32_t enablesoftcompat;
602         uint32_t enableforcedlogoff;
603         uint32_t timesource;
604         uint32_t acceptdownlevelapis;
605         uint32_t lmannounce;
606         const char *domain;/* [unique,charset(UTF16)] */
607         uint32_t maxcopyreadlen;
608         uint32_t maxcopywritelen;
609         uint32_t minkeepsearch;
610         uint32_t minkeepcomplsearch;
611         uint32_t maxkeepcomplsearch;
612         uint32_t threadcountadd;
613         uint32_t numlockthreads;
614         uint32_t scavtimeout;
615         uint32_t minrcvqueue;
616         uint32_t minfreeworkitems;
617         uint32_t xactmemsize;
618         uint32_t threadpriority;
619         uint32_t maxmpxct;
620         uint32_t oplockbreakwait;
621         uint32_t oplockbreakresponsewait;
622         uint32_t enableoplocks;
623         uint32_t enableoplockforceclose;
624         uint32_t enablefcbopens;
625         uint32_t enableraw;
626         uint32_t enablesharednetdrives;
627         uint32_t minfreeconnections;
628         uint32_t maxfreeconnections;
629         uint32_t initsesstable;
630         uint32_t initconntable;
631         uint32_t initfiletable;
632         uint32_t initsearchtable;
633         uint32_t alertsched;
634         uint32_t errortreshold;
635         uint32_t networkerrortreshold;
636         uint32_t diskspacetreshold;
637         uint32_t reserved;
638         uint32_t maxlinkdelay;
639         uint32_t minlinkthroughput;
640         uint32_t linkinfovalidtime;
641         uint32_t scavqosinfoupdatetime;
642         uint32_t maxworkitemidletime;
643 };
644
645 struct srvsvc_NetSrvInfo1005 {
646         const char *comment;/* [unique,charset(UTF16)] */
647 };
648
649 struct srvsvc_NetSrvInfo1010 {
650         uint32_t disc;
651 };
652
653 struct srvsvc_NetSrvInfo1016 {
654         uint32_t hidden;
655 };
656
657 struct srvsvc_NetSrvInfo1017 {
658         uint32_t announce;
659 };
660
661 struct srvsvc_NetSrvInfo1018 {
662         uint32_t anndelta;
663 };
664
665 struct srvsvc_NetSrvInfo1107 {
666         uint32_t users;
667 };
668
669 struct srvsvc_NetSrvInfo1501 {
670         uint32_t sessopens;
671 };
672
673 struct srvsvc_NetSrvInfo1502 {
674         uint32_t sessvcs;
675 };
676
677 struct srvsvc_NetSrvInfo1503 {
678         uint32_t opensearch;
679 };
680
681 struct srvsvc_NetSrvInfo1506 {
682         uint32_t maxworkitems;
683 };
684
685 struct srvsvc_NetSrvInfo1509 {
686         uint32_t maxrawbuflen;
687 };
688
689 struct srvsvc_NetSrvInfo1510 {
690         uint32_t sessusers;
691 };
692
693 struct srvsvc_NetSrvInfo1511 {
694         uint32_t sesscons;
695 };
696
697 struct srvsvc_NetSrvInfo1512 {
698         uint32_t maxnonpagedmemoryusage;
699 };
700
701 struct srvsvc_NetSrvInfo1513 {
702         uint32_t maxpagedmemoryusage;
703 };
704
705 struct srvsvc_NetSrvInfo1514 {
706         uint32_t enablesoftcompat;
707 };
708
709 struct srvsvc_NetSrvInfo1515 {
710         uint32_t enableforcedlogoff;
711 };
712
713 struct srvsvc_NetSrvInfo1516 {
714         uint32_t timesource;
715 };
716
717 struct srvsvc_NetSrvInfo1518 {
718         uint32_t lmannounce;
719 };
720
721 struct srvsvc_NetSrvInfo1520 {
722         uint32_t maxcopyreadlen;
723 };
724
725 struct srvsvc_NetSrvInfo1521 {
726         uint32_t maxcopywritelen;
727 };
728
729 struct srvsvc_NetSrvInfo1522 {
730         uint32_t minkeepsearch;
731 };
732
733 struct srvsvc_NetSrvInfo1523 {
734         uint32_t maxkeepsearch;
735 };
736
737 struct srvsvc_NetSrvInfo1524 {
738         uint32_t minkeepcomplsearch;
739 };
740
741 struct srvsvc_NetSrvInfo1525 {
742         uint32_t maxkeepcomplsearch;
743 };
744
745 struct srvsvc_NetSrvInfo1528 {
746         uint32_t scavtimeout;
747 };
748
749 struct srvsvc_NetSrvInfo1529 {
750         uint32_t minrcvqueue;
751 };
752
753 struct srvsvc_NetSrvInfo1530 {
754         uint32_t minfreeworkitems;
755 };
756
757 struct srvsvc_NetSrvInfo1533 {
758         uint32_t maxmpxct;
759 };
760
761 struct srvsvc_NetSrvInfo1534 {
762         uint32_t oplockbreakwait;
763 };
764
765 struct srvsvc_NetSrvInfo1535 {
766         uint32_t oplockbreakresponsewait;
767 };
768
769 struct srvsvc_NetSrvInfo1536 {
770         uint32_t enableoplocks;
771 };
772
773 struct srvsvc_NetSrvInfo1537 {
774         uint32_t enableoplockforceclose;
775 };
776
777 struct srvsvc_NetSrvInfo1538 {
778         uint32_t enablefcbopens;
779 };
780
781 struct srvsvc_NetSrvInfo1539 {
782         uint32_t enableraw;
783 };
784
785 struct srvsvc_NetSrvInfo1540 {
786         uint32_t enablesharednetdrives;
787 };
788
789 struct srvsvc_NetSrvInfo1541 {
790         uint32_t minfreeconnections;
791 };
792
793 struct srvsvc_NetSrvInfo1542 {
794         uint32_t maxfreeconnections;
795 };
796
797 struct srvsvc_NetSrvInfo1543 {
798         uint32_t initsesstable;
799 };
800
801 struct srvsvc_NetSrvInfo1544 {
802         uint32_t initconntable;
803 };
804
805 struct srvsvc_NetSrvInfo1545 {
806         uint32_t initfiletable;
807 };
808
809 struct srvsvc_NetSrvInfo1546 {
810         uint32_t initsearchtable;
811 };
812
813 struct srvsvc_NetSrvInfo1547 {
814         uint32_t alertsched;
815 };
816
817 struct srvsvc_NetSrvInfo1548 {
818         uint32_t errortreshold;
819 };
820
821 struct srvsvc_NetSrvInfo1549 {
822         uint32_t networkerrortreshold;
823 };
824
825 struct srvsvc_NetSrvInfo1550 {
826         uint32_t diskspacetreshold;
827 };
828
829 struct srvsvc_NetSrvInfo1552 {
830         uint32_t maxlinkdelay;
831 };
832
833 struct srvsvc_NetSrvInfo1553 {
834         uint32_t minlinkthroughput;
835 };
836
837 struct srvsvc_NetSrvInfo1554 {
838         uint32_t linkinfovalidtime;
839 };
840
841 struct srvsvc_NetSrvInfo1555 {
842         uint32_t scavqosinfoupdatetime;
843 };
844
845 struct srvsvc_NetSrvInfo1556 {
846         uint32_t maxworkitemidletime;
847 };
848
849 union srvsvc_NetSrvInfo {
850         struct srvsvc_NetSrvInfo100 *info100;/* [unique,case(100)] */
851         struct srvsvc_NetSrvInfo101 *info101;/* [unique,case(101)] */
852         struct srvsvc_NetSrvInfo102 *info102;/* [unique,case(102)] */
853         struct srvsvc_NetSrvInfo402 *info402;/* [unique,case(402)] */
854         struct srvsvc_NetSrvInfo403 *info403;/* [unique,case(403)] */
855         struct srvsvc_NetSrvInfo502 *info502;/* [unique,case(502)] */
856         struct srvsvc_NetSrvInfo503 *info503;/* [unique,case(503)] */
857         struct srvsvc_NetSrvInfo599 *info599;/* [unique,case(599)] */
858         struct srvsvc_NetSrvInfo1005 *info1005;/* [unique,case(1005)] */
859         struct srvsvc_NetSrvInfo1010 *info1010;/* [unique,case(1010)] */
860         struct srvsvc_NetSrvInfo1016 *info1016;/* [unique,case(1016)] */
861         struct srvsvc_NetSrvInfo1017 *info1017;/* [unique,case(1017)] */
862         struct srvsvc_NetSrvInfo1018 *info1018;/* [unique,case(1018)] */
863         struct srvsvc_NetSrvInfo1107 *info1107;/* [unique,case(1107)] */
864         struct srvsvc_NetSrvInfo1501 *info1501;/* [unique,case(1501)] */
865         struct srvsvc_NetSrvInfo1502 *info1502;/* [unique,case(1502)] */
866         struct srvsvc_NetSrvInfo1503 *info1503;/* [unique,case(1503)] */
867         struct srvsvc_NetSrvInfo1506 *info1506;/* [unique,case(1506)] */
868         struct srvsvc_NetSrvInfo1509 *info1509;/* [unique,case(1509)] */
869         struct srvsvc_NetSrvInfo1510 *info1510;/* [unique,case(1510)] */
870         struct srvsvc_NetSrvInfo1511 *info1511;/* [unique,case(1511)] */
871         struct srvsvc_NetSrvInfo1512 *info1512;/* [unique,case(1512)] */
872         struct srvsvc_NetSrvInfo1513 *info1513;/* [unique,case(1513)] */
873         struct srvsvc_NetSrvInfo1514 *info1514;/* [unique,case(1514)] */
874         struct srvsvc_NetSrvInfo1515 *info1515;/* [unique,case(1515)] */
875         struct srvsvc_NetSrvInfo1516 *info1516;/* [unique,case(1516)] */
876         struct srvsvc_NetSrvInfo1518 *info1518;/* [unique,case(1518)] */
877         struct srvsvc_NetSrvInfo1520 *info1520;/* [unique,case(1520)] */
878         struct srvsvc_NetSrvInfo1521 *info1521;/* [unique,case(1521)] */
879         struct srvsvc_NetSrvInfo1522 *info1522;/* [unique,case(1522)] */
880         struct srvsvc_NetSrvInfo1523 *info1523;/* [unique,case(1523)] */
881         struct srvsvc_NetSrvInfo1524 *info1524;/* [unique,case(1524)] */
882         struct srvsvc_NetSrvInfo1525 *info1525;/* [unique,case(1525)] */
883         struct srvsvc_NetSrvInfo1528 *info1528;/* [unique,case(1528)] */
884         struct srvsvc_NetSrvInfo1529 *info1529;/* [unique,case(1529)] */
885         struct srvsvc_NetSrvInfo1530 *info1530;/* [unique,case(1530)] */
886         struct srvsvc_NetSrvInfo1533 *info1533;/* [unique,case(1533)] */
887         struct srvsvc_NetSrvInfo1534 *info1534;/* [unique,case(1534)] */
888         struct srvsvc_NetSrvInfo1535 *info1535;/* [unique,case(1535)] */
889         struct srvsvc_NetSrvInfo1536 *info1536;/* [unique,case(1536)] */
890         struct srvsvc_NetSrvInfo1537 *info1537;/* [unique,case(1537)] */
891         struct srvsvc_NetSrvInfo1538 *info1538;/* [unique,case(1538)] */
892         struct srvsvc_NetSrvInfo1539 *info1539;/* [unique,case(1539)] */
893         struct srvsvc_NetSrvInfo1540 *info1540;/* [unique,case(1540)] */
894         struct srvsvc_NetSrvInfo1541 *info1541;/* [unique,case(1541)] */
895         struct srvsvc_NetSrvInfo1542 *info1542;/* [unique,case(1542)] */
896         struct srvsvc_NetSrvInfo1543 *info1543;/* [unique,case(1543)] */
897         struct srvsvc_NetSrvInfo1544 *info1544;/* [unique,case(1544)] */
898         struct srvsvc_NetSrvInfo1545 *info1545;/* [unique,case(1545)] */
899         struct srvsvc_NetSrvInfo1546 *info1546;/* [unique,case(1546)] */
900         struct srvsvc_NetSrvInfo1547 *info1547;/* [unique,case(1547)] */
901         struct srvsvc_NetSrvInfo1548 *info1548;/* [unique,case(1548)] */
902         struct srvsvc_NetSrvInfo1549 *info1549;/* [unique,case(1549)] */
903         struct srvsvc_NetSrvInfo1550 *info1550;/* [unique,case(1550)] */
904         struct srvsvc_NetSrvInfo1552 *info1552;/* [unique,case(1552)] */
905         struct srvsvc_NetSrvInfo1553 *info1553;/* [unique,case(1553)] */
906         struct srvsvc_NetSrvInfo1554 *info1554;/* [unique,case(1554)] */
907         struct srvsvc_NetSrvInfo1555 *info1555;/* [unique,case(1555)] */
908         struct srvsvc_NetSrvInfo1556 *info1556;/* [unique,case(1556)] */
909 };
910
911 struct srvsvc_NetDiskInfo0 {
912         const char * disk;/* [flag(LIBNDR_FLAG_STR_LEN4)] */
913 };
914
915 struct srvsvc_NetDiskInfo {
916         uint32_t count;
917         struct srvsvc_NetDiskInfo0 *disks;/* [unique,length_is(count),size_is(count)] */
918 };
919
920 struct srvsvc_Statistics {
921         uint32_t start;
922         uint32_t fopens;
923         uint32_t devopens;
924         uint32_t jobsqueued;
925         uint32_t sopens;
926         uint32_t stimeouts;
927         uint32_t serrorout;
928         uint32_t pwerrors;
929         uint32_t permerrors;
930         uint32_t syserrors;
931         uint32_t bytessent_low;
932         uint32_t bytessent_high;
933         uint32_t bytesrcvd_low;
934         uint32_t bytesrcvd_high;
935         uint32_t avresponse;
936         uint32_t reqbufneed;
937         uint32_t bigbufneed;
938 };
939
940 struct srvsvc_NetTransportInfo0 {
941         uint32_t vcs;
942         const char *name;/* [unique,charset(UTF16)] */
943         uint8_t *addr;/* [unique,size_is(addr_len)] */
944         uint32_t addr_len;
945         const char *net_addr;/* [unique,charset(UTF16)] */
946 };
947
948 struct srvsvc_NetTransportCtr0 {
949         uint32_t count;
950         struct srvsvc_NetTransportInfo0 *array;/* [unique,size_is(count)] */
951 };
952
953 struct srvsvc_NetTransportInfo1 {
954         uint32_t vcs;
955         const char *name;/* [unique,charset(UTF16)] */
956         uint8_t *addr;/* [unique,size_is(addr_len)] */
957         uint32_t addr_len;
958         const char *net_addr;/* [unique,charset(UTF16)] */
959         const char *domain;/* [unique,charset(UTF16)] */
960 };
961
962 struct srvsvc_NetTransportCtr1 {
963         uint32_t count;
964         struct srvsvc_NetTransportInfo1 *array;/* [unique,size_is(count)] */
965 };
966
967 struct srvsvc_NetTransportInfo2 {
968         uint32_t vcs;
969         const char *name;/* [unique,charset(UTF16)] */
970         uint8_t *addr;/* [unique,size_is(addr_len)] */
971         uint32_t addr_len;
972         const char *net_addr;/* [unique,charset(UTF16)] */
973         const char *domain;/* [unique,charset(UTF16)] */
974         uint32_t unknown;
975 };
976
977 struct srvsvc_NetTransportCtr2 {
978         uint32_t count;
979         struct srvsvc_NetTransportInfo2 *array;/* [unique,size_is(count)] */
980 };
981
982 struct srvsvc_NetTransportInfo3 {
983         uint32_t vcs;
984         const char *name;/* [unique,charset(UTF16)] */
985         uint8_t *addr;/* [unique,size_is(addr_len)] */
986         uint32_t addr_len;
987         const char *net_addr;/* [unique,charset(UTF16)] */
988         const char *domain;/* [unique,charset(UTF16)] */
989         uint32_t unknown1;
990         uint32_t unknown2;
991         uint8_t unknown3[256];
992 };
993
994 struct srvsvc_NetTransportCtr3 {
995         uint32_t count;
996         struct srvsvc_NetTransportInfo3 *array;/* [unique,size_is(count)] */
997 };
998
999 union srvsvc_NetTransportCtr {
1000         struct srvsvc_NetTransportCtr0 *ctr0;/* [unique,case(0)] */
1001         struct srvsvc_NetTransportCtr1 *ctr1;/* [unique,case] */
1002         struct srvsvc_NetTransportCtr2 *ctr2;/* [unique,case(2)] */
1003         struct srvsvc_NetTransportCtr3 *ctr3;/* [unique,case(3)] */
1004 };
1005
1006 struct srvsvc_NetRemoteTODInfo {
1007         uint32_t elapsed;
1008         uint32_t msecs;
1009         uint32_t hours;
1010         uint32_t mins;
1011         uint32_t secs;
1012         uint32_t hunds;
1013         int32_t timezone;
1014         uint32_t tinterval;
1015         uint32_t day;
1016         uint32_t month;
1017         uint32_t year;
1018         uint32_t weekday;
1019 };
1020
1021 union srvsvc_NetTransportInfo {
1022         struct srvsvc_NetTransportInfo0 info0;/* [case(0)] */
1023         struct srvsvc_NetTransportInfo1 info1;/* [case] */
1024         struct srvsvc_NetTransportInfo2 info2;/* [case(2)] */
1025         struct srvsvc_NetTransportInfo3 info3;/* [case(3)] */
1026 }/* [switch_type(uint32)] */;
1027
1028
1029 struct srvsvc_NetCharDevEnum {
1030         struct {
1031                 const char *server_unc;/* [unique,charset(UTF16)] */
1032                 uint32_t max_buffer;
1033                 uint32_t *level;/* [ref] */
1034                 union srvsvc_NetCharDevCtr *ctr;/* [ref,switch_is(*level)] */
1035                 uint32_t *resume_handle;/* [unique] */
1036         } in;
1037
1038         struct {
1039                 uint32_t *totalentries;/* [ref] */
1040                 uint32_t *level;/* [ref] */
1041                 union srvsvc_NetCharDevCtr *ctr;/* [ref,switch_is(*level)] */
1042                 uint32_t *resume_handle;/* [unique] */
1043                 WERROR result;
1044         } out;
1045
1046 };
1047
1048
1049 struct srvsvc_NetCharDevGetInfo {
1050         struct {
1051                 const char *server_unc;/* [unique,charset(UTF16)] */
1052                 const char *device_name;/* [charset(UTF16)] */
1053                 uint32_t level;
1054         } in;
1055
1056         struct {
1057                 union srvsvc_NetCharDevInfo *info;/* [ref,switch_is(level)] */
1058                 WERROR result;
1059         } out;
1060
1061 };
1062
1063
1064 struct srvsvc_NetCharDevControl {
1065         struct {
1066                 const char *server_unc;/* [unique,charset(UTF16)] */
1067                 const char *device_name;/* [charset(UTF16)] */
1068                 uint32_t opcode;
1069         } in;
1070
1071         struct {
1072                 WERROR result;
1073         } out;
1074
1075 };
1076
1077
1078 struct srvsvc_NetCharDevQEnum {
1079         struct {
1080                 const char *server_unc;/* [unique,charset(UTF16)] */
1081                 const char *user;/* [unique,charset(UTF16)] */
1082                 uint32_t max_buffer;
1083                 uint32_t *level;/* [ref] */
1084                 union srvsvc_NetCharDevQCtr *ctr;/* [ref,switch_is(*level)] */
1085                 uint32_t *resume_handle;/* [unique] */
1086         } in;
1087
1088         struct {
1089                 uint32_t *totalentries;/* [ref] */
1090                 uint32_t *level;/* [ref] */
1091                 union srvsvc_NetCharDevQCtr *ctr;/* [ref,switch_is(*level)] */
1092                 uint32_t *resume_handle;/* [unique] */
1093                 WERROR result;
1094         } out;
1095
1096 };
1097
1098
1099 struct srvsvc_NetCharDevQGetInfo {
1100         struct {
1101                 const char *server_unc;/* [unique,charset(UTF16)] */
1102                 const char *queue_name;/* [charset(UTF16)] */
1103                 const char *user;/* [charset(UTF16)] */
1104                 uint32_t level;
1105         } in;
1106
1107         struct {
1108                 union srvsvc_NetCharDevQInfo *info;/* [ref,switch_is(level)] */
1109                 WERROR result;
1110         } out;
1111
1112 };
1113
1114
1115 struct srvsvc_NetCharDevQSetInfo {
1116         struct {
1117                 const char *server_unc;/* [unique,charset(UTF16)] */
1118                 const char *queue_name;/* [charset(UTF16)] */
1119                 uint32_t level;
1120                 union srvsvc_NetCharDevQInfo info;/* [switch_is(level)] */
1121                 uint32_t *parm_error;/* [unique] */
1122         } in;
1123
1124         struct {
1125                 uint32_t *parm_error;/* [unique] */
1126                 WERROR result;
1127         } out;
1128
1129 };
1130
1131
1132 struct srvsvc_NetCharDevQPurge {
1133         struct {
1134                 const char *server_unc;/* [unique,charset(UTF16)] */
1135                 const char *queue_name;/* [charset(UTF16)] */
1136         } in;
1137
1138         struct {
1139                 WERROR result;
1140         } out;
1141
1142 };
1143
1144
1145 struct srvsvc_NetCharDevQPurgeSelf {
1146         struct {
1147                 const char *server_unc;/* [unique,charset(UTF16)] */
1148                 const char *queue_name;/* [charset(UTF16)] */
1149                 const char *computer_name;/* [charset(UTF16)] */
1150         } in;
1151
1152         struct {
1153                 WERROR result;
1154         } out;
1155
1156 };
1157
1158
1159 struct srvsvc_NetConnEnum {
1160         struct {
1161                 const char *server_unc;/* [unique,charset(UTF16)] */
1162                 const char *path;/* [unique,charset(UTF16)] */
1163                 uint32_t max_buffer;
1164                 struct srvsvc_NetConnInfoCtr *info_ctr;/* [ref] */
1165                 uint32_t *resume_handle;/* [unique] */
1166         } in;
1167
1168         struct {
1169                 uint32_t *totalentries;/* [ref] */
1170                 struct srvsvc_NetConnInfoCtr *info_ctr;/* [ref] */
1171                 uint32_t *resume_handle;/* [unique] */
1172                 WERROR result;
1173         } out;
1174
1175 };
1176
1177
1178 struct srvsvc_NetFileEnum {
1179         struct {
1180                 const char *server_unc;/* [unique,charset(UTF16)] */
1181                 const char *path;/* [unique,charset(UTF16)] */
1182                 const char *user;/* [unique,charset(UTF16)] */
1183                 uint32_t max_buffer;
1184                 struct srvsvc_NetFileInfoCtr *info_ctr;/* [ref] */
1185                 uint32_t *resume_handle;/* [unique] */
1186         } in;
1187
1188         struct {
1189                 uint32_t *totalentries;/* [ref] */
1190                 struct srvsvc_NetFileInfoCtr *info_ctr;/* [ref] */
1191                 uint32_t *resume_handle;/* [unique] */
1192                 WERROR result;
1193         } out;
1194
1195 };
1196
1197
1198 struct srvsvc_NetFileGetInfo {
1199         struct {
1200                 const char *server_unc;/* [unique,charset(UTF16)] */
1201                 uint32_t fid;
1202                 uint32_t level;
1203         } in;
1204
1205         struct {
1206                 union srvsvc_NetFileInfo *info;/* [ref,switch_is(level)] */
1207                 WERROR result;
1208         } out;
1209
1210 };
1211
1212
1213 struct srvsvc_NetFileClose {
1214         struct {
1215                 const char *server_unc;/* [unique,charset(UTF16)] */
1216                 uint32_t fid;
1217         } in;
1218
1219         struct {
1220                 WERROR result;
1221         } out;
1222
1223 };
1224
1225
1226 struct srvsvc_NetSessEnum {
1227         struct {
1228                 const char *server_unc;/* [unique,charset(UTF16)] */
1229                 const char *client;/* [unique,charset(UTF16)] */
1230                 const char *user;/* [unique,charset(UTF16)] */
1231                 uint32_t max_buffer;
1232                 struct srvsvc_NetSessInfoCtr *info_ctr;/* [ref] */
1233                 uint32_t *resume_handle;/* [unique] */
1234         } in;
1235
1236         struct {
1237                 uint32_t *totalentries;/* [ref] */
1238                 struct srvsvc_NetSessInfoCtr *info_ctr;/* [ref] */
1239                 uint32_t *resume_handle;/* [unique] */
1240                 WERROR result;
1241         } out;
1242
1243 };
1244
1245
1246 struct srvsvc_NetSessDel {
1247         struct {
1248                 const char *server_unc;/* [unique,charset(UTF16)] */
1249                 const char *client;/* [unique,charset(UTF16)] */
1250                 const char *user;/* [unique,charset(UTF16)] */
1251         } in;
1252
1253         struct {
1254                 WERROR result;
1255         } out;
1256
1257 };
1258
1259
1260 struct srvsvc_NetShareAdd {
1261         struct {
1262                 const char *server_unc;/* [unique,charset(UTF16)] */
1263                 uint32_t level;
1264                 union srvsvc_NetShareInfo *info;/* [ref,switch_is(level)] */
1265                 uint32_t *parm_error;/* [unique] */
1266         } in;
1267
1268         struct {
1269                 uint32_t *parm_error;/* [unique] */
1270                 WERROR result;
1271         } out;
1272
1273 };
1274
1275
1276 struct srvsvc_NetShareEnumAll {
1277         struct {
1278                 const char *server_unc;/* [unique,charset(UTF16)] */
1279                 uint32_t max_buffer;
1280                 struct srvsvc_NetShareInfoCtr *info_ctr;/* [ref] */
1281                 uint32_t *resume_handle;/* [unique] */
1282         } in;
1283
1284         struct {
1285                 uint32_t *totalentries;/* [ref] */
1286                 struct srvsvc_NetShareInfoCtr *info_ctr;/* [ref] */
1287                 uint32_t *resume_handle;/* [unique] */
1288                 WERROR result;
1289         } out;
1290
1291 };
1292
1293
1294 struct srvsvc_NetShareGetInfo {
1295         struct {
1296                 const char *server_unc;/* [unique,charset(UTF16)] */
1297                 const char *share_name;/* [charset(UTF16)] */
1298                 uint32_t level;
1299         } in;
1300
1301         struct {
1302                 union srvsvc_NetShareInfo *info;/* [ref,switch_is(level)] */
1303                 WERROR result;
1304         } out;
1305
1306 };
1307
1308
1309 struct srvsvc_NetShareSetInfo {
1310         struct {
1311                 const char *server_unc;/* [unique,charset(UTF16)] */
1312                 const char *share_name;/* [charset(UTF16)] */
1313                 uint32_t level;
1314                 union srvsvc_NetShareInfo *info;/* [ref,switch_is(level)] */
1315                 uint32_t *parm_error;/* [unique] */
1316         } in;
1317
1318         struct {
1319                 uint32_t *parm_error;/* [unique] */
1320                 WERROR result;
1321         } out;
1322
1323 };
1324
1325
1326 struct srvsvc_NetShareDel {
1327         struct {
1328                 const char *server_unc;/* [unique,charset(UTF16)] */
1329                 const char *share_name;/* [charset(UTF16)] */
1330                 uint32_t reserved;
1331         } in;
1332
1333         struct {
1334                 WERROR result;
1335         } out;
1336
1337 };
1338
1339
1340 struct srvsvc_NetShareDelSticky {
1341         struct {
1342                 const char *server_unc;/* [unique,charset(UTF16)] */
1343                 const char *share_name;/* [charset(UTF16)] */
1344                 uint32_t reserved;
1345         } in;
1346
1347         struct {
1348                 WERROR result;
1349         } out;
1350
1351 };
1352
1353
1354 struct srvsvc_NetShareCheck {
1355         struct {
1356                 const char *server_unc;/* [unique,charset(UTF16)] */
1357                 const char *device_name;/* [charset(UTF16)] */
1358         } in;
1359
1360         struct {
1361                 enum srvsvc_ShareType *type;/* [ref] */
1362                 WERROR result;
1363         } out;
1364
1365 };
1366
1367
1368 struct srvsvc_NetSrvGetInfo {
1369         struct {
1370                 const char *server_unc;/* [unique,charset(UTF16)] */
1371                 uint32_t level;
1372         } in;
1373
1374         struct {
1375                 union srvsvc_NetSrvInfo *info;/* [ref,switch_is(level)] */
1376                 WERROR result;
1377         } out;
1378
1379 };
1380
1381
1382 struct srvsvc_NetSrvSetInfo {
1383         struct {
1384                 const char *server_unc;/* [unique,charset(UTF16)] */
1385                 uint32_t level;
1386                 union srvsvc_NetSrvInfo *info;/* [ref,switch_is(level)] */
1387                 uint32_t *parm_error;/* [unique] */
1388         } in;
1389
1390         struct {
1391                 uint32_t *parm_error;/* [unique] */
1392                 WERROR result;
1393         } out;
1394
1395 };
1396
1397
1398 struct srvsvc_NetDiskEnum {
1399         struct {
1400                 const char *server_unc;/* [unique,charset(UTF16)] */
1401                 uint32_t level;
1402                 uint32_t maxlen;
1403                 struct srvsvc_NetDiskInfo *info;/* [ref] */
1404                 uint32_t *resume_handle;/* [unique] */
1405         } in;
1406
1407         struct {
1408                 uint32_t *totalentries;/* [ref] */
1409                 struct srvsvc_NetDiskInfo *info;/* [ref] */
1410                 uint32_t *resume_handle;/* [unique] */
1411                 WERROR result;
1412         } out;
1413
1414 };
1415
1416
1417 struct srvsvc_NetServerStatisticsGet {
1418         struct {
1419                 const char *server_unc;/* [unique,charset(UTF16)] */
1420                 const char *service;/* [unique,charset(UTF16)] */
1421                 uint32_t level;
1422                 uint32_t options;
1423         } in;
1424
1425         struct {
1426                 struct srvsvc_Statistics *stats;/* [ref] */
1427                 WERROR result;
1428         } out;
1429
1430 };
1431
1432
1433 struct srvsvc_NetTransportAdd {
1434         struct {
1435                 const char *server_unc;/* [unique,charset(UTF16)] */
1436                 uint32_t level;
1437                 union srvsvc_NetTransportInfo info;/* [switch_is(level)] */
1438         } in;
1439
1440         struct {
1441                 WERROR result;
1442         } out;
1443
1444 };
1445
1446
1447 struct srvsvc_NetTransportEnum {
1448         struct {
1449                 const char *server_unc;/* [unique,charset(UTF16)] */
1450                 uint32_t max_buffer;
1451                 uint32_t *level;/* [ref] */
1452                 union srvsvc_NetTransportCtr *transports;/* [ref,switch_is(*level)] */
1453                 uint32_t *resume_handle;/* [unique] */
1454         } in;
1455
1456         struct {
1457                 uint32_t *totalentries;/* [ref] */
1458                 uint32_t *level;/* [ref] */
1459                 union srvsvc_NetTransportCtr *transports;/* [ref,switch_is(*level)] */
1460                 uint32_t *resume_handle;/* [unique] */
1461                 WERROR result;
1462         } out;
1463
1464 };
1465
1466
1467 struct srvsvc_NetTransportDel {
1468         struct {
1469                 const char *server_unc;/* [unique,charset(UTF16)] */
1470                 uint32_t unknown;
1471                 struct srvsvc_NetTransportInfo0 transport;
1472         } in;
1473
1474         struct {
1475                 WERROR result;
1476         } out;
1477
1478 };
1479
1480
1481 struct srvsvc_NetRemoteTOD {
1482         struct {
1483                 const char *server_unc;/* [unique,charset(UTF16)] */
1484         } in;
1485
1486         struct {
1487                 struct srvsvc_NetRemoteTODInfo **info;/* [ref] */
1488                 WERROR result;
1489         } out;
1490
1491 };
1492
1493
1494 struct srvsvc_NetSetServiceBits {
1495         struct {
1496                 const char *server_unc;/* [unique,charset(UTF16)] */
1497                 const char *transport;/* [unique,charset(UTF16)] */
1498                 uint32_t servicebits;
1499                 uint32_t updateimmediately;
1500         } in;
1501
1502         struct {
1503                 WERROR result;
1504         } out;
1505
1506 };
1507
1508
1509 struct srvsvc_NetPathType {
1510         struct {
1511                 const char *server_unc;/* [unique,charset(UTF16)] */
1512                 const char *path;/* [charset(UTF16)] */
1513                 uint32_t pathflags;
1514         } in;
1515
1516         struct {
1517                 uint32_t *pathtype;/* [ref] */
1518                 WERROR result;
1519         } out;
1520
1521 };
1522
1523
1524 struct srvsvc_NetPathCanonicalize {
1525         struct {
1526                 const char *server_unc;/* [unique,charset(UTF16)] */
1527                 const char *path;/* [charset(UTF16)] */
1528                 uint32_t maxbuf;
1529                 const char *prefix;/* [charset(UTF16)] */
1530                 uint32_t pathflags;
1531                 uint32_t *pathtype;/* [ref] */
1532         } in;
1533
1534         struct {
1535                 uint8_t *can_path;/* [size_is(maxbuf)] */
1536                 uint32_t *pathtype;/* [ref] */
1537                 WERROR result;
1538         } out;
1539
1540 };
1541
1542
1543 struct srvsvc_NetPathCompare {
1544         struct {
1545                 const char *server_unc;/* [unique,charset(UTF16)] */
1546                 const char *path1;/* [charset(UTF16)] */
1547                 const char *path2;/* [charset(UTF16)] */
1548                 uint32_t pathtype;
1549                 uint32_t pathflags;
1550         } in;
1551
1552         struct {
1553                 WERROR result;
1554         } out;
1555
1556 };
1557
1558
1559 struct srvsvc_NetNameValidate {
1560         struct {
1561                 const char *server_unc;/* [unique,charset(UTF16)] */
1562                 const char *name;/* [charset(UTF16)] */
1563                 uint32_t name_type;
1564                 uint32_t flags;
1565         } in;
1566
1567         struct {
1568                 WERROR result;
1569         } out;
1570
1571 };
1572
1573
1574 struct srvsvc_NETRPRNAMECANONICALIZE {
1575         struct {
1576                 WERROR result;
1577         } out;
1578
1579 };
1580
1581
1582 struct srvsvc_NetPRNameCompare {
1583         struct {
1584                 const char *server_unc;/* [unique,charset(UTF16)] */
1585                 const char *name1;/* [charset(UTF16)] */
1586                 const char *name2;/* [charset(UTF16)] */
1587                 uint32_t name_type;
1588                 uint32_t flags;
1589         } in;
1590
1591         struct {
1592                 WERROR result;
1593         } out;
1594
1595 };
1596
1597
1598 struct srvsvc_NetShareEnum {
1599         struct {
1600                 const char *server_unc;/* [unique,charset(UTF16)] */
1601                 uint32_t max_buffer;
1602                 struct srvsvc_NetShareInfoCtr *info_ctr;/* [ref] */
1603                 uint32_t *resume_handle;/* [unique] */
1604         } in;
1605
1606         struct {
1607                 uint32_t *totalentries;/* [ref] */
1608                 struct srvsvc_NetShareInfoCtr *info_ctr;/* [ref] */
1609                 uint32_t *resume_handle;/* [unique] */
1610                 WERROR result;
1611         } out;
1612
1613 };
1614
1615
1616 struct srvsvc_NetShareDelStart {
1617         struct {
1618                 const char *server_unc;/* [unique,charset(UTF16)] */
1619                 const char *share;/* [charset(UTF16)] */
1620                 uint32_t reserved;
1621         } in;
1622
1623         struct {
1624                 struct policy_handle *hnd;/* [unique] */
1625                 WERROR result;
1626         } out;
1627
1628 };
1629
1630
1631 struct srvsvc_NetShareDelCommit {
1632         struct {
1633                 struct policy_handle *hnd;/* [unique] */
1634         } in;
1635
1636         struct {
1637                 struct policy_handle *hnd;/* [unique] */
1638                 WERROR result;
1639         } out;
1640
1641 };
1642
1643
1644 struct srvsvc_NetGetFileSecurity {
1645         struct {
1646                 const char *server_unc;/* [unique,charset(UTF16)] */
1647                 const char *share;/* [unique,charset(UTF16)] */
1648                 const char *file;/* [charset(UTF16)] */
1649                 uint32_t securityinformation;
1650         } in;
1651
1652         struct {
1653                 struct sec_desc_buf **sd_buf;/* [ref] */
1654                 WERROR result;
1655         } out;
1656
1657 };
1658
1659
1660 struct srvsvc_NetSetFileSecurity {
1661         struct {
1662                 const char *server_unc;/* [unique,charset(UTF16)] */
1663                 const char *share;/* [unique,charset(UTF16)] */
1664                 const char *file;/* [charset(UTF16)] */
1665                 uint32_t securityinformation;
1666                 struct sec_desc_buf *sd_buf;/* [ref] */
1667         } in;
1668
1669         struct {
1670                 WERROR result;
1671         } out;
1672
1673 };
1674
1675
1676 struct srvsvc_NetServerTransportAddEx {
1677         struct {
1678                 const char *server_unc;/* [unique,charset(UTF16)] */
1679                 uint32_t level;
1680                 union srvsvc_NetTransportInfo info;/* [switch_is(level)] */
1681         } in;
1682
1683         struct {
1684                 WERROR result;
1685         } out;
1686
1687 };
1688
1689
1690 struct srvsvc_NetServerSetServiceBitsEx {
1691         struct {
1692                 const char *server_unc;/* [unique,charset(UTF16)] */
1693                 const char *emulated_server_unc;/* [unique,charset(UTF16)] */
1694                 const char *transport;/* [unique,charset(UTF16)] */
1695                 uint32_t servicebitsofinterest;
1696                 uint32_t servicebits;
1697                 uint32_t updateimmediately;
1698         } in;
1699
1700         struct {
1701                 WERROR result;
1702         } out;
1703
1704 };
1705
1706
1707 struct srvsvc_NETRDFSGETVERSION {
1708         struct {
1709                 WERROR result;
1710         } out;
1711
1712 };
1713
1714
1715 struct srvsvc_NETRDFSCREATELOCALPARTITION {
1716         struct {
1717                 WERROR result;
1718         } out;
1719
1720 };
1721
1722
1723 struct srvsvc_NETRDFSDELETELOCALPARTITION {
1724         struct {
1725                 WERROR result;
1726         } out;
1727
1728 };
1729
1730
1731 struct srvsvc_NETRDFSSETLOCALVOLUMESTATE {
1732         struct {
1733                 WERROR result;
1734         } out;
1735
1736 };
1737
1738
1739 struct srvsvc_NETRDFSSETSERVERINFO {
1740         struct {
1741                 WERROR result;
1742         } out;
1743
1744 };
1745
1746
1747 struct srvsvc_NETRDFSCREATEEXITPOINT {
1748         struct {
1749                 WERROR result;
1750         } out;
1751
1752 };
1753
1754
1755 struct srvsvc_NETRDFSDELETEEXITPOINT {
1756         struct {
1757                 WERROR result;
1758         } out;
1759
1760 };
1761
1762
1763 struct srvsvc_NETRDFSMODIFYPREFIX {
1764         struct {
1765                 WERROR result;
1766         } out;
1767
1768 };
1769
1770
1771 struct srvsvc_NETRDFSFIXLOCALVOLUME {
1772         struct {
1773                 WERROR result;
1774         } out;
1775
1776 };
1777
1778
1779 struct srvsvc_NETRDFSMANAGERREPORTSITEINFO {
1780         struct {
1781                 WERROR result;
1782         } out;
1783
1784 };
1785
1786
1787 struct srvsvc_NETRSERVERTRANSPORTDELEX {
1788         struct {
1789                 WERROR result;
1790         } out;
1791
1792 };
1793
1794 #endif /* _HEADER_srvsvc */