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