23a18331fe16efee5d2c4ec65992414d0680cfc9
[ira/wip.git] / source3 / librpc / gen_ndr / libnetapi.h
1 /* header auto-generated by pidl */
2
3 #include <stdint.h>
4
5 #define LIBNETAPI_LOCAL_SERVER(x) (!x || is_myname_or_ipaddr(x))
6 #ifndef MAXSUBAUTHS
7 #define MAXSUBAUTHS 15 /* max sub authorities in a SID */
8 #endif
9 #ifndef _HEADER_libnetapi
10 #define _HEADER_libnetapi
11
12 #define ERROR_MORE_DATA ( 234L )
13 #define USER_PRIV_GUEST ( 0 )
14 #define USER_PRIV_USER  ( 1 )
15 #define USER_PRIV_ADMIN ( 2 )
16 #define AF_OP_PRINT     ( 0x1 )
17 #define AF_OP_COMM      ( 0x2 )
18 #define AF_OP_SERVER    ( 0x4 )
19 #define AF_OP_ACCOUNTS  ( 0x8 )
20 #define AF_SETTABLE_BITS        ( (AF_OP_PRINT|AF_OP_COMM|AF_OP_SERVER|AF_OP_ACCOUNTS) )
21 #define USER_MAXSTORAGE_UNLIMITED       ( (uint32_t)-1L )
22 #define ENCRYPTED_PWLEN ( 16 )
23 #define FILTER_TEMP_DUPLICATE_ACCOUNT   ( 0x0001 )
24 #define FILTER_NORMAL_ACCOUNT   ( 0x0002 )
25 #define FILTER_INTERDOMAIN_TRUST_ACCOUNT        ( 0x0008 )
26 #define FILTER_WORKSTATION_TRUST_ACCOUNT        ( 0x0010 )
27 #define FILTER_SERVER_TRUST_ACCOUNT     ( 0x0020 )
28 #define LG_INCLUDE_INDIRECT     ( 0x0001 )
29 #define TIMEQ_FOREVER   ( (uint32_t)-1L )
30 #define CSC_MASK        ( 0x30 )
31 enum NET_API_STATUS
32 #ifndef USE_UINT_ENUMS
33  {
34         NERR_Success=0
35 }
36 #else
37  { __donnot_use_enum_NET_API_STATUS=0x7FFFFFFF}
38 #define NERR_Success ( 0 )
39 #endif
40 ;
41
42 struct domsid {
43         uint8_t sid_rev_num;
44         uint8_t num_auths;
45         uint8_t id_auth[6];
46         uint32_t *sub_auths;
47 };
48
49 /* bitmap NetJoinFlags */
50 #define NETSETUP_JOIN_DOMAIN ( 0x00000001 )
51 #define NETSETUP_ACCT_CREATE ( 0x00000002 )
52 #define NETSETUP_ACCT_DELETE ( 0x00000004 )
53 #define NETSETUP_WIN9X_UPGRADE ( 0x00000010 )
54 #define NETSETUP_DOMAIN_JOIN_IF_JOINED ( 0x00000020 )
55 #define NETSETUP_JOIN_UNSECURE ( 0x00000040 )
56 #define NETSETUP_MACHINE_PWD_PASSED ( 0x00000080 )
57 #define NETSETUP_DEFER_SPN_SET ( 0x00000100 )
58 #define NETSETUP_JOIN_DC_ACCOUNT ( 0x00000200 )
59 #define NETSETUP_JOIN_WITH_NEW_NAME ( 0x00000400 )
60 #define NETSETUP_INSTALL_INVOCATION ( 0x00040000 )
61 #define NETSETUP_IGNORE_UNSUPPORTED_FLAGS ( 0x10000000 )
62
63 enum NETSETUP_JOIN_STATUS
64 #ifndef USE_UINT_ENUMS
65  {
66         NetSetupUnknownStatus=0,
67         NetSetupUnjoined=1,
68         NetSetupWorkgroupName=2,
69         NetSetupDomainName=3
70 }
71 #else
72  { __donnot_use_enum_NETSETUP_JOIN_STATUS=0x7FFFFFFF}
73 #define NetSetupUnknownStatus ( 0 )
74 #define NetSetupUnjoined ( 1 )
75 #define NetSetupWorkgroupName ( 2 )
76 #define NetSetupDomainName ( 3 )
77 #endif
78 ;
79
80 struct SERVER_INFO_100 {
81         uint32_t sv100_platform_id;
82         const char * sv100_name;
83 };
84
85 struct SERVER_INFO_101 {
86         uint32_t sv101_platform_id;
87         const char * sv101_name;
88         uint32_t sv101_version_major;
89         uint32_t sv101_version_minor;
90         uint32_t sv101_type;
91         const char * sv101_comment;
92 };
93
94 struct SERVER_INFO_102 {
95         uint32_t sv102_platform_id;
96         const char * sv102_name;
97         uint32_t sv102_version_major;
98         uint32_t sv102_version_minor;
99         uint32_t sv102_type;
100         const char * sv102_comment;
101         uint32_t sv102_users;
102         uint32_t sv102_disc;
103         uint8_t sv102_hidden;
104         uint32_t sv102_announce;
105         uint32_t sv102_anndelta;
106         uint32_t sv102_licenses;
107         const char * sv102_userpath;
108 };
109
110 struct SERVER_INFO_402 {
111         uint32_t sv402_ulist_mtime;
112         uint32_t sv402_glist_mtime;
113         uint32_t sv402_alist_mtime;
114         const char * sv402_alerts;
115         uint32_t sv402_security;
116         uint32_t sv402_numadmin;
117         uint32_t sv402_lanmask;
118         const char * sv402_guestacct;
119         uint32_t sv402_chdevs;
120         uint32_t sv402_chdevq;
121         uint32_t sv402_chdevjobs;
122         uint32_t sv402_connections;
123         uint32_t sv402_shares;
124         uint32_t sv402_openfiles;
125         uint32_t sv402_sessopens;
126         uint32_t sv402_sessvcs;
127         uint32_t sv402_sessreqs;
128         uint32_t sv402_opensearch;
129         uint32_t sv402_activelocks;
130         uint32_t sv402_numreqbuf;
131         uint32_t sv402_sizreqbuf;
132         uint32_t sv402_numbigbuf;
133         uint32_t sv402_numfiletasks;
134         uint32_t sv402_alertsched;
135         uint32_t sv402_erroralert;
136         uint32_t sv402_logonalert;
137         uint32_t sv402_accessalert;
138         uint32_t sv402_diskalert;
139         uint32_t sv402_netioalert;
140         uint32_t sv402_maxauditsz;
141         const char * sv402_srvheuristics;
142 };
143
144 struct SERVER_INFO_403 {
145         uint32_t sv403_ulist_mtime;
146         uint32_t sv403_glist_mtime;
147         uint32_t sv403_alist_mtime;
148         const char * sv403_alerts;
149         uint32_t sv403_security;
150         uint32_t sv403_numadmin;
151         uint32_t sv403_lanmask;
152         const char * sv403_guestacct;
153         uint32_t sv403_chdevs;
154         uint32_t sv403_chdevq;
155         uint32_t sv403_chdevjobs;
156         uint32_t sv403_connections;
157         uint32_t sv403_shares;
158         uint32_t sv403_openfiles;
159         uint32_t sv403_sessopens;
160         uint32_t sv403_sessvcs;
161         uint32_t sv403_sessreqs;
162         uint32_t sv403_opensearch;
163         uint32_t sv403_activelocks;
164         uint32_t sv403_numreqbuf;
165         uint32_t sv403_sizreqbuf;
166         uint32_t sv403_numbigbuf;
167         uint32_t sv403_numfiletasks;
168         uint32_t sv403_alertsched;
169         uint32_t sv403_erroralert;
170         uint32_t sv403_logonalert;
171         uint32_t sv403_accessalert;
172         uint32_t sv403_diskalert;
173         uint32_t sv403_netioalert;
174         uint32_t sv403_maxauditsz;
175         const char * sv403_srvheuristics;
176         uint32_t sv403_auditedevents;
177         uint32_t sv403_autoprofile;
178         const char * sv403_autopath;
179 };
180
181 struct SERVER_INFO_502 {
182         uint32_t sv502_sessopens;
183         uint32_t sv502_sessvcs;
184         uint32_t sv502_opensearch;
185         uint32_t sv502_sizreqbuf;
186         uint32_t sv502_initworkitems;
187         uint32_t sv502_maxworkitems;
188         uint32_t sv502_rawworkitems;
189         uint32_t sv502_irpstacksize;
190         uint32_t sv502_maxrawbuflen;
191         uint32_t sv502_sessusers;
192         uint32_t sv502_sessconns;
193         uint32_t sv502_maxpagedmemoryusage;
194         uint32_t sv502_maxnonpagedmemoryusage;
195         uint8_t sv502_enablesoftcompat;
196         uint8_t sv502_enableforcedlogoff;
197         uint8_t sv502_timesource;
198         uint8_t sv502_acceptdownlevelapis;
199         uint8_t sv502_lmannounce;
200 };
201
202 struct SERVER_INFO_503 {
203         uint32_t sv503_sessopens;
204         uint32_t sv503_sessvcs;
205         uint32_t sv503_opensearch;
206         uint32_t sv503_sizreqbuf;
207         uint32_t sv503_initworkitems;
208         uint32_t sv503_maxworkitems;
209         uint32_t sv503_rawworkitems;
210         uint32_t sv503_irpstacksize;
211         uint32_t sv503_maxrawbuflen;
212         uint32_t sv503_sessusers;
213         uint32_t sv503_sessconns;
214         uint32_t sv503_maxpagedmemoryusage;
215         uint32_t sv503_maxnonpagedmemoryusage;
216         uint8_t sv503_enablesoftcompat;
217         uint8_t sv503_enableforcedlogoff;
218         uint8_t sv503_timesource;
219         uint8_t sv503_acceptdownlevelapis;
220         uint8_t sv503_lmannounce;
221         const char * sv503_domain;
222         uint32_t sv503_maxcopyreadlen;
223         uint32_t sv503_maxcopywritelen;
224         uint32_t sv503_minkeepsearch;
225         uint32_t sv503_maxkeepsearch;
226         uint32_t sv503_minkeepcomplsearch;
227         uint32_t sv503_maxkeepcomplsearch;
228         uint32_t sv503_threadcountadd;
229         uint32_t sv503_numblockthreads;
230         uint32_t sv503_scavtimeout;
231         uint32_t sv503_minrcvqueue;
232         uint32_t sv503_minfreeworkitems;
233         uint32_t sv503_xactmemsize;
234         uint32_t sv503_threadpriority;
235         uint32_t sv503_maxmpxct;
236         uint32_t sv503_oplockbreakwait;
237         uint32_t sv503_oplockbreakresponsewait;
238         uint8_t sv503_enableoplocks;
239         uint8_t sv503_enableoplockforceclose;
240         uint8_t sv503_enablefcbopens;
241         uint8_t sv503_enableraw;
242         uint8_t sv503_enablesharednetdrives;
243         uint32_t sv503_minfreeconnections;
244         uint32_t sv503_maxfreeconnections;
245 };
246
247 struct SERVER_INFO_599 {
248         uint32_t sv599_sessopens;
249         uint32_t sv599_sessvcs;
250         uint32_t sv599_opensearch;
251         uint32_t sv599_sizreqbuf;
252         uint32_t sv599_initworkitems;
253         uint32_t sv599_maxworkitems;
254         uint32_t sv599_rawworkitems;
255         uint32_t sv599_irpstacksize;
256         uint32_t sv599_maxrawbuflen;
257         uint32_t sv599_sessusers;
258         uint32_t sv599_sessconns;
259         uint32_t sv599_maxpagedmemoryusage;
260         uint32_t sv599_maxnonpagedmemoryusage;
261         uint8_t sv599_enablesoftcompat;
262         uint8_t sv599_enableforcedlogoff;
263         uint8_t sv599_timesource;
264         uint8_t sv599_acceptdownlevelapis;
265         uint8_t sv599_lmannounce;
266         const char * sv599_domain;
267         uint32_t sv599_maxcopyreadlen;
268         uint32_t sv599_maxcopywritelen;
269         uint32_t sv599_minkeepsearch;
270         uint32_t sv599_maxkeepsearch;
271         uint32_t sv599_minkeepcomplsearch;
272         uint32_t sv599_maxkeepcomplsearch;
273         uint32_t sv599_threadcountadd;
274         uint32_t sv599_numblockthreads;
275         uint32_t sv599_scavtimeout;
276         uint32_t sv599_minrcvqueue;
277         uint32_t sv599_minfreeworkitems;
278         uint32_t sv599_xactmemsize;
279         uint32_t sv599_threadpriority;
280         uint32_t sv599_maxmpxct;
281         uint32_t sv599_oplockbreakwait;
282         uint32_t sv599_oplockbreakresponsewait;
283         uint8_t sv599_enableoplocks;
284         uint8_t sv599_enableoplockforceclose;
285         uint8_t sv599_enablefcbopens;
286         uint8_t sv599_enableraw;
287         uint8_t sv599_enablesharednetdrives;
288         uint32_t sv599_minfreeconnections;
289         uint32_t sv599_maxfreeconnections;
290         uint32_t sv599_initsesstable;
291         uint32_t sv599_initconntable;
292         uint32_t sv599_initfiletable;
293         uint32_t sv599_initsearchtable;
294         uint32_t sv599_alertschedule;
295         uint32_t sv599_errorthreshold;
296         uint32_t sv599_networkerrorthreshold;
297         uint32_t sv599_diskspacethreshold;
298         uint32_t sv599_reserved;
299         uint32_t sv599_maxlinkdelay;
300         uint32_t sv599_minlinkthroughput;
301         uint32_t sv599_linkinfovalidtime;
302         uint32_t sv599_scavqosinfoupdatetime;
303         uint32_t sv599_maxworkitemidletime;
304 };
305
306 struct SERVER_INFO_598 {
307         uint32_t sv598_maxrawworkitems;
308         uint32_t sv598_maxthreadsperqueue;
309         uint32_t sv598_producttype;
310         uint32_t sv598_serversize;
311         uint32_t sv598_connectionlessautodisc;
312         uint32_t sv598_sharingviolationretries;
313         uint32_t sv598_sharingviolationdelay;
314         uint32_t sv598_maxglobalopensearch;
315         uint32_t sv598_removeduplicatesearches;
316         uint32_t sv598_lockviolationoffset;
317         uint32_t sv598_lockviolationdelay;
318         uint32_t sv598_mdlreadswitchover;
319         uint32_t sv598_cachedopenlimit;
320         uint32_t sv598_otherqueueaffinity;
321         uint8_t sv598_restrictnullsessaccess;
322         uint8_t sv598_enablewfw311directipx;
323         uint32_t sv598_queuesamplesecs;
324         uint32_t sv598_balancecount;
325         uint32_t sv598_preferredaffinity;
326         uint32_t sv598_maxfreerfcbs;
327         uint32_t sv598_maxfreemfcbs;
328         uint32_t sv598_maxfreelfcbs;
329         uint32_t sv598_maxfreepagedpoolchunks;
330         uint32_t sv598_minpagedpoolchunksize;
331         uint32_t sv598_maxpagedpoolchunksize;
332         uint8_t sv598_sendsfrompreferredprocessor;
333         uint32_t sv598_cacheddirectorylimit;
334         uint32_t sv598_maxcopylength;
335         uint8_t sv598_enablecompression;
336         uint8_t sv598_autosharewks;
337         uint8_t sv598_autoshareserver;
338         uint8_t sv598_enablesecuritysignature;
339         uint8_t sv598_requiresecuritysignature;
340         uint32_t sv598_minclientbuffersize;
341         struct GUID sv598_serverguid;
342         uint32_t sv598_ConnectionNoSessionsTimeout;
343         uint32_t sv598_IdleThreadTimeOut;
344         uint8_t sv598_enableW9xsecuritysignature;
345         uint8_t sv598_enforcekerberosreauthentication;
346         uint8_t sv598_disabledos;
347         uint32_t sv598_lowdiskspaceminimum;
348         uint8_t sv598_disablestrictnamechecking;
349 };
350
351 struct SERVER_INFO_1005 {
352         const char * sv1005_comment;
353 };
354
355 struct SERVER_INFO_1107 {
356         uint32_t sv1107_users;
357 };
358
359 struct SERVER_INFO_1010 {
360         int32_t sv1010_disc;
361 };
362
363 struct SERVER_INFO_1016 {
364         uint8_t sv1016_hidden;
365 };
366
367 struct SERVER_INFO_1017 {
368         uint32_t sv1017_announce;
369 };
370
371 struct SERVER_INFO_1018 {
372         uint32_t sv1018_anndelta;
373 };
374
375 struct SERVER_INFO_1501 {
376         uint32_t sv1501_sessopens;
377 };
378
379 struct SERVER_INFO_1502 {
380         uint32_t sv1502_sessvcs;
381 };
382
383 struct SERVER_INFO_1503 {
384         uint32_t sv1503_opensearch;
385 };
386
387 struct SERVER_INFO_1506 {
388         uint32_t sv1506_maxworkitems;
389 };
390
391 struct SERVER_INFO_1509 {
392         uint32_t sv1509_maxrawbuflen;
393 };
394
395 struct SERVER_INFO_1510 {
396         uint32_t sv1510_sessusers;
397 };
398
399 struct SERVER_INFO_1511 {
400         uint32_t sv1511_sessconns;
401 };
402
403 struct SERVER_INFO_1512 {
404         uint32_t sv1512_maxnonpagedmemoryusage;
405 };
406
407 struct SERVER_INFO_1513 {
408         uint32_t sv1513_maxpagedmemoryusage;
409 };
410
411 struct SERVER_INFO_1514 {
412         uint8_t sv1514_enablesoftcompat;
413 };
414
415 struct SERVER_INFO_1515 {
416         uint8_t sv1515_enableforcedlogoff;
417 };
418
419 struct SERVER_INFO_1516 {
420         uint8_t sv1516_timesource;
421 };
422
423 struct SERVER_INFO_1518 {
424         uint8_t sv1518_lmannounce;
425 };
426
427 struct SERVER_INFO_1520 {
428         uint32_t sv1520_maxcopyreadlen;
429 };
430
431 struct SERVER_INFO_1521 {
432         uint32_t sv1521_maxcopywritelen;
433 };
434
435 struct SERVER_INFO_1522 {
436         uint32_t sv1522_minkeepsearch;
437 };
438
439 struct SERVER_INFO_1523 {
440         uint32_t sv1523_maxkeepsearch;
441 };
442
443 struct SERVER_INFO_1524 {
444         uint32_t sv1524_minkeepcomplsearch;
445 };
446
447 struct SERVER_INFO_1525 {
448         uint32_t sv1525_maxkeepcomplsearch;
449 };
450
451 struct SERVER_INFO_1528 {
452         uint32_t sv1528_scavtimeout;
453 };
454
455 struct SERVER_INFO_1529 {
456         uint32_t sv1529_minrcvqueue;
457 };
458
459 struct SERVER_INFO_1530 {
460         uint32_t sv1530_minfreeworkitems;
461 };
462
463 struct SERVER_INFO_1533 {
464         uint32_t sv1533_maxmpxct;
465 };
466
467 struct SERVER_INFO_1534 {
468         uint32_t sv1534_oplockbreakwait;
469 };
470
471 struct SERVER_INFO_1535 {
472         uint32_t sv1535_oplockbreakresponsewait;
473 };
474
475 struct SERVER_INFO_1536 {
476         uint8_t sv1536_enableoplocks;
477 };
478
479 struct SERVER_INFO_1537 {
480         uint8_t sv1537_enableoplockforceclose;
481 };
482
483 struct SERVER_INFO_1538 {
484         uint8_t sv1538_enablefcbopens;
485 };
486
487 struct SERVER_INFO_1539 {
488         uint8_t sv1539_enableraw;
489 };
490
491 struct SERVER_INFO_1540 {
492         uint8_t sv1540_enablesharednetdrives;
493 };
494
495 struct SERVER_INFO_1541 {
496         uint8_t sv1541_minfreeconnections;
497 };
498
499 struct SERVER_INFO_1542 {
500         uint8_t sv1542_maxfreeconnections;
501 };
502
503 struct SERVER_INFO_1543 {
504         uint32_t sv1543_initsesstable;
505 };
506
507 struct SERVER_INFO_1544 {
508         uint32_t sv1544_initconntable;
509 };
510
511 struct SERVER_INFO_1545 {
512         uint32_t sv1545_initfiletable;
513 };
514
515 struct SERVER_INFO_1546 {
516         uint32_t sv1546_initsearchtable;
517 };
518
519 struct SERVER_INFO_1547 {
520         uint32_t sv1547_alertschedule;
521 };
522
523 struct SERVER_INFO_1548 {
524         uint32_t sv1548_errorthreshold;
525 };
526
527 struct SERVER_INFO_1549 {
528         uint32_t sv1549_networkerrorthreshold;
529 };
530
531 struct SERVER_INFO_1550 {
532         uint32_t sv1550_diskspacethreshold;
533 };
534
535 struct SERVER_INFO_1552 {
536         uint32_t sv1552_maxlinkdelay;
537 };
538
539 struct SERVER_INFO_1553 {
540         uint32_t sv1553_minlinkthroughput;
541 };
542
543 struct SERVER_INFO_1554 {
544         uint32_t sv1554_linkinfovalidtime;
545 };
546
547 struct SERVER_INFO_1555 {
548         uint32_t sv1555_scavqosinfoupdatetime;
549 };
550
551 struct SERVER_INFO_1556 {
552         uint32_t sv1556_maxworkitemidletime;
553 };
554
555 struct SERVER_INFO_1557 {
556         uint32_t sv1557_maxrawworkitems;
557 };
558
559 struct SERVER_INFO_1560 {
560         uint32_t sv1560_producttype;
561 };
562
563 struct SERVER_INFO_1561 {
564         uint32_t sv1561_serversize;
565 };
566
567 struct SERVER_INFO_1562 {
568         uint32_t sv1562_connectionlessautodisc;
569 };
570
571 struct SERVER_INFO_1563 {
572         uint32_t sv1563_sharingviolationretries;
573 };
574
575 struct SERVER_INFO_1564 {
576         uint32_t sv1564_sharingviolationdelay;
577 };
578
579 struct SERVER_INFO_1565 {
580         uint32_t sv1565_maxglobalopensearch;
581 };
582
583 struct SERVER_INFO_1566 {
584         uint8_t sv1566_removeduplicatesearches;
585 };
586
587 struct SERVER_INFO_1567 {
588         uint32_t sv1567_lockviolationretries;
589 };
590
591 struct SERVER_INFO_1568 {
592         uint32_t sv1568_lockviolationoffset;
593 };
594
595 struct SERVER_INFO_1569 {
596         uint32_t sv1569_lockviolationdelay;
597 };
598
599 struct SERVER_INFO_1570 {
600         uint32_t sv1570_mdlreadswitchover;
601 };
602
603 struct SERVER_INFO_1571 {
604         uint32_t sv1571_cachedopenlimit;
605 };
606
607 struct SERVER_INFO_1572 {
608         uint32_t sv1572_criticalthreads;
609 };
610
611 struct SERVER_INFO_1573 {
612         uint32_t sv1573_restrictnullsessaccess;
613 };
614
615 struct SERVER_INFO_1574 {
616         uint32_t sv1574_enablewfw311directipx;
617 };
618
619 struct SERVER_INFO_1575 {
620         uint32_t sv1575_otherqueueaffinity;
621 };
622
623 struct SERVER_INFO_1576 {
624         uint32_t sv1576_queuesamplesecs;
625 };
626
627 struct SERVER_INFO_1577 {
628         uint32_t sv1577_balancecount;
629 };
630
631 struct SERVER_INFO_1578 {
632         uint32_t sv1578_preferredaffinity;
633 };
634
635 struct SERVER_INFO_1579 {
636         uint32_t sv1579_maxfreerfcbs;
637 };
638
639 struct SERVER_INFO_1580 {
640         uint32_t sv1580_maxfreemfcbs;
641 };
642
643 struct SERVER_INFO_1581 {
644         uint32_t sv1581_maxfreemlcbs;
645 };
646
647 struct SERVER_INFO_1582 {
648         uint32_t sv1582_maxfreepagedpoolchunks;
649 };
650
651 struct SERVER_INFO_1583 {
652         uint32_t sv1583_minpagedpoolchunksize;
653 };
654
655 struct SERVER_INFO_1584 {
656         uint32_t sv1584_maxpagedpoolchunksize;
657 };
658
659 struct SERVER_INFO_1585 {
660         uint8_t sv1585_sendsfrompreferredprocessor;
661 };
662
663 struct SERVER_INFO_1586 {
664         uint32_t sv1586_maxthreadsperqueue;
665 };
666
667 struct SERVER_INFO_1587 {
668         uint32_t sv1587_cacheddirectorylimit;
669 };
670
671 struct SERVER_INFO_1588 {
672         uint32_t sv1588_maxcopylength;
673 };
674
675 struct SERVER_INFO_1590 {
676         uint32_t sv1590_enablecompression;
677 };
678
679 struct SERVER_INFO_1591 {
680         uint32_t sv1591_autosharewks;
681 };
682
683 struct SERVER_INFO_1592 {
684         uint32_t sv1592_autosharewks;
685 };
686
687 struct SERVER_INFO_1593 {
688         uint32_t sv1593_enablesecuritysignature;
689 };
690
691 struct SERVER_INFO_1594 {
692         uint32_t sv1594_requiresecuritysignature;
693 };
694
695 struct SERVER_INFO_1595 {
696         uint32_t sv1595_minclientbuffersize;
697 };
698
699 struct SERVER_INFO_1596 {
700         uint32_t sv1596_ConnectionNoSessionsTimeout;
701 };
702
703 struct SERVER_INFO_1597 {
704         uint32_t sv1597_IdleThreadTimeOut;
705 };
706
707 struct SERVER_INFO_1598 {
708         uint32_t sv1598_enableW9xsecuritysignature;
709 };
710
711 struct SERVER_INFO_1599 {
712         uint8_t sv1598_enforcekerberosreauthentication;
713 };
714
715 struct SERVER_INFO_1600 {
716         uint8_t sv1598_disabledos;
717 };
718
719 struct SERVER_INFO_1601 {
720         uint32_t sv1598_lowdiskspaceminimum;
721 };
722
723 struct SERVER_INFO_1602 {
724         uint8_t sv_1598_disablestrictnamechecking;
725 };
726
727 struct DOMAIN_CONTROLLER_INFO {
728         const char * domain_controller_name;
729         const char * domain_controller_address;
730         uint32_t domain_controller_address_type;
731         struct GUID domain_guid;
732         const char * domain_name;
733         const char * dns_forest_name;
734         uint32_t flags;
735         const char * dc_site_name;
736         const char * client_site_name;
737 };
738
739 struct USER_INFO_0 {
740         const char * usri0_name;
741 };
742
743 struct USER_INFO_1 {
744         const char * usri1_name;
745         const char * usri1_password;
746         uint32_t usri1_password_age;
747         uint32_t usri1_priv;
748         const char * usri1_home_dir;
749         const char * usri1_comment;
750         uint32_t usri1_flags;
751         const char * usri1_script_path;
752 };
753
754 struct USER_INFO_2 {
755         const char * usri2_name;
756         const char * usri2_password;
757         uint32_t usri2_password_age;
758         uint32_t usri2_priv;
759         const char * usri2_home_dir;
760         const char * usri2_comment;
761         uint32_t usri2_flags;
762         const char * usri2_script_path;
763         uint32_t usri2_auth_flags;
764         const char * usri2_full_name;
765         const char * usri2_usr_comment;
766         const char * usri2_parms;
767         const char * usri2_workstations;
768         uint32_t usri2_last_logon;
769         uint32_t usri2_last_logoff;
770         uint32_t usri2_acct_expires;
771         uint32_t usri2_max_storage;
772         uint32_t usri2_units_per_week;
773         uint8_t *usri2_logon_hours;/* [unique] */
774         uint32_t usri2_bad_pw_count;
775         uint32_t usri2_num_logons;
776         const char * usri2_logon_server;
777         uint32_t usri2_country_code;
778         uint32_t usri2_code_page;
779 };
780
781 struct USER_INFO_3 {
782         const char * usri3_name;
783         uint32_t usri3_password_age;
784         uint32_t usri3_priv;
785         const char * usri3_home_dir;
786         const char * usri3_comment;
787         uint32_t usri3_flags;
788         const char * usri3_script_path;
789         uint32_t usri3_auth_flags;
790         const char * usri3_full_name;
791         const char * usri3_usr_comment;
792         const char * usri3_parms;
793         const char * usri3_workstations;
794         uint32_t usri3_last_logon;
795         uint32_t usri3_last_logoff;
796         uint32_t usri3_acct_expires;
797         uint32_t usri3_max_storage;
798         uint32_t usri3_units_per_week;
799         uint8_t *usri3_logon_hours;/* [unique] */
800         uint32_t usri3_bad_pw_count;
801         uint32_t usri3_num_logons;
802         const char * usri3_logon_server;
803         uint32_t usri3_country_code;
804         uint32_t usri3_code_page;
805         uint32_t usri3_user_id;
806         uint32_t usri3_primary_group_id;
807         const char * usri3_profile;
808         const char * usri3_home_dir_drive;
809         uint32_t usri3_password_expired;
810 };
811
812 struct USER_INFO_4 {
813         const char * usri4_name;
814         const char * usri4_password;
815         uint32_t usri4_password_age;
816         uint32_t usri4_priv;
817         const char * usri4_home_dir;
818         const char * usri4_comment;
819         uint32_t usri4_flags;
820         const char * usri4_script_path;
821         uint32_t usri4_auth_flags;
822         const char * usri4_full_name;
823         const char * usri4_usr_comment;
824         const char * usri4_parms;
825         const char * usri4_workstations;
826         uint32_t usri4_last_logon;
827         uint32_t usri4_last_logoff;
828         uint32_t usri4_acct_expires;
829         uint32_t usri4_max_storage;
830         uint32_t usri4_units_per_week;
831         uint8_t *usri4_logon_hours;/* [unique] */
832         uint32_t usri4_bad_pw_count;
833         uint32_t usri4_num_logons;
834         const char * usri4_logon_server;
835         uint32_t usri4_country_code;
836         uint32_t usri4_code_page;
837         struct domsid *usri4_user_sid;/* [unique] */
838         uint32_t usri4_primary_group_id;
839         const char * usri4_profile;
840         const char * usri4_home_dir_drive;
841         uint32_t usri4_password_expired;
842 };
843
844 struct USER_INFO_10 {
845         const char * usri10_name;
846         const char * usri10_comment;
847         const char * usri10_usr_comment;
848         const char * usri10_full_name;
849 };
850
851 struct USER_INFO_11 {
852         const char * usri11_name;
853         const char * usri11_comment;
854         const char * usri11_usr_comment;
855         const char * usri11_full_name;
856         uint32_t usri11_priv;
857         uint32_t usri11_auth_flags;
858         uint32_t usri11_password_age;
859         const char * usri11_home_dir;
860         const char * usri11_parms;
861         uint32_t usri11_last_logon;
862         uint32_t usri11_last_logoff;
863         uint32_t usri11_bad_pw_count;
864         uint32_t usri11_num_logons;
865         const char * usri11_logon_server;
866         uint32_t usri11_country_code;
867         const char * usri11_workstations;
868         uint32_t usri11_max_storage;
869         uint32_t usri11_units_per_week;
870         uint8_t *usri11_logon_hours;/* [unique] */
871         uint32_t usri11_code_page;
872 };
873
874 struct USER_INFO_20 {
875         const char * usri20_name;
876         const char * usri20_full_name;
877         const char * usri20_comment;
878         uint32_t usri20_flags;
879         uint32_t usri20_user_id;
880 };
881
882 struct USER_INFO_21 {
883         uint8_t *usri21_password;
884 };
885
886 struct USER_INFO_22 {
887         const char * usri22_name;
888         uint8_t *usri22_password;
889         uint32_t usri22_password_age;
890         uint32_t usri22_priv;
891         const char * usri22_home_dir;
892         const char * usri22_comment;
893         uint32_t usri22_flags;
894         uint32_t usri22_script_path;
895         uint32_t usri22_auth_flags;
896         const char * usri22_full_name;
897         const char * usri22_usr_comment;
898         const char * usri22_parms;
899         const char * usri22_workstations;
900         uint32_t usri22_last_logon;
901         uint32_t usri22_last_logoff;
902         uint32_t usri22_acct_expires;
903         uint32_t usri22_max_storage;
904         uint32_t usri22_units_per_week;
905         uint8_t *usri22_logon_hours;/* [unique] */
906         uint32_t usri22_bad_pw_count;
907         uint32_t usri22_num_logons;
908         const char * usri22_logon_server;
909         uint32_t usri22_country_code;
910         uint32_t usri22_code_page;
911 };
912
913 struct USER_INFO_23 {
914         const char * usri23_name;
915         const char * usri23_full_name;
916         const char * usri23_comment;
917         uint32_t usri23_flags;
918         struct domsid *usri23_user_sid;/* [unique] */
919 };
920
921 struct USER_INFO_1003 {
922         const char * usri1003_password;
923 };
924
925 struct USER_INFO_1005 {
926         uint32_t usri1005_priv;
927 };
928
929 struct USER_INFO_1006 {
930         const char * usri1006_home_dir;
931 };
932
933 struct USER_INFO_1007 {
934         const char * usri1007_comment;
935 };
936
937 struct USER_INFO_1008 {
938         uint32_t usri1008_flags;
939 };
940
941 struct USER_INFO_1009 {
942         const char * usri1009_script_path;
943 };
944
945 struct USER_INFO_1010 {
946         uint32_t usri1010_auth_flags;
947 };
948
949 struct USER_INFO_1011 {
950         const char * usri1011_full_name;
951 };
952
953 struct USER_INFO_1012 {
954         const char * usri1012_usr_comment;
955 };
956
957 struct USER_INFO_1013 {
958         const char * usri1013_parms;
959 };
960
961 struct USER_INFO_1014 {
962         const char * usri1014_workstations;
963 };
964
965 struct USER_INFO_1017 {
966         uint32_t usri1017_acct_expires;
967 };
968
969 struct USER_INFO_1018 {
970         uint32_t usri1018_max_storage;
971 };
972
973 struct USER_INFO_1020 {
974         uint32_t usri1020_units_per_week;
975         uint8_t *usri1020_logon_hours;/* [unique] */
976 };
977
978 struct USER_INFO_1023 {
979         const char * usri1023_logon_server;
980 };
981
982 struct USER_INFO_1024 {
983         uint32_t usri1024_country_code;
984 };
985
986 struct USER_INFO_1025 {
987         uint32_t usri1025_code_page;
988 };
989
990 struct USER_INFO_1051 {
991         uint32_t usri1051_primary_group_id;
992 };
993
994 struct USER_INFO_1052 {
995         const char * usri1052_profile;
996 };
997
998 struct USER_INFO_1053 {
999         const char * usri1053_home_dir_drive;
1000 };
1001
1002 struct USER_INFO_X {
1003         const char * usriX_name;
1004         const char * usriX_password;
1005         uint32_t usriX_password_age;
1006         uint32_t usriX_priv;
1007         const char * usriX_home_dir;
1008         const char * usriX_comment;
1009         uint32_t usriX_flags;
1010         const char * usriX_script_path;
1011         uint32_t usriX_auth_flags;
1012         const char * usriX_full_name;
1013         const char * usriX_usr_comment;
1014         const char * usriX_parms;
1015         const char * usriX_workstations;
1016         uint32_t usriX_last_logon;
1017         uint32_t usriX_last_logoff;
1018         uint32_t usriX_acct_expires;
1019         uint32_t usriX_max_storage;
1020         uint32_t usriX_units_per_week;
1021         uint8_t *usriX_logon_hours;/* [unique] */
1022         uint32_t usriX_bad_pw_count;
1023         uint32_t usriX_num_logons;
1024         const char * usriX_logon_server;
1025         uint32_t usriX_country_code;
1026         uint32_t usriX_code_page;
1027         const char * usriX_profile;
1028         const char * usriX_home_dir_drive;
1029         uint32_t usriX_user_id;
1030         uint32_t usriX_primary_group_id;
1031         uint32_t usriX_password_expired;
1032 };
1033
1034 struct GROUP_USERS_INFO_0 {
1035         const char * grui0_name;
1036 };
1037
1038 struct GROUP_USERS_INFO_1 {
1039         const char * grui1_name;
1040         uint32_t grui1_attributes;
1041 };
1042
1043 struct LOCALGROUP_USERS_INFO_0 {
1044         const char * lgrui0_name;
1045 };
1046
1047 struct USER_MODALS_INFO_0 {
1048         uint32_t usrmod0_min_passwd_len;
1049         uint32_t usrmod0_max_passwd_age;
1050         uint32_t usrmod0_min_passwd_age;
1051         uint32_t usrmod0_force_logoff;
1052         uint32_t usrmod0_password_hist_len;
1053 };
1054
1055 struct USER_MODALS_INFO_1 {
1056         uint32_t usrmod1_role;
1057         const char * usrmod1_primary;
1058 };
1059
1060 struct USER_MODALS_INFO_2 {
1061         const char * usrmod2_domain_name;
1062         struct domsid *usrmod2_domain_id;/* [unique] */
1063 };
1064
1065 struct USER_MODALS_INFO_3 {
1066         uint32_t usrmod3_lockout_duration;
1067         uint32_t usrmod3_lockout_observation_window;
1068         uint32_t usrmod3_lockout_threshold;
1069 };
1070
1071 struct USER_MODALS_INFO_1001 {
1072         uint32_t usrmod1001_min_passwd_len;
1073 };
1074
1075 struct USER_MODALS_INFO_1002 {
1076         uint32_t usrmod1002_max_passwd_age;
1077 };
1078
1079 struct USER_MODALS_INFO_1003 {
1080         uint32_t usrmod1003_min_passwd_age;
1081 };
1082
1083 struct USER_MODALS_INFO_1004 {
1084         uint32_t usrmod1004_force_logoff;
1085 };
1086
1087 struct USER_MODALS_INFO_1005 {
1088         uint32_t usrmod1005_password_hist_len;
1089 };
1090
1091 struct USER_MODALS_INFO_1006 {
1092         uint32_t usrmod1006_role;
1093 };
1094
1095 struct USER_MODALS_INFO_1007 {
1096         const char * usrmod1007_primary;
1097 };
1098
1099 struct NET_DISPLAY_USER {
1100         const char * usri1_name;
1101         const char * usri1_comment;
1102         uint32_t usri1_flags;
1103         const char * usri1_full_name;
1104         uint32_t usri1_user_id;
1105         uint32_t usri1_next_index;
1106 };
1107
1108 struct NET_DISPLAY_MACHINE {
1109         const char * usri2_name;
1110         const char * usri2_comment;
1111         uint32_t usri2_flags;
1112         uint32_t usri2_user_id;
1113         uint32_t usri2_next_index;
1114 };
1115
1116 struct NET_DISPLAY_GROUP {
1117         const char * grpi3_name;
1118         const char * grpi3_comment;
1119         uint32_t grpi3_group_id;
1120         uint32_t grpi3_attributes;
1121         uint32_t grpi3_next_index;
1122 };
1123
1124 struct GROUP_INFO_0 {
1125         const char * grpi0_name;
1126 };
1127
1128 struct GROUP_INFO_1 {
1129         const char * grpi1_name;
1130         const char * grpi1_comment;
1131 };
1132
1133 struct GROUP_INFO_2 {
1134         const char * grpi2_name;
1135         const char * grpi2_comment;
1136         uint32_t grpi2_group_id;
1137         uint32_t grpi2_attributes;
1138 };
1139
1140 struct GROUP_INFO_3 {
1141         const char * grpi3_name;
1142         const char * grpi3_comment;
1143         struct domsid *grpi3_group_sid;/* [unique] */
1144         uint32_t grpi3_attributes;
1145 };
1146
1147 struct GROUP_INFO_1002 {
1148         const char * grpi1002_comment;
1149 };
1150
1151 struct GROUP_INFO_1005 {
1152         uint32_t grpi1005_attributes;
1153 };
1154
1155 struct LOCALGROUP_INFO_0 {
1156         const char * lgrpi0_name;
1157 };
1158
1159 struct LOCALGROUP_INFO_1 {
1160         const char * lgrpi1_name;
1161         const char * lgrpi1_comment;
1162 };
1163
1164 struct LOCALGROUP_INFO_1002 {
1165         const char * lgrpi1002_comment;
1166 };
1167
1168 enum SID_NAME_USE
1169 #ifndef USE_UINT_ENUMS
1170  {
1171         SidTypeUser=1,
1172         SidTypeGroup=2,
1173         SidTypeDomain=3,
1174         SidTypeAlias=4,
1175         SidTypeWellKnownGroup=5,
1176         SidTypeDeletedAccount=6,
1177         SidTypeInvalid=7,
1178         SidTypeUnknown=8,
1179         SidTypeComputer=9,
1180         SidTypeLabel=10
1181 }
1182 #else
1183  { __donnot_use_enum_SID_NAME_USE=0x7FFFFFFF}
1184 #define SidTypeUser ( 1 )
1185 #define SidTypeGroup ( 2 )
1186 #define SidTypeDomain ( 3 )
1187 #define SidTypeAlias ( 4 )
1188 #define SidTypeWellKnownGroup ( 5 )
1189 #define SidTypeDeletedAccount ( 6 )
1190 #define SidTypeInvalid ( 7 )
1191 #define SidTypeUnknown ( 8 )
1192 #define SidTypeComputer ( 9 )
1193 #define SidTypeLabel ( 10 )
1194 #endif
1195 ;
1196
1197 struct LOCALGROUP_MEMBERS_INFO_0 {
1198         struct domsid *lgrmi0_sid;/* [unique] */
1199 };
1200
1201 struct LOCALGROUP_MEMBERS_INFO_1 {
1202         struct domsid *lgrmi1_sid;/* [unique] */
1203         enum SID_NAME_USE lgrmi1_sidusage;
1204         const char * lgrmi1_name;
1205 };
1206
1207 struct LOCALGROUP_MEMBERS_INFO_2 {
1208         struct domsid *lgrmi2_sid;/* [unique] */
1209         enum SID_NAME_USE lgrmi2_sidusage;
1210         const char * lgrmi2_domainandname;
1211 };
1212
1213 struct LOCALGROUP_MEMBERS_INFO_3 {
1214         const char * lgrmi3_domainandname;
1215 };
1216
1217 struct TIME_OF_DAY_INFO {
1218         uint32_t tod_elapsedt;
1219         uint32_t tod_msecs;
1220         uint32_t tod_hours;
1221         uint32_t tod_mins;
1222         uint32_t tod_secs;
1223         uint32_t tod_hunds;
1224         int32_t tod_timezone;
1225         uint32_t tod_tinterval;
1226         uint32_t tod_day;
1227         uint32_t tod_month;
1228         uint32_t tod_year;
1229         uint32_t tod_weekday;
1230 };
1231
1232 struct SHARE_INFO_0 {
1233         const char * shi0_netname;
1234 };
1235
1236 struct SHARE_INFO_1 {
1237         const char * shi1_netname;
1238         uint32_t shi1_type;
1239         const char * shi1_remark;
1240 };
1241
1242 struct SHARE_INFO_2 {
1243         const char * shi2_netname;
1244         uint32_t shi2_type;
1245         const char * shi2_remark;
1246         uint32_t shi2_permissions;
1247         uint32_t shi2_max_uses;
1248         uint32_t shi2_current_uses;
1249         const char * shi2_path;
1250         const char * shi2_passwd;
1251 };
1252
1253 struct SHARE_INFO_501 {
1254         const char * shi501_netname;
1255         uint32_t shi501_type;
1256         const char * shi501_remark;
1257         uint32_t shi501_flags;
1258 };
1259
1260 struct SHARE_INFO_1004 {
1261         const char * shi1004_remark;
1262 };
1263
1264 /* bitmap SHARE_INFO_1005_FLAGS */
1265 #define SHI1005_FLAGS_DFS ( 0x01 )
1266 #define SHI1005_FLAGS_DFS_ROOT ( 0x02 )
1267 #define CSC_CACHE_MANUAL_REINT ( 0x00 )
1268 #define CSC_CACHE_AUTO_REINT ( 0x10 )
1269 #define CSC_CACHE_VDO ( 0x20 )
1270 #define CSC_CACHE_NONE ( 0x30 )
1271 #define SHI1005_FLAGS_RESTRICT_EXCLUSIVE_OPENS ( 0x0100 )
1272 #define SHI1005_FLAGS_FORCE_SHARED_DELETE ( 0x0200 )
1273 #define SHI1005_FLAGS_ALLOW_NAMESPACE_CACHING ( 0x0400 )
1274 #define SHI1005_FLAGS_ACCESS_BASED_DIRECTORY_ENUM ( 0x0800 )
1275
1276 struct SHARE_INFO_1005 {
1277         uint32_t shi1005_flags;
1278 };
1279
1280 struct SHARE_INFO_1006 {
1281         uint32_t shi1006_max_uses;
1282 };
1283
1284 struct FILE_INFO_2 {
1285         uint32_t fi2_id;
1286 };
1287
1288 struct FILE_INFO_3 {
1289         uint32_t fi3_id;
1290         uint32_t fi3_permissions;
1291         uint32_t fi3_num_locks;
1292         const char * fi3_pathname;
1293         const char * fi3_username;
1294 };
1295
1296
1297 struct NetJoinDomain {
1298         struct {
1299                 const char * server;/* [unique] */
1300                 const char * domain;/* [ref] */
1301                 const char * account_ou;/* [unique] */
1302                 const char * account;/* [unique] */
1303                 const char * password;/* [unique] */
1304                 uint32_t join_flags;
1305         } in;
1306
1307         struct {
1308                 enum NET_API_STATUS result;
1309         } out;
1310
1311 };
1312
1313
1314 struct NetUnjoinDomain {
1315         struct {
1316                 const char * server_name;/* [unique] */
1317                 const char * account;/* [unique] */
1318                 const char * password;/* [unique] */
1319                 uint32_t unjoin_flags;
1320         } in;
1321
1322         struct {
1323                 enum NET_API_STATUS result;
1324         } out;
1325
1326 };
1327
1328
1329 struct NetGetJoinInformation {
1330         struct {
1331                 const char * server_name;/* [unique] */
1332         } in;
1333
1334         struct {
1335                 const char * *name_buffer;/* [ref] */
1336                 uint16_t *name_type;/* [ref] */
1337                 enum NET_API_STATUS result;
1338         } out;
1339
1340 };
1341
1342
1343 struct NetGetJoinableOUs {
1344         struct {
1345                 const char * server_name;/* [unique] */
1346                 const char * domain;/* [ref] */
1347                 const char * account;/* [unique] */
1348                 const char * password;/* [unique] */
1349         } in;
1350
1351         struct {
1352                 uint32_t *ou_count;/* [ref] */
1353                 const char * **ous;/* [ref] */
1354                 enum NET_API_STATUS result;
1355         } out;
1356
1357 };
1358
1359
1360 struct NetRenameMachineInDomain {
1361         struct {
1362                 const char * server_name;
1363                 const char * new_machine_name;
1364                 const char * account;
1365                 const char * password;
1366                 uint32_t rename_options;
1367         } in;
1368
1369         struct {
1370                 enum NET_API_STATUS result;
1371         } out;
1372
1373 };
1374
1375
1376 struct NetServerGetInfo {
1377         struct {
1378                 const char * server_name;/* [unique] */
1379                 uint32_t level;
1380         } in;
1381
1382         struct {
1383                 uint8_t **buffer;/* [ref] */
1384                 enum NET_API_STATUS result;
1385         } out;
1386
1387 };
1388
1389
1390 struct NetServerSetInfo {
1391         struct {
1392                 const char * server_name;/* [unique] */
1393                 uint32_t level;
1394                 uint8_t *buffer;/* [ref] */
1395         } in;
1396
1397         struct {
1398                 uint32_t *parm_error;/* [ref] */
1399                 enum NET_API_STATUS result;
1400         } out;
1401
1402 };
1403
1404
1405 struct NetGetDCName {
1406         struct {
1407                 const char * server_name;/* [unique] */
1408                 const char * domain_name;/* [unique] */
1409         } in;
1410
1411         struct {
1412                 uint8_t **buffer;/* [ref] */
1413                 enum NET_API_STATUS result;
1414         } out;
1415
1416 };
1417
1418
1419 struct NetGetAnyDCName {
1420         struct {
1421                 const char * server_name;/* [unique] */
1422                 const char * domain_name;/* [unique] */
1423         } in;
1424
1425         struct {
1426                 uint8_t **buffer;/* [ref] */
1427                 enum NET_API_STATUS result;
1428         } out;
1429
1430 };
1431
1432
1433 struct DsGetDcName {
1434         struct {
1435                 const char * server_name;/* [unique] */
1436                 const char * domain_name;/* [ref] */
1437                 struct GUID *domain_guid;/* [unique] */
1438                 const char * site_name;/* [unique] */
1439                 uint32_t flags;
1440         } in;
1441
1442         struct {
1443                 struct DOMAIN_CONTROLLER_INFO **dc_info;/* [ref] */
1444                 enum NET_API_STATUS result;
1445         } out;
1446
1447 };
1448
1449
1450 struct NetUserAdd {
1451         struct {
1452                 const char * server_name;/* [unique] */
1453                 uint32_t level;
1454                 uint8_t *buffer;/* [ref] */
1455         } in;
1456
1457         struct {
1458                 uint32_t *parm_error;/* [ref] */
1459                 enum NET_API_STATUS result;
1460         } out;
1461
1462 };
1463
1464
1465 struct NetUserDel {
1466         struct {
1467                 const char * server_name;/* [unique] */
1468                 const char * user_name;/* [ref] */
1469         } in;
1470
1471         struct {
1472                 enum NET_API_STATUS result;
1473         } out;
1474
1475 };
1476
1477
1478 struct NetUserEnum {
1479         struct {
1480                 const char * server_name;/* [unique] */
1481                 uint32_t level;
1482                 uint32_t filter;
1483                 uint32_t prefmaxlen;
1484                 uint32_t *resume_handle;/* [ref] */
1485         } in;
1486
1487         struct {
1488                 uint8_t **buffer;/* [ref] */
1489                 uint32_t *entries_read;/* [ref] */
1490                 uint32_t *total_entries;/* [ref] */
1491                 uint32_t *resume_handle;/* [ref] */
1492                 enum NET_API_STATUS result;
1493         } out;
1494
1495 };
1496
1497
1498 struct NetUserChangePassword {
1499         struct {
1500                 const char * domain_name;
1501                 const char * user_name;
1502                 const char * old_password;
1503                 const char * new_password;
1504         } in;
1505
1506         struct {
1507                 enum NET_API_STATUS result;
1508         } out;
1509
1510 };
1511
1512
1513 struct NetUserGetInfo {
1514         struct {
1515                 const char * server_name;
1516                 const char * user_name;
1517                 uint32_t level;
1518         } in;
1519
1520         struct {
1521                 uint8_t **buffer;/* [ref] */
1522                 enum NET_API_STATUS result;
1523         } out;
1524
1525 };
1526
1527
1528 struct NetUserSetInfo {
1529         struct {
1530                 const char * server_name;
1531                 const char * user_name;
1532                 uint32_t level;
1533                 uint8_t *buffer;/* [ref] */
1534         } in;
1535
1536         struct {
1537                 uint32_t *parm_err;/* [ref] */
1538                 enum NET_API_STATUS result;
1539         } out;
1540
1541 };
1542
1543
1544 struct NetUserGetGroups {
1545         struct {
1546                 const char * server_name;
1547                 const char * user_name;
1548                 uint32_t level;
1549                 uint32_t prefmaxlen;
1550         } in;
1551
1552         struct {
1553                 uint8_t **buffer;/* [ref] */
1554                 uint32_t *entries_read;/* [ref] */
1555                 uint32_t *total_entries;/* [ref] */
1556                 enum NET_API_STATUS result;
1557         } out;
1558
1559 };
1560
1561
1562 struct NetUserSetGroups {
1563         struct {
1564                 const char * server_name;
1565                 const char * user_name;
1566                 uint32_t level;
1567                 uint8_t *buffer;/* [ref] */
1568                 uint32_t num_entries;
1569         } in;
1570
1571         struct {
1572                 enum NET_API_STATUS result;
1573         } out;
1574
1575 };
1576
1577
1578 struct NetUserGetLocalGroups {
1579         struct {
1580                 const char * server_name;
1581                 const char * user_name;
1582                 uint32_t level;
1583                 uint32_t flags;
1584                 uint32_t prefmaxlen;
1585         } in;
1586
1587         struct {
1588                 uint8_t **buffer;/* [ref] */
1589                 uint32_t *entries_read;/* [ref] */
1590                 uint32_t *total_entries;/* [ref] */
1591                 enum NET_API_STATUS result;
1592         } out;
1593
1594 };
1595
1596
1597 struct NetUserModalsGet {
1598         struct {
1599                 const char * server_name;
1600                 uint32_t level;
1601         } in;
1602
1603         struct {
1604                 uint8_t **buffer;/* [ref] */
1605                 enum NET_API_STATUS result;
1606         } out;
1607
1608 };
1609
1610
1611 struct NetUserModalsSet {
1612         struct {
1613                 const char * server_name;
1614                 uint32_t level;
1615                 uint8_t *buffer;/* [ref] */
1616         } in;
1617
1618         struct {
1619                 uint32_t *parm_err;/* [ref] */
1620                 enum NET_API_STATUS result;
1621         } out;
1622
1623 };
1624
1625
1626 struct NetQueryDisplayInformation {
1627         struct {
1628                 const char * server_name;/* [unique] */
1629                 uint32_t level;
1630                 uint32_t idx;
1631                 uint32_t entries_requested;
1632                 uint32_t prefmaxlen;
1633         } in;
1634
1635         struct {
1636                 uint32_t *entries_read;/* [ref] */
1637                 void **buffer;/* [noprint,ref] */
1638                 enum NET_API_STATUS result;
1639         } out;
1640
1641 };
1642
1643
1644 struct NetGroupAdd {
1645         struct {
1646                 const char * server_name;
1647                 uint32_t level;
1648                 uint8_t *buffer;/* [ref] */
1649         } in;
1650
1651         struct {
1652                 uint32_t *parm_err;/* [ref] */
1653                 enum NET_API_STATUS result;
1654         } out;
1655
1656 };
1657
1658
1659 struct NetGroupDel {
1660         struct {
1661                 const char * server_name;
1662                 const char * group_name;
1663         } in;
1664
1665         struct {
1666                 enum NET_API_STATUS result;
1667         } out;
1668
1669 };
1670
1671
1672 struct NetGroupEnum {
1673         struct {
1674                 const char * server_name;
1675                 uint32_t level;
1676                 uint32_t prefmaxlen;
1677                 uint32_t *resume_handle;/* [ref] */
1678         } in;
1679
1680         struct {
1681                 uint8_t **buffer;/* [ref] */
1682                 uint32_t *entries_read;/* [ref] */
1683                 uint32_t *total_entries;/* [ref] */
1684                 uint32_t *resume_handle;/* [ref] */
1685                 enum NET_API_STATUS result;
1686         } out;
1687
1688 };
1689
1690
1691 struct NetGroupSetInfo {
1692         struct {
1693                 const char * server_name;
1694                 const char * group_name;
1695                 uint32_t level;
1696                 uint8_t *buffer;/* [ref] */
1697         } in;
1698
1699         struct {
1700                 uint32_t *parm_err;/* [ref] */
1701                 enum NET_API_STATUS result;
1702         } out;
1703
1704 };
1705
1706
1707 struct NetGroupGetInfo {
1708         struct {
1709                 const char * server_name;
1710                 const char * group_name;
1711                 uint32_t level;
1712         } in;
1713
1714         struct {
1715                 uint8_t **buffer;/* [ref] */
1716                 enum NET_API_STATUS result;
1717         } out;
1718
1719 };
1720
1721
1722 struct NetGroupAddUser {
1723         struct {
1724                 const char * server_name;
1725                 const char * group_name;
1726                 const char * user_name;
1727         } in;
1728
1729         struct {
1730                 enum NET_API_STATUS result;
1731         } out;
1732
1733 };
1734
1735
1736 struct NetGroupDelUser {
1737         struct {
1738                 const char * server_name;
1739                 const char * group_name;
1740                 const char * user_name;
1741         } in;
1742
1743         struct {
1744                 enum NET_API_STATUS result;
1745         } out;
1746
1747 };
1748
1749
1750 struct NetGroupGetUsers {
1751         struct {
1752                 const char * server_name;
1753                 const char * group_name;
1754                 uint32_t level;
1755                 uint32_t prefmaxlen;
1756                 uint32_t *resume_handle;/* [ref] */
1757         } in;
1758
1759         struct {
1760                 uint8_t **buffer;/* [ref] */
1761                 uint32_t *entries_read;/* [ref] */
1762                 uint32_t *total_entries;/* [ref] */
1763                 uint32_t *resume_handle;/* [ref] */
1764                 enum NET_API_STATUS result;
1765         } out;
1766
1767 };
1768
1769
1770 struct NetGroupSetUsers {
1771         struct {
1772                 const char * server_name;
1773                 const char * group_name;
1774                 uint32_t level;
1775                 uint8_t *buffer;/* [ref] */
1776                 uint32_t num_entries;
1777         } in;
1778
1779         struct {
1780                 enum NET_API_STATUS result;
1781         } out;
1782
1783 };
1784
1785
1786 struct NetLocalGroupAdd {
1787         struct {
1788                 const char * server_name;
1789                 uint32_t level;
1790                 uint8_t *buffer;/* [ref] */
1791         } in;
1792
1793         struct {
1794                 uint32_t *parm_err;/* [ref] */
1795                 enum NET_API_STATUS result;
1796         } out;
1797
1798 };
1799
1800
1801 struct NetLocalGroupDel {
1802         struct {
1803                 const char * server_name;
1804                 const char * group_name;
1805         } in;
1806
1807         struct {
1808                 enum NET_API_STATUS result;
1809         } out;
1810
1811 };
1812
1813
1814 struct NetLocalGroupGetInfo {
1815         struct {
1816                 const char * server_name;
1817                 const char * group_name;
1818                 uint32_t level;
1819         } in;
1820
1821         struct {
1822                 uint8_t **buffer;/* [ref] */
1823                 enum NET_API_STATUS result;
1824         } out;
1825
1826 };
1827
1828
1829 struct NetLocalGroupSetInfo {
1830         struct {
1831                 const char * server_name;
1832                 const char * group_name;
1833                 uint32_t level;
1834                 uint8_t *buffer;/* [ref] */
1835         } in;
1836
1837         struct {
1838                 uint32_t *parm_err;/* [ref] */
1839                 enum NET_API_STATUS result;
1840         } out;
1841
1842 };
1843
1844
1845 struct NetLocalGroupEnum {
1846         struct {
1847                 const char * server_name;
1848                 uint32_t level;
1849                 uint32_t prefmaxlen;
1850                 uint32_t *resume_handle;/* [ref] */
1851         } in;
1852
1853         struct {
1854                 uint8_t **buffer;/* [ref] */
1855                 uint32_t *entries_read;/* [ref] */
1856                 uint32_t *total_entries;/* [ref] */
1857                 uint32_t *resume_handle;/* [ref] */
1858                 enum NET_API_STATUS result;
1859         } out;
1860
1861 };
1862
1863
1864 struct NetLocalGroupAddMembers {
1865         struct {
1866                 const char * server_name;
1867                 const char * group_name;
1868                 uint32_t level;
1869                 uint8_t *buffer;/* [ref] */
1870                 uint32_t total_entries;
1871         } in;
1872
1873         struct {
1874                 enum NET_API_STATUS result;
1875         } out;
1876
1877 };
1878
1879
1880 struct NetLocalGroupDelMembers {
1881         struct {
1882                 const char * server_name;
1883                 const char * group_name;
1884                 uint32_t level;
1885                 uint8_t *buffer;/* [ref] */
1886                 uint32_t total_entries;
1887         } in;
1888
1889         struct {
1890                 enum NET_API_STATUS result;
1891         } out;
1892
1893 };
1894
1895
1896 struct NetLocalGroupGetMembers {
1897         struct {
1898                 const char * server_name;
1899                 const char * local_group_name;
1900                 uint32_t level;
1901                 uint32_t prefmaxlen;
1902                 uint32_t *resume_handle;/* [ref] */
1903         } in;
1904
1905         struct {
1906                 uint8_t **buffer;/* [ref] */
1907                 uint32_t *entries_read;/* [ref] */
1908                 uint32_t *total_entries;/* [ref] */
1909                 uint32_t *resume_handle;/* [ref] */
1910                 enum NET_API_STATUS result;
1911         } out;
1912
1913 };
1914
1915
1916 struct NetLocalGroupSetMembers {
1917         struct {
1918                 const char * server_name;
1919                 const char * group_name;
1920                 uint32_t level;
1921                 uint8_t *buffer;/* [ref] */
1922                 uint32_t total_entries;
1923         } in;
1924
1925         struct {
1926                 enum NET_API_STATUS result;
1927         } out;
1928
1929 };
1930
1931
1932 struct NetRemoteTOD {
1933         struct {
1934                 const char * server_name;
1935         } in;
1936
1937         struct {
1938                 uint8_t **buffer;/* [ref] */
1939                 enum NET_API_STATUS result;
1940         } out;
1941
1942 };
1943
1944
1945 struct NetShareAdd {
1946         struct {
1947                 const char * server_name;
1948                 uint32_t level;
1949                 uint8_t *buffer;/* [ref] */
1950         } in;
1951
1952         struct {
1953                 uint32_t *parm_err;/* [ref] */
1954                 enum NET_API_STATUS result;
1955         } out;
1956
1957 };
1958
1959
1960 struct NetShareDel {
1961         struct {
1962                 const char * server_name;
1963                 const char * net_name;
1964                 uint32_t reserved;
1965         } in;
1966
1967         struct {
1968                 enum NET_API_STATUS result;
1969         } out;
1970
1971 };
1972
1973
1974 struct NetShareEnum {
1975         struct {
1976                 const char * server_name;
1977                 uint32_t level;
1978                 uint32_t prefmaxlen;
1979                 uint32_t *resume_handle;/* [ref] */
1980         } in;
1981
1982         struct {
1983                 uint8_t **buffer;/* [ref] */
1984                 uint32_t *entries_read;/* [ref] */
1985                 uint32_t *total_entries;/* [ref] */
1986                 uint32_t *resume_handle;/* [ref] */
1987                 enum NET_API_STATUS result;
1988         } out;
1989
1990 };
1991
1992
1993 struct NetShareGetInfo {
1994         struct {
1995                 const char * server_name;
1996                 const char * net_name;
1997                 uint32_t level;
1998         } in;
1999
2000         struct {
2001                 uint8_t **buffer;/* [ref] */
2002                 enum NET_API_STATUS result;
2003         } out;
2004
2005 };
2006
2007
2008 struct NetShareSetInfo {
2009         struct {
2010                 const char * server_name;
2011                 const char * net_name;
2012                 uint32_t level;
2013                 uint8_t *buffer;/* [ref] */
2014         } in;
2015
2016         struct {
2017                 uint32_t *parm_err;/* [ref] */
2018                 enum NET_API_STATUS result;
2019         } out;
2020
2021 };
2022
2023
2024 struct NetFileClose {
2025         struct {
2026                 const char * server_name;
2027                 uint32_t fileid;
2028         } in;
2029
2030         struct {
2031                 enum NET_API_STATUS result;
2032         } out;
2033
2034 };
2035
2036
2037 struct NetFileGetInfo {
2038         struct {
2039                 const char * server_name;
2040                 uint32_t fileid;
2041                 uint32_t level;
2042         } in;
2043
2044         struct {
2045                 uint8_t **buffer;/* [ref] */
2046                 enum NET_API_STATUS result;
2047         } out;
2048
2049 };
2050
2051
2052 struct NetFileEnum {
2053         struct {
2054                 const char * server_name;
2055                 const char * base_path;
2056                 const char * user_name;
2057                 uint32_t level;
2058                 uint32_t prefmaxlen;
2059                 uint32_t *resume_handle;/* [ref] */
2060         } in;
2061
2062         struct {
2063                 uint8_t **buffer;/* [ref] */
2064                 uint32_t *entries_read;/* [ref] */
2065                 uint32_t *total_entries;/* [ref] */
2066                 uint32_t *resume_handle;/* [ref] */
2067                 enum NET_API_STATUS result;
2068         } out;
2069
2070 };
2071
2072 #endif /* _HEADER_libnetapi */