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