re-run make idl.
[amitay/samba.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 TIMEQ_FOREVER   ( (uint32_t)-1L )
29 enum NET_API_STATUS
30 #ifndef USE_UINT_ENUMS
31  {
32         NERR_Success=0
33 }
34 #else
35  { __donnot_use_enum_NET_API_STATUS=0x7FFFFFFF}
36 #define NERR_Success ( 0 )
37 #endif
38 ;
39
40 struct domsid {
41         uint8_t sid_rev_num;
42         uint8_t num_auths;
43         uint8_t id_auth[6];
44         uint32_t *sub_auths;
45 };
46
47 /* bitmap NetJoinFlags */
48 #define NETSETUP_JOIN_DOMAIN ( 0x00000001 )
49 #define NETSETUP_ACCT_CREATE ( 0x00000002 )
50 #define NETSETUP_ACCT_DELETE ( 0x00000004 )
51 #define NETSETUP_WIN9X_UPGRADE ( 0x00000010 )
52 #define NETSETUP_DOMAIN_JOIN_IF_JOINED ( 0x00000020 )
53 #define NETSETUP_JOIN_UNSECURE ( 0x00000040 )
54 #define NETSETUP_MACHINE_PWD_PASSED ( 0x00000080 )
55 #define NETSETUP_DEFER_SPN_SET ( 0x00000100 )
56 #define NETSETUP_JOIN_DC_ACCOUNT ( 0x00000200 )
57 #define NETSETUP_JOIN_WITH_NEW_NAME ( 0x00000400 )
58 #define NETSETUP_INSTALL_INVOCATION ( 0x00040000 )
59 #define NETSETUP_IGNORE_UNSUPPORTED_FLAGS ( 0x10000000 )
60
61 enum NETSETUP_JOIN_STATUS
62 #ifndef USE_UINT_ENUMS
63  {
64         NetSetupUnknownStatus=0,
65         NetSetupUnjoined=1,
66         NetSetupWorkgroupName=2,
67         NetSetupDomainName=3
68 }
69 #else
70  { __donnot_use_enum_NETSETUP_JOIN_STATUS=0x7FFFFFFF}
71 #define NetSetupUnknownStatus ( 0 )
72 #define NetSetupUnjoined ( 1 )
73 #define NetSetupWorkgroupName ( 2 )
74 #define NetSetupDomainName ( 3 )
75 #endif
76 ;
77
78 struct SERVER_INFO_100 {
79         uint32_t sv100_platform_id;
80         const char * sv100_name;
81 };
82
83 struct SERVER_INFO_101 {
84         uint32_t sv101_platform_id;
85         const char * sv101_name;
86         uint32_t sv101_version_major;
87         uint32_t sv101_version_minor;
88         uint32_t sv101_type;
89         const char * sv101_comment;
90 };
91
92 struct SERVER_INFO_102 {
93         uint32_t sv102_platform_id;
94         const char * sv102_name;
95         uint32_t sv102_version_major;
96         uint32_t sv102_version_minor;
97         uint32_t sv102_type;
98         const char * sv102_comment;
99         uint32_t sv102_users;
100         uint32_t sv102_disc;
101         uint8_t sv102_hidden;
102         uint32_t sv102_announce;
103         uint32_t sv102_anndelta;
104         uint32_t sv102_licenses;
105         const char * sv102_userpath;
106 };
107
108 struct SERVER_INFO_1005 {
109         const char * sv1005_comment;
110 };
111
112 struct DOMAIN_CONTROLLER_INFO {
113         const char * domain_controller_name;
114         const char * domain_controller_address;
115         uint32_t domain_controller_address_type;
116         struct GUID domain_guid;
117         const char * domain_name;
118         const char * dns_forest_name;
119         uint32_t flags;
120         const char * dc_site_name;
121         const char * client_site_name;
122 };
123
124 struct USER_INFO_0 {
125         const char * usri0_name;
126 };
127
128 struct USER_INFO_1 {
129         const char * usri1_name;
130         const char * usri1_password;
131         uint32_t usri1_password_age;
132         uint32_t usri1_priv;
133         const char * usri1_home_dir;
134         const char * usri1_comment;
135         uint32_t usri1_flags;
136         const char * usri1_script_path;
137 };
138
139 struct USER_INFO_2 {
140         const char * usri2_name;
141         const char * usri2_password;
142         uint32_t usri2_password_age;
143         uint32_t usri2_priv;
144         const char * usri2_home_dir;
145         const char * usri2_comment;
146         uint32_t usri2_flags;
147         const char * usri2_script_path;
148         uint32_t usri2_auth_flags;
149         const char * usri2_full_name;
150         const char * usri2_usr_comment;
151         const char * usri2_parms;
152         const char * usri2_workstations;
153         uint32_t usri2_last_logon;
154         uint32_t usri2_last_logoff;
155         uint32_t usri2_acct_expires;
156         uint32_t usri2_max_storage;
157         uint32_t usri2_units_per_week;
158         uint8_t *usri2_logon_hours;/* [unique] */
159         uint32_t usri2_bad_pw_count;
160         uint32_t usri2_num_logons;
161         const char * usri2_logon_server;
162         uint32_t usri2_country_code;
163         uint32_t usri2_code_page;
164 };
165
166 struct USER_INFO_3 {
167         const char * usri3_name;
168         uint32_t usri3_password_age;
169         uint32_t usri3_priv;
170         const char * usri3_home_dir;
171         const char * usri3_comment;
172         uint32_t usri3_flags;
173         const char * usri3_script_path;
174         uint32_t usri3_auth_flags;
175         const char * usri3_full_name;
176         const char * usri3_usr_comment;
177         const char * usri3_parms;
178         const char * usri3_workstations;
179         uint32_t usri3_last_logon;
180         uint32_t usri3_last_logoff;
181         uint32_t usri3_acct_expires;
182         uint32_t usri3_max_storage;
183         uint32_t usri3_units_per_week;
184         uint8_t *usri3_logon_hours;/* [unique] */
185         uint32_t usri3_bad_pw_count;
186         uint32_t usri3_num_logons;
187         const char * usri3_logon_server;
188         uint32_t usri3_country_code;
189         uint32_t usri3_code_page;
190         uint32_t usri3_user_id;
191         uint32_t usri3_primary_group_id;
192         const char * usri3_profile;
193         const char * usri3_home_dir_drive;
194         uint32_t usri3_password_expired;
195 };
196
197 struct USER_INFO_4 {
198         const char * usri4_name;
199         const char * usri4_password;
200         uint32_t usri4_password_age;
201         uint32_t usri4_priv;
202         const char * usri4_home_dir;
203         const char * usri4_comment;
204         uint32_t usri4_flags;
205         const char * usri4_script_path;
206         uint32_t usri4_auth_flags;
207         const char * usri4_full_name;
208         const char * usri4_usr_comment;
209         const char * usri4_parms;
210         const char * usri4_workstations;
211         uint32_t usri4_last_logon;
212         uint32_t usri4_last_logoff;
213         uint32_t usri4_acct_expires;
214         uint32_t usri4_max_storage;
215         uint32_t usri4_units_per_week;
216         uint8_t *usri4_logon_hours;/* [unique] */
217         uint32_t usri4_bad_pw_count;
218         uint32_t usri4_num_logons;
219         const char * usri4_logon_server;
220         uint32_t usri4_country_code;
221         uint32_t usri4_code_page;
222         struct domsid *usri4_user_sid;/* [unique] */
223         uint32_t usri4_primary_group_id;
224         const char * usri4_profile;
225         const char * usri4_home_dir_drive;
226         uint32_t usri4_password_expired;
227 };
228
229 struct USER_INFO_10 {
230         const char * usri10_name;
231         const char * usri10_comment;
232         const char * usri10_usr_comment;
233         const char * usri10_full_name;
234 };
235
236 struct USER_INFO_11 {
237         const char * usri11_name;
238         const char * usri11_comment;
239         const char * usri11_usr_comment;
240         const char * usri11_full_name;
241         uint32_t usri11_priv;
242         uint32_t usri11_auth_flags;
243         uint32_t usri11_password_age;
244         const char * usri11_home_dir;
245         const char * usri11_parms;
246         uint32_t usri11_last_logon;
247         uint32_t usri11_last_logoff;
248         uint32_t usri11_bad_pw_count;
249         uint32_t usri11_num_logons;
250         const char * usri11_logon_server;
251         uint32_t usri11_country_code;
252         const char * usri11_workstations;
253         uint32_t usri11_max_storage;
254         uint32_t usri11_units_per_week;
255         uint8_t *usri11_logon_hours;/* [unique] */
256         uint32_t usri11_code_page;
257 };
258
259 struct USER_INFO_20 {
260         const char * usri20_name;
261         const char * usri20_full_name;
262         const char * usri20_comment;
263         uint32_t usri20_flags;
264         uint32_t usri20_user_id;
265 };
266
267 struct USER_INFO_21 {
268         uint8_t *usri21_password;
269 };
270
271 struct USER_INFO_22 {
272         const char * usri22_name;
273         uint8_t *usri22_password;
274         uint32_t usri22_password_age;
275         uint32_t usri22_priv;
276         const char * usri22_home_dir;
277         const char * usri22_comment;
278         uint32_t usri22_flags;
279         uint32_t usri22_script_path;
280         uint32_t usri22_auth_flags;
281         const char * usri22_full_name;
282         const char * usri22_usr_comment;
283         const char * usri22_parms;
284         const char * usri22_workstations;
285         uint32_t usri22_last_logon;
286         uint32_t usri22_last_logoff;
287         uint32_t usri22_acct_expires;
288         uint32_t usri22_max_storage;
289         uint32_t usri22_units_per_week;
290         uint8_t *usri22_logon_hours;/* [unique] */
291         uint32_t usri22_bad_pw_count;
292         uint32_t usri22_num_logons;
293         const char * usri22_logon_server;
294         uint32_t usri22_country_code;
295         uint32_t usri22_code_page;
296 };
297
298 struct USER_INFO_23 {
299         const char * usri23_name;
300         const char * usri23_full_name;
301         const char * usri23_comment;
302         uint32_t usri23_flags;
303         struct domsid *usri23_user_sid;/* [unique] */
304 };
305
306 struct USER_INFO_1003 {
307         const char * usri1003_password;
308 };
309
310 struct USER_INFO_1005 {
311         uint32_t usri1005_priv;
312 };
313
314 struct USER_INFO_1006 {
315         const char * usri1006_home_dir;
316 };
317
318 struct USER_INFO_1007 {
319         const char * usri1007_comment;
320 };
321
322 struct USER_INFO_1008 {
323         uint32_t usri1008_flags;
324 };
325
326 struct USER_INFO_1009 {
327         const char * usri1009_script_path;
328 };
329
330 struct USER_INFO_1010 {
331         uint32_t usri1010_auth_flags;
332 };
333
334 struct USER_INFO_1011 {
335         const char * usri1011_full_name;
336 };
337
338 struct USER_INFO_1012 {
339         const char * usri1012_usr_comment;
340 };
341
342 struct USER_INFO_1013 {
343         const char * usri1013_parms;
344 };
345
346 struct USER_INFO_1014 {
347         const char * usri1014_workstations;
348 };
349
350 struct USER_INFO_1017 {
351         uint32_t usri1017_acct_expires;
352 };
353
354 struct USER_INFO_1018 {
355         uint32_t usri1018_max_storage;
356 };
357
358 struct USER_INFO_1020 {
359         uint32_t usri1020_units_per_week;
360         uint8_t *usri1020_logon_hours;/* [unique] */
361 };
362
363 struct USER_INFO_1023 {
364         const char * usri1023_logon_server;
365 };
366
367 struct USER_INFO_1024 {
368         uint32_t usri1024_country_code;
369 };
370
371 struct USER_INFO_1025 {
372         uint32_t usri1025_code_page;
373 };
374
375 struct USER_INFO_1051 {
376         uint32_t usri1051_primary_group_id;
377 };
378
379 struct USER_INFO_1052 {
380         const char * usri1052_profile;
381 };
382
383 struct USER_INFO_1053 {
384         const char * usri1053_home_dir_drive;
385 };
386
387 struct USER_INFO_X {
388         const char * usriX_name;
389         const char * usriX_password;
390         uint32_t usriX_password_age;
391         uint32_t usriX_priv;
392         const char * usriX_home_dir;
393         const char * usriX_comment;
394         uint32_t usriX_flags;
395         const char * usriX_script_path;
396         uint32_t usriX_auth_flags;
397         const char * usriX_full_name;
398         const char * usriX_usr_comment;
399         const char * usriX_parms;
400         const char * usriX_workstations;
401         uint32_t usriX_last_logon;
402         uint32_t usriX_last_logoff;
403         uint32_t usriX_acct_expires;
404         uint32_t usriX_max_storage;
405         uint32_t usriX_units_per_week;
406         uint8_t *usriX_logon_hours;/* [unique] */
407         uint32_t usriX_bad_pw_count;
408         uint32_t usriX_num_logons;
409         const char * usriX_logon_server;
410         uint32_t usriX_country_code;
411         uint32_t usriX_code_page;
412         const char * usriX_profile;
413         const char * usriX_home_dir_drive;
414         uint32_t usriX_primary_group_id;
415 };
416
417 struct GROUP_USERS_INFO_0 {
418         const char * grui0_name;
419 };
420
421 struct GROUP_USERS_INFO_1 {
422         const char * grui1_name;
423         uint32_t grui1_attributes;
424 };
425
426 struct USER_MODALS_INFO_0 {
427         uint32_t usrmod0_min_passwd_len;
428         uint32_t usrmod0_max_passwd_age;
429         uint32_t usrmod0_min_passwd_age;
430         uint32_t usrmod0_force_logoff;
431         uint32_t usrmod0_password_hist_len;
432 };
433
434 struct USER_MODALS_INFO_1 {
435         uint32_t usrmod1_role;
436         const char * usrmod1_primary;
437 };
438
439 struct USER_MODALS_INFO_2 {
440         const char * usrmod2_domain_name;
441         struct domsid *usrmod2_domain_id;/* [unique] */
442 };
443
444 struct USER_MODALS_INFO_3 {
445         uint32_t usrmod3_lockout_duration;
446         uint32_t usrmod3_lockout_observation_window;
447         uint32_t usrmod3_lockout_threshold;
448 };
449
450 struct USER_MODALS_INFO_1001 {
451         uint32_t usrmod1001_min_passwd_len;
452 };
453
454 struct USER_MODALS_INFO_1002 {
455         uint32_t usrmod1002_max_passwd_age;
456 };
457
458 struct USER_MODALS_INFO_1003 {
459         uint32_t usrmod1003_min_passwd_age;
460 };
461
462 struct USER_MODALS_INFO_1004 {
463         uint32_t usrmod1004_force_logoff;
464 };
465
466 struct USER_MODALS_INFO_1005 {
467         uint32_t usrmod1005_password_hist_len;
468 };
469
470 struct USER_MODALS_INFO_1006 {
471         uint32_t usrmod1006_role;
472 };
473
474 struct USER_MODALS_INFO_1007 {
475         const char * usrmod1007_primary;
476 };
477
478 struct NET_DISPLAY_USER {
479         const char * usri1_name;
480         const char * usri1_comment;
481         uint32_t usri1_flags;
482         const char * usri1_full_name;
483         uint32_t usri1_user_id;
484         uint32_t usri1_next_index;
485 };
486
487 struct NET_DISPLAY_MACHINE {
488         const char * usri2_name;
489         const char * usri2_comment;
490         uint32_t usri2_flags;
491         uint32_t usri2_user_id;
492         uint32_t usri2_next_index;
493 };
494
495 struct NET_DISPLAY_GROUP {
496         const char * grpi3_name;
497         const char * grpi3_comment;
498         uint32_t grpi3_group_id;
499         uint32_t grpi3_attributes;
500         uint32_t grpi3_next_index;
501 };
502
503 struct GROUP_INFO_0 {
504         const char * grpi0_name;
505 };
506
507 struct GROUP_INFO_1 {
508         const char * grpi1_name;
509         const char * grpi1_comment;
510 };
511
512 struct GROUP_INFO_2 {
513         const char * grpi2_name;
514         const char * grpi2_comment;
515         uint32_t grpi2_group_id;
516         uint32_t grpi2_attributes;
517 };
518
519 struct GROUP_INFO_3 {
520         const char * grpi3_name;
521         const char * grpi3_comment;
522         struct domsid *grpi3_group_sid;/* [unique] */
523         uint32_t grpi3_attributes;
524 };
525
526 struct GROUP_INFO_1002 {
527         const char * grpi1002_comment;
528 };
529
530 struct GROUP_INFO_1005 {
531         uint32_t grpi1005_attributes;
532 };
533
534 struct LOCALGROUP_INFO_0 {
535         const char * lgrpi0_name;
536 };
537
538 struct LOCALGROUP_INFO_1 {
539         const char * lgrpi1_name;
540         const char * lgrpi1_comment;
541 };
542
543 struct LOCALGROUP_INFO_1002 {
544         const char * lgrpi1002_comment;
545 };
546
547 enum SID_NAME_USE
548 #ifndef USE_UINT_ENUMS
549  {
550         SidTypeUser=1,
551         SidTypeGroup=2,
552         SidTypeDomain=3,
553         SidTypeAlias=4,
554         SidTypeWellKnownGroup=5,
555         SidTypeDeletedAccount=6,
556         SidTypeInvalid=7,
557         SidTypeUnknown=8,
558         SidTypeComputer=9,
559         SidTypeLabel=10
560 }
561 #else
562  { __donnot_use_enum_SID_NAME_USE=0x7FFFFFFF}
563 #define SidTypeUser ( 1 )
564 #define SidTypeGroup ( 2 )
565 #define SidTypeDomain ( 3 )
566 #define SidTypeAlias ( 4 )
567 #define SidTypeWellKnownGroup ( 5 )
568 #define SidTypeDeletedAccount ( 6 )
569 #define SidTypeInvalid ( 7 )
570 #define SidTypeUnknown ( 8 )
571 #define SidTypeComputer ( 9 )
572 #define SidTypeLabel ( 10 )
573 #endif
574 ;
575
576 struct LOCALGROUP_MEMBERS_INFO_0 {
577         struct domsid *lgrmi0_sid;/* [unique] */
578 };
579
580 struct LOCALGROUP_MEMBERS_INFO_1 {
581         struct domsid *lgrmi1_sid;/* [unique] */
582         enum SID_NAME_USE lgrmi1_sidusage;
583         const char * lgrmi1_name;
584 };
585
586 struct LOCALGROUP_MEMBERS_INFO_2 {
587         struct domsid *lgrmi2_sid;/* [unique] */
588         enum SID_NAME_USE lgrmi2_sidusage;
589         const char * lgrmi2_domainandname;
590 };
591
592 struct LOCALGROUP_MEMBERS_INFO_3 {
593         const char * lgrmi3_domainandname;
594 };
595
596 struct TIME_OF_DAY_INFO {
597         uint32_t tod_elapsedt;
598         uint32_t tod_msecs;
599         uint32_t tod_hours;
600         uint32_t tod_mins;
601         uint32_t tod_secs;
602         uint32_t tod_hunds;
603         int32_t tod_timezone;
604         uint32_t tod_tinterval;
605         uint32_t tod_day;
606         uint32_t tod_month;
607         uint32_t tod_year;
608         uint32_t tod_weekday;
609 };
610
611 struct SHARE_INFO_0 {
612         const char * shi0_netname;
613 };
614
615 struct SHARE_INFO_1 {
616         const char * shi1_netname;
617         uint32_t shi1_type;
618         const char * shi1_remark;
619 };
620
621 struct SHARE_INFO_2 {
622         const char * shi2_netname;
623         uint32_t shi2_type;
624         const char * shi2_remark;
625         uint32_t shi2_permissions;
626         uint32_t shi2_max_uses;
627         uint32_t shi2_current_uses;
628         const char * shi2_path;
629         const char * shi2_passwd;
630 };
631
632 struct SHARE_INFO_501 {
633         const char * shi501_netname;
634         uint32_t shi501_type;
635         const char * shi501_remark;
636         uint32_t shi501_flags;
637 };
638
639 struct SHARE_INFO_1004 {
640         const char * shi1004_remark;
641 };
642
643 struct SHARE_INFO_1005 {
644         uint32_t shi1005_flags;
645 };
646
647 struct SHARE_INFO_1006 {
648         uint32_t shi1006_max_uses;
649 };
650
651
652 struct NetJoinDomain {
653         struct {
654                 const char * server;/* [unique] */
655                 const char * domain;/* [ref] */
656                 const char * account_ou;/* [unique] */
657                 const char * account;/* [unique] */
658                 const char * password;/* [unique] */
659                 uint32_t join_flags;
660         } in;
661
662         struct {
663                 enum NET_API_STATUS result;
664         } out;
665
666 };
667
668
669 struct NetUnjoinDomain {
670         struct {
671                 const char * server_name;/* [unique] */
672                 const char * account;/* [unique] */
673                 const char * password;/* [unique] */
674                 uint32_t unjoin_flags;
675         } in;
676
677         struct {
678                 enum NET_API_STATUS result;
679         } out;
680
681 };
682
683
684 struct NetGetJoinInformation {
685         struct {
686                 const char * server_name;/* [unique] */
687         } in;
688
689         struct {
690                 const char * *name_buffer;/* [ref] */
691                 uint16_t *name_type;/* [ref] */
692                 enum NET_API_STATUS result;
693         } out;
694
695 };
696
697
698 struct NetGetJoinableOUs {
699         struct {
700                 const char * server_name;/* [unique] */
701                 const char * domain;/* [ref] */
702                 const char * account;/* [unique] */
703                 const char * password;/* [unique] */
704         } in;
705
706         struct {
707                 uint32_t *ou_count;/* [ref] */
708                 const char * **ous;/* [ref] */
709                 enum NET_API_STATUS result;
710         } out;
711
712 };
713
714
715 struct NetRenameMachineInDomain {
716         struct {
717                 const char * server_name;
718                 const char * new_machine_name;
719                 const char * account;
720                 const char * password;
721                 uint32_t rename_options;
722         } in;
723
724         struct {
725                 enum NET_API_STATUS result;
726         } out;
727
728 };
729
730
731 struct NetServerGetInfo {
732         struct {
733                 const char * server_name;/* [unique] */
734                 uint32_t level;
735         } in;
736
737         struct {
738                 uint8_t **buffer;/* [ref] */
739                 enum NET_API_STATUS result;
740         } out;
741
742 };
743
744
745 struct NetServerSetInfo {
746         struct {
747                 const char * server_name;/* [unique] */
748                 uint32_t level;
749                 uint8_t *buffer;/* [ref] */
750         } in;
751
752         struct {
753                 uint32_t *parm_error;/* [ref] */
754                 enum NET_API_STATUS result;
755         } out;
756
757 };
758
759
760 struct NetGetDCName {
761         struct {
762                 const char * server_name;/* [unique] */
763                 const char * domain_name;/* [unique] */
764         } in;
765
766         struct {
767                 uint8_t **buffer;/* [ref] */
768                 enum NET_API_STATUS result;
769         } out;
770
771 };
772
773
774 struct NetGetAnyDCName {
775         struct {
776                 const char * server_name;/* [unique] */
777                 const char * domain_name;/* [unique] */
778         } in;
779
780         struct {
781                 uint8_t **buffer;/* [ref] */
782                 enum NET_API_STATUS result;
783         } out;
784
785 };
786
787
788 struct DsGetDcName {
789         struct {
790                 const char * server_name;/* [unique] */
791                 const char * domain_name;/* [ref] */
792                 struct GUID *domain_guid;/* [unique] */
793                 const char * site_name;/* [unique] */
794                 uint32_t flags;
795         } in;
796
797         struct {
798                 struct DOMAIN_CONTROLLER_INFO **dc_info;/* [ref] */
799                 enum NET_API_STATUS result;
800         } out;
801
802 };
803
804
805 struct NetUserAdd {
806         struct {
807                 const char * server_name;/* [unique] */
808                 uint32_t level;
809                 uint8_t *buffer;/* [ref] */
810         } in;
811
812         struct {
813                 uint32_t *parm_error;/* [ref] */
814                 enum NET_API_STATUS result;
815         } out;
816
817 };
818
819
820 struct NetUserDel {
821         struct {
822                 const char * server_name;/* [unique] */
823                 const char * user_name;/* [ref] */
824         } in;
825
826         struct {
827                 enum NET_API_STATUS result;
828         } out;
829
830 };
831
832
833 struct NetUserEnum {
834         struct {
835                 const char * server_name;/* [unique] */
836                 uint32_t level;
837                 uint32_t filter;
838                 uint32_t prefmaxlen;
839                 uint32_t *resume_handle;/* [ref] */
840         } in;
841
842         struct {
843                 uint8_t **buffer;/* [ref] */
844                 uint32_t *entries_read;/* [ref] */
845                 uint32_t *total_entries;/* [ref] */
846                 uint32_t *resume_handle;/* [ref] */
847                 enum NET_API_STATUS result;
848         } out;
849
850 };
851
852
853 struct NetUserChangePassword {
854         struct {
855                 const char * domain_name;
856                 const char * user_name;
857                 const char * old_password;
858                 const char * new_password;
859         } in;
860
861         struct {
862                 enum NET_API_STATUS result;
863         } out;
864
865 };
866
867
868 struct NetUserGetInfo {
869         struct {
870                 const char * server_name;
871                 const char * user_name;
872                 uint32_t level;
873         } in;
874
875         struct {
876                 uint8_t **buffer;/* [ref] */
877                 enum NET_API_STATUS result;
878         } out;
879
880 };
881
882
883 struct NetUserSetInfo {
884         struct {
885                 const char * server_name;
886                 const char * user_name;
887                 uint32_t level;
888                 uint8_t *buffer;/* [ref] */
889         } in;
890
891         struct {
892                 uint32_t *parm_err;/* [ref] */
893                 enum NET_API_STATUS result;
894         } out;
895
896 };
897
898
899 struct NetUserGetGroups {
900         struct {
901                 const char * server_name;
902                 const char * user_name;
903                 uint32_t level;
904                 uint32_t prefmaxlen;
905         } in;
906
907         struct {
908                 uint8_t **buffer;/* [ref] */
909                 uint32_t *entries_read;/* [ref] */
910                 uint32_t *total_entries;/* [ref] */
911                 enum NET_API_STATUS result;
912         } out;
913
914 };
915
916
917 struct NetUserModalsGet {
918         struct {
919                 const char * server_name;
920                 uint32_t level;
921         } in;
922
923         struct {
924                 uint8_t **buffer;/* [ref] */
925                 enum NET_API_STATUS result;
926         } out;
927
928 };
929
930
931 struct NetUserModalsSet {
932         struct {
933                 const char * server_name;
934                 uint32_t level;
935                 uint8_t *buffer;/* [ref] */
936         } in;
937
938         struct {
939                 uint32_t *parm_err;/* [ref] */
940                 enum NET_API_STATUS result;
941         } out;
942
943 };
944
945
946 struct NetQueryDisplayInformation {
947         struct {
948                 const char * server_name;/* [unique] */
949                 uint32_t level;
950                 uint32_t idx;
951                 uint32_t entries_requested;
952                 uint32_t prefmaxlen;
953         } in;
954
955         struct {
956                 uint32_t *entries_read;/* [ref] */
957                 void **buffer;/* [noprint,ref] */
958                 enum NET_API_STATUS result;
959         } out;
960
961 };
962
963
964 struct NetGroupAdd {
965         struct {
966                 const char * server_name;
967                 uint32_t level;
968                 uint8_t *buffer;/* [ref] */
969         } in;
970
971         struct {
972                 uint32_t *parm_err;/* [ref] */
973                 enum NET_API_STATUS result;
974         } out;
975
976 };
977
978
979 struct NetGroupDel {
980         struct {
981                 const char * server_name;
982                 const char * group_name;
983         } in;
984
985         struct {
986                 enum NET_API_STATUS result;
987         } out;
988
989 };
990
991
992 struct NetGroupEnum {
993         struct {
994                 const char * server_name;
995                 uint32_t level;
996                 uint32_t prefmaxlen;
997                 uint32_t *resume_handle;/* [ref] */
998         } in;
999
1000         struct {
1001                 uint8_t **buffer;/* [ref] */
1002                 uint32_t *entries_read;/* [ref] */
1003                 uint32_t *total_entries;/* [ref] */
1004                 uint32_t *resume_handle;/* [ref] */
1005                 enum NET_API_STATUS result;
1006         } out;
1007
1008 };
1009
1010
1011 struct NetGroupSetInfo {
1012         struct {
1013                 const char * server_name;
1014                 const char * group_name;
1015                 uint32_t level;
1016                 uint8_t *buffer;/* [ref] */
1017         } in;
1018
1019         struct {
1020                 uint32_t *parm_err;/* [ref] */
1021                 enum NET_API_STATUS result;
1022         } out;
1023
1024 };
1025
1026
1027 struct NetGroupGetInfo {
1028         struct {
1029                 const char * server_name;
1030                 const char * group_name;
1031                 uint32_t level;
1032         } in;
1033
1034         struct {
1035                 uint8_t **buffer;/* [ref] */
1036                 enum NET_API_STATUS result;
1037         } out;
1038
1039 };
1040
1041
1042 struct NetGroupAddUser {
1043         struct {
1044                 const char * server_name;
1045                 const char * group_name;
1046                 const char * user_name;
1047         } in;
1048
1049         struct {
1050                 enum NET_API_STATUS result;
1051         } out;
1052
1053 };
1054
1055
1056 struct NetGroupDelUser {
1057         struct {
1058                 const char * server_name;
1059                 const char * group_name;
1060                 const char * user_name;
1061         } in;
1062
1063         struct {
1064                 enum NET_API_STATUS result;
1065         } out;
1066
1067 };
1068
1069
1070 struct NetGroupGetUsers {
1071         struct {
1072                 const char * server_name;
1073                 const char * group_name;
1074                 uint32_t level;
1075                 uint32_t prefmaxlen;
1076                 uint32_t *resume_handle;/* [ref] */
1077         } in;
1078
1079         struct {
1080                 uint8_t **buffer;/* [ref] */
1081                 uint32_t *entries_read;/* [ref] */
1082                 uint32_t *total_entries;/* [ref] */
1083                 uint32_t *resume_handle;/* [ref] */
1084                 enum NET_API_STATUS result;
1085         } out;
1086
1087 };
1088
1089
1090 struct NetLocalGroupAdd {
1091         struct {
1092                 const char * server_name;
1093                 uint32_t level;
1094                 uint8_t *buffer;/* [ref] */
1095         } in;
1096
1097         struct {
1098                 uint32_t *parm_err;/* [ref] */
1099                 enum NET_API_STATUS result;
1100         } out;
1101
1102 };
1103
1104
1105 struct NetLocalGroupDel {
1106         struct {
1107                 const char * server_name;
1108                 const char * group_name;
1109         } in;
1110
1111         struct {
1112                 enum NET_API_STATUS result;
1113         } out;
1114
1115 };
1116
1117
1118 struct NetLocalGroupGetInfo {
1119         struct {
1120                 const char * server_name;
1121                 const char * group_name;
1122                 uint32_t level;
1123         } in;
1124
1125         struct {
1126                 uint8_t **buffer;/* [ref] */
1127                 enum NET_API_STATUS result;
1128         } out;
1129
1130 };
1131
1132
1133 struct NetLocalGroupSetInfo {
1134         struct {
1135                 const char * server_name;
1136                 const char * group_name;
1137                 uint32_t level;
1138                 uint8_t *buffer;/* [ref] */
1139         } in;
1140
1141         struct {
1142                 uint32_t *parm_err;/* [ref] */
1143                 enum NET_API_STATUS result;
1144         } out;
1145
1146 };
1147
1148
1149 struct NetLocalGroupEnum {
1150         struct {
1151                 const char * server_name;
1152                 uint32_t level;
1153                 uint32_t prefmaxlen;
1154                 uint32_t *resume_handle;/* [ref] */
1155         } in;
1156
1157         struct {
1158                 uint8_t **buffer;/* [ref] */
1159                 uint32_t *entries_read;/* [ref] */
1160                 uint32_t *total_entries;/* [ref] */
1161                 uint32_t *resume_handle;/* [ref] */
1162                 enum NET_API_STATUS result;
1163         } out;
1164
1165 };
1166
1167
1168 struct NetLocalGroupAddMembers {
1169         struct {
1170                 const char * server_name;
1171                 const char * group_name;
1172                 uint32_t level;
1173                 uint8_t *buffer;/* [ref] */
1174                 uint32_t total_entries;
1175         } in;
1176
1177         struct {
1178                 enum NET_API_STATUS result;
1179         } out;
1180
1181 };
1182
1183
1184 struct NetLocalGroupDelMembers {
1185         struct {
1186                 const char * server_name;
1187                 const char * group_name;
1188                 uint32_t level;
1189                 uint8_t *buffer;/* [ref] */
1190                 uint32_t total_entries;
1191         } in;
1192
1193         struct {
1194                 enum NET_API_STATUS result;
1195         } out;
1196
1197 };
1198
1199
1200 struct NetLocalGroupGetMembers {
1201         struct {
1202                 const char * server_name;
1203                 const char * local_group_name;
1204                 uint32_t level;
1205                 uint32_t prefmaxlen;
1206                 uint32_t *resume_handle;/* [ref] */
1207         } in;
1208
1209         struct {
1210                 uint8_t **buffer;/* [ref] */
1211                 uint32_t *entries_read;/* [ref] */
1212                 uint32_t *total_entries;/* [ref] */
1213                 uint32_t *resume_handle;/* [ref] */
1214                 enum NET_API_STATUS result;
1215         } out;
1216
1217 };
1218
1219
1220 struct NetLocalGroupSetMembers {
1221         struct {
1222                 const char * server_name;
1223                 const char * group_name;
1224                 uint32_t level;
1225                 uint8_t *buffer;/* [ref] */
1226                 uint32_t total_entries;
1227         } in;
1228
1229         struct {
1230                 enum NET_API_STATUS result;
1231         } out;
1232
1233 };
1234
1235
1236 struct NetRemoteTOD {
1237         struct {
1238                 const char * server_name;
1239         } in;
1240
1241         struct {
1242                 uint8_t **buffer;/* [ref] */
1243                 enum NET_API_STATUS result;
1244         } out;
1245
1246 };
1247
1248
1249 struct NetShareAdd {
1250         struct {
1251                 const char * server_name;
1252                 uint32_t level;
1253                 uint8_t *buffer;/* [ref] */
1254         } in;
1255
1256         struct {
1257                 uint32_t *parm_err;/* [ref] */
1258                 enum NET_API_STATUS result;
1259         } out;
1260
1261 };
1262
1263
1264 struct NetShareDel {
1265         struct {
1266                 const char * server_name;
1267                 const char * net_name;
1268                 uint32_t reserved;
1269         } in;
1270
1271         struct {
1272                 enum NET_API_STATUS result;
1273         } out;
1274
1275 };
1276
1277
1278 struct NetShareEnum {
1279         struct {
1280                 const char * server_name;
1281                 uint32_t level;
1282                 uint32_t prefmaxlen;
1283                 uint32_t *resume_handle;/* [ref] */
1284         } in;
1285
1286         struct {
1287                 uint8_t **buffer;/* [ref] */
1288                 uint32_t *entries_read;/* [ref] */
1289                 uint32_t *total_entries;/* [ref] */
1290                 uint32_t *resume_handle;/* [ref] */
1291                 enum NET_API_STATUS result;
1292         } out;
1293
1294 };
1295
1296
1297 struct NetShareGetInfo {
1298         struct {
1299                 const char * server_name;
1300                 const char * net_name;
1301                 uint32_t level;
1302         } in;
1303
1304         struct {
1305                 uint8_t **buffer;/* [ref] */
1306                 enum NET_API_STATUS result;
1307         } out;
1308
1309 };
1310
1311
1312 struct NetShareSetInfo {
1313         struct {
1314                 const char * server_name;
1315                 const char * net_name;
1316                 uint32_t level;
1317                 uint8_t *buffer;/* [ref] */
1318         } in;
1319
1320         struct {
1321                 uint32_t *parm_err;/* [ref] */
1322                 enum NET_API_STATUS result;
1323         } out;
1324
1325 };
1326
1327 #endif /* _HEADER_libnetapi */