changed wks to wkssvc (suggestion from metze). Started adding samr_CreateUser().
[jelmer/samba4-debian.git] / source / librpc / ndr / ndr_samr.h
1 /* header auto-generated by pidl */
2
3 #define DCERPC_SAMR_UUID "12345778-1234-abcd-ef00-0123456789ac"
4 #define DCERPC_SAMR_VERSION 1.0
5 #define DCERPC_SAMR_NAME "samr"
6
7 #define DCERPC_SAMR_CONNECT 0
8 #define DCERPC_SAMR_CLOSE 1
9 #define DCERPC_SAMR_SETSECURITY 2
10 #define DCERPC_SAMR_QUERYSECURITY 3
11 #define DCERPC_SAMR_SHUTDOWN 4
12 #define DCERPC_SAMR_LOOKUPDOMAIN 5
13 #define DCERPC_SAMR_ENUMDOMAINS 6
14 #define DCERPC_SAMR_OPENDOMAIN 7
15 #define DCERPC_SAMR_QUERYDOMAININFO 8
16 #define DCERPC_SAMR_SET_DOMAIN_INFO 9
17 #define DCERPC_SAMR_CREATE_DOM_GROUP 10
18 #define DCERPC_SAMR_ENUMDOMAINGROUPS 11
19 #define DCERPC_SAMR_CREATEUSER 12
20 #define DCERPC_SAMR_ENUMDOMAINUSERS 13
21 #define DCERPC_SAMR_CREATE_DOM_ALIAS 14
22 #define DCERPC_SAMR_ENUMDOMAINALIASES 15
23 #define DCERPC_SAMR_GETALIASMEMBERSHIP 16
24 #define DCERPC_SAMR_LOOKUP_NAMES 17
25 #define DCERPC_SAMR_LOOKUP_RIDS 18
26 #define DCERPC_SAMR_OPENGROUP 19
27 #define DCERPC_SAMR_QUERYGROUPINFO 20
28 #define DCERPC_SAMR_SET_GROUPINFO 21
29 #define DCERPC_SAMR_ADD_GROUPMEM 22
30 #define DCERPC_SAMR_DELETE_DOM_GROUP 23
31 #define DCERPC_SAMR_DEL_GROUPMEM 24
32 #define DCERPC_SAMR_QUERY_GROUPMEM 25
33 #define DCERPC_SAMR_SET_MEMBER_ATTRIBUTES_OF_GROUP 26
34 #define DCERPC_SAMR_OPENALIAS 27
35 #define DCERPC_SAMR_QUERYALIASINFO 28
36 #define DCERPC_SAMR_SET_ALIASINFO 29
37 #define DCERPC_SAMR_DELETE_DOM_ALIAS 30
38 #define DCERPC_SAMR_ADD_ALIASMEM 31
39 #define DCERPC_SAMR_DEL_ALIASMEM 32
40 #define DCERPC_SAMR_GET_MEMBERS_IN_ALIAS 33
41 #define DCERPC_SAMR_OPENUSER 34
42 #define DCERPC_SAMR_DELETEUSER 35
43 #define DCERPC_SAMR_QUERYUSERINFO 36
44 #define DCERPC_SAMR_SET_USERINFO 37
45 #define DCERPC_SAMR_CHANGE_PASSWORD_USER 38
46 #define DCERPC_SAMR_GET_GROUPS_FOR_USER 39
47 #define DCERPC_SAMR_QUERY_DISPINFO 40
48 #define DCERPC_SAMR_GET_DISPLAY_ENUMERATION_INDEX 41
49 #define DCERPC_SAMR_TEST_PRIVATE_FUNCTIONS_DOMAIN 42
50 #define DCERPC_SAMR_TEST_PRIVATE_FUNCTIONS_USER 43
51 #define DCERPC_SAMR_GET_USRDOM_PWINFO 44
52 #define DCERPC_SAMR_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN 45
53 #define DCERPC_SAMR_QUERY_INFORMATION_DOMAIN2 46
54 #define DCERPC_SAMR_QUERY_INFORMATION_USER2 47
55 #define DCERPC_SAMR_QUERY_DISPINFO2 48
56 #define DCERPC_SAMR_GET_DISPLAY_ENUMERATION_INDEX2 49
57 #define DCERPC_SAMR_CREATE_USER2_IN_DOMAIN 50
58 #define DCERPC_SAMR_QUERY_DISPINFO3 51
59 #define DCERPC_SAMR_ADD_MULTIPLE_MEMBERS_TO_ALIAS 52
60 #define DCERPC_SAMR_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS 53
61 #define DCERPC_SAMR_OEM_CHANGE_PASSWORD_USER2 54
62 #define DCERPC_SAMR_UNICODE_CHANGE_PASSWORD_USER2 55
63 #define DCERPC_SAMR_GET_DOM_PWINFO 56
64 #define DCERPC_SAMR_CONNECT2 57
65 #define DCERPC_SAMR_SET_USERINFO2 58
66 #define DCERPC_SAMR_SET_BOOT_KEY_INFORMATION 59
67 #define DCERPC_SAMR_GET_BOOT_KEY_INFORMATION 60
68 #define DCERPC_SAMR_CONNECT3 61
69 #define DCERPC_SAMR_CONNECT4 62
70 #define DCERPC_SAMR_UNICODE_CHANGE_PASSWORD_USER3 63
71 #define DCERPC_SAMR_CONNECT5 64
72 #define DCERPC_SAMR_RID_TO_SID 65
73 #define DCERPC_SAMR_SET_DSRM_PASSWORD 66
74 #define DCERPC_SAMR_VALIDATE_PASSWORD 67
75
76
77 struct samr_Connect {
78         struct {
79                 uint16 *system_name;
80                 uint32 access_mask;
81         } in;
82
83         struct {
84                 struct policy_handle *handle;
85                 NTSTATUS result;
86         } out;
87
88 };
89
90 struct samr_Close {
91         struct {
92                 struct policy_handle *handle;
93         } in;
94
95         struct {
96                 struct policy_handle *handle;
97                 NTSTATUS result;
98         } out;
99
100 };
101
102 struct samr_SetSecurity {
103         struct {
104         } in;
105
106         struct {
107                 NTSTATUS result;
108         } out;
109
110 };
111
112 struct samr_QuerySecurity {
113         struct {
114                 struct policy_handle *handle;
115                 uint32 sec_info;
116         } in;
117
118         struct {
119                 uint32 *length;
120                 struct security_descriptor *sd;
121                 NTSTATUS result;
122         } out;
123
124 };
125
126 struct samr_Shutdown {
127         struct {
128         } in;
129
130         struct {
131                 NTSTATUS result;
132         } out;
133
134 };
135
136 struct samr_Name {
137         uint16 name_len;
138         uint16 name_size;
139         const char *name;
140 };
141
142 struct samr_LookupDomain {
143         struct {
144                 struct policy_handle *handle;
145                 struct samr_Name *domain;
146         } in;
147
148         struct {
149                 struct dom_sid2 *sid;
150                 NTSTATUS result;
151         } out;
152
153 };
154
155 struct samr_SamEntry {
156         uint32 idx;
157         struct samr_Name name;
158 };
159
160 struct samr_SamArray {
161         uint32 count;
162         struct samr_SamEntry *entries;
163 };
164
165 struct samr_EnumDomains {
166         struct {
167                 struct policy_handle *handle;
168                 uint32 *resume_handle;
169                 uint32 buf_size;
170         } in;
171
172         struct {
173                 uint32 *resume_handle;
174                 struct samr_SamArray *sam;
175                 uint32 *num_entries;
176                 NTSTATUS result;
177         } out;
178
179 };
180
181 struct samr_OpenDomain {
182         struct {
183                 struct policy_handle *handle;
184                 uint32 access_mask;
185                 struct dom_sid2 *sid;
186         } in;
187
188         struct {
189                 struct policy_handle *domain_handle;
190                 NTSTATUS result;
191         } out;
192
193 };
194
195 struct samr_DomInfo1 {
196         uint16 min_length_password;
197         uint16 password_history;
198         uint32 flag;
199         NTTIME expire;
200         NTTIME min_passwordage;
201 };
202
203 struct samr_DomInfo2 {
204         HYPER_T force_logoff_time;
205         struct samr_Name unknown1;
206         struct samr_Name domain;
207         struct samr_Name primary;
208         HYPER_T sequence_num;
209         uint32 unknown2;
210         uint32 role;
211         uint32 unknown3;
212         uint32 num_users;
213         uint32 num_groups;
214         uint32 num_aliases;
215 };
216
217 struct samr_DomInfo3 {
218         HYPER_T force_logoff_time;
219 };
220
221 struct samr_DomInfo4 {
222         struct samr_Name unknown;
223 };
224
225 struct samr_DomInfo5 {
226         struct samr_Name domain;
227 };
228
229 struct samr_DomInfo6 {
230         struct samr_Name primary;
231 };
232
233 struct samr_DomInfo7 {
234         uint32 role;
235 };
236
237 struct samr_DomInfo8 {
238         HYPER_T sequence_num;
239         NTTIME last_xxx_time;
240 };
241
242 struct samr_DomInfo9 {
243         uint32 unknown;
244 };
245
246 struct samr_DomInfo11 {
247         HYPER_T force_logoff_time;
248         struct samr_Name unknown1;
249         struct samr_Name domain;
250         struct samr_Name primary;
251         HYPER_T sequence_num;
252         uint32 unknown2;
253         uint32 role;
254         uint32 unknown3;
255         uint32 num_users;
256         uint32 num_groups;
257         uint32 num_aliases;
258         HYPER_T lockout_duration;
259         HYPER_T lockout_window;
260         uint16 lockout_threshold;
261 };
262
263 struct samr_DomInfo12 {
264         HYPER_T lockout_duration;
265         HYPER_T lockout_window;
266         uint16 lockout_threshold;
267 };
268
269 struct samr_DomInfo13 {
270         HYPER_T sequence_num;
271         NTTIME last_xxx_time;
272         uint32 unknown1;
273         uint32 unknown2;
274 };
275
276 union samr_DomainInfo {
277 /* [case(1)] */ struct samr_DomInfo1 info1;
278 /* [case(2)] */ struct samr_DomInfo2 info2;
279 /* [case(3)] */ struct samr_DomInfo3 info3;
280 /* [case(4)] */ struct samr_DomInfo4 info4;
281 /* [case(5)] */ struct samr_DomInfo5 info5;
282 /* [case(6)] */ struct samr_DomInfo6 info6;
283 /* [case(7)] */ struct samr_DomInfo7 info7;
284 /* [case(8)] */ struct samr_DomInfo8 info8;
285 /* [case(9)] */ struct samr_DomInfo9 info9;
286 /* [case(11)] */ struct samr_DomInfo11 info11;
287 /* [case(12)] */ struct samr_DomInfo12 info12;
288 /* [case(13)] */ struct samr_DomInfo13 info13;
289 };
290
291 struct samr_QueryDomainInfo {
292         struct {
293                 struct policy_handle *handle;
294                 uint16 level;
295         } in;
296
297         struct {
298                 union samr_DomainInfo *info;
299                 NTSTATUS result;
300         } out;
301
302 };
303
304 struct samr_SET_DOMAIN_INFO {
305         struct {
306         } in;
307
308         struct {
309                 NTSTATUS result;
310         } out;
311
312 };
313
314 struct samr_CREATE_DOM_GROUP {
315         struct {
316         } in;
317
318         struct {
319                 NTSTATUS result;
320         } out;
321
322 };
323
324 struct samr_EnumDomainGroups {
325         struct {
326                 struct policy_handle *handle;
327                 uint32 *resume_handle;
328                 uint32 max_size;
329         } in;
330
331         struct {
332                 uint32 *resume_handle;
333                 struct samr_SamArray *sam;
334                 uint32 num_entries;
335                 NTSTATUS result;
336         } out;
337
338 };
339
340 struct samr_CreateUser {
341         struct {
342                 struct policy_handle *handle;
343                 struct samr_Name *username;
344                 uint32 access_mask;
345         } in;
346
347         struct {
348                 struct policy_handle *acct_handle;
349                 uint32 *rid;
350                 NTSTATUS result;
351         } out;
352
353 };
354
355 struct samr_EnumDomainUsers {
356         struct {
357                 struct policy_handle *handle;
358                 uint32 *resume_handle;
359                 uint32 acct_flags;
360                 uint32 max_size;
361         } in;
362
363         struct {
364                 uint32 *resume_handle;
365                 struct samr_SamArray *sam;
366                 uint32 num_entries;
367                 NTSTATUS result;
368         } out;
369
370 };
371
372 struct samr_CREATE_DOM_ALIAS {
373         struct {
374         } in;
375
376         struct {
377                 NTSTATUS result;
378         } out;
379
380 };
381
382 struct samr_EnumDomainAliases {
383         struct {
384                 struct policy_handle *handle;
385                 uint32 *resume_handle;
386                 uint32 max_size;
387         } in;
388
389         struct {
390                 uint32 *resume_handle;
391                 struct samr_SamArray *sam;
392                 uint32 num_entries;
393                 NTSTATUS result;
394         } out;
395
396 };
397
398 struct samr_Sids {
399         uint32 count;
400         struct dom_sid2 *sids;
401 };
402
403 struct samr_Rids {
404         uint32 count;
405         uint32 *rids;
406 };
407
408 struct samr_GetAliasMembership {
409         struct {
410                 struct policy_handle *handle;
411                 struct samr_Sids *sids;
412         } in;
413
414         struct {
415                 struct samr_Rids *rids;
416                 NTSTATUS result;
417         } out;
418
419 };
420
421 struct samr_LOOKUP_NAMES {
422         struct {
423         } in;
424
425         struct {
426                 NTSTATUS result;
427         } out;
428
429 };
430
431 struct samr_LOOKUP_RIDS {
432         struct {
433         } in;
434
435         struct {
436                 NTSTATUS result;
437         } out;
438
439 };
440
441 struct samr_OpenGroup {
442         struct {
443                 struct policy_handle *handle;
444                 uint32 access_mask;
445                 uint32 rid;
446         } in;
447
448         struct {
449                 struct policy_handle *acct_handle;
450                 NTSTATUS result;
451         } out;
452
453 };
454
455 struct samr_GroupInfoAll {
456         struct samr_Name name;
457         uint32 unknown;
458         uint32 num_members;
459         struct samr_Name description;
460 };
461
462 struct samr_GroupInfoName {
463         struct samr_Name Name;
464 };
465
466 struct samr_GroupInfoX {
467         uint32 unknown;
468 };
469
470 struct samr_GroupInfoDesciption {
471         struct samr_Name description;
472 };
473
474 union samr_GroupInfo {
475 /* [case(1)] */ struct samr_GroupInfoAll all;
476 /* [case(2)] */ struct samr_GroupInfoName name;
477 /* [case(3)] */ struct samr_GroupInfoX unknown;
478 /* [case(4)] */ struct samr_GroupInfoDesciption description;
479 };
480
481 struct samr_QueryGroupInfo {
482         struct {
483                 struct policy_handle *handle;
484                 uint16 level;
485         } in;
486
487         struct {
488                 union samr_GroupInfo *info;
489                 NTSTATUS result;
490         } out;
491
492 };
493
494 struct samr_SET_GROUPINFO {
495         struct {
496         } in;
497
498         struct {
499                 NTSTATUS result;
500         } out;
501
502 };
503
504 struct samr_ADD_GROUPMEM {
505         struct {
506         } in;
507
508         struct {
509                 NTSTATUS result;
510         } out;
511
512 };
513
514 struct samr_DELETE_DOM_GROUP {
515         struct {
516         } in;
517
518         struct {
519                 NTSTATUS result;
520         } out;
521
522 };
523
524 struct samr_DEL_GROUPMEM {
525         struct {
526         } in;
527
528         struct {
529                 NTSTATUS result;
530         } out;
531
532 };
533
534 struct samr_QUERY_GROUPMEM {
535         struct {
536         } in;
537
538         struct {
539                 NTSTATUS result;
540         } out;
541
542 };
543
544 struct samr_SET_MEMBER_ATTRIBUTES_OF_GROUP {
545         struct {
546         } in;
547
548         struct {
549                 NTSTATUS result;
550         } out;
551
552 };
553
554 struct samr_OpenAlias {
555         struct {
556                 struct policy_handle *handle;
557                 uint32 access_mask;
558                 uint32 rid;
559         } in;
560
561         struct {
562                 struct policy_handle *acct_handle;
563                 NTSTATUS result;
564         } out;
565
566 };
567
568 struct samr_AliasInfoAll {
569         struct samr_Name name;
570         uint32 num_members;
571         struct samr_Name description;
572 };
573
574 struct samr_AliasInfoName {
575         struct samr_Name name;
576 };
577
578 struct samr_AliasInfoDescription {
579         struct samr_Name description;
580 };
581
582 union samr_AliasInfo {
583 /* [case(1)] */ struct samr_AliasInfoAll all;
584 /* [case(2)] */ struct samr_AliasInfoName name;
585 /* [case(3)] */ struct samr_AliasInfoDescription description;
586 };
587
588 struct samr_QueryAliasInfo {
589         struct {
590                 struct policy_handle *handle;
591                 uint16 level;
592         } in;
593
594         struct {
595                 union samr_AliasInfo *info;
596                 NTSTATUS result;
597         } out;
598
599 };
600
601 struct samr_SET_ALIASINFO {
602         struct {
603         } in;
604
605         struct {
606                 NTSTATUS result;
607         } out;
608
609 };
610
611 struct samr_DELETE_DOM_ALIAS {
612         struct {
613         } in;
614
615         struct {
616                 NTSTATUS result;
617         } out;
618
619 };
620
621 struct samr_ADD_ALIASMEM {
622         struct {
623         } in;
624
625         struct {
626                 NTSTATUS result;
627         } out;
628
629 };
630
631 struct samr_DEL_ALIASMEM {
632         struct {
633         } in;
634
635         struct {
636                 NTSTATUS result;
637         } out;
638
639 };
640
641 struct samr_GET_MEMBERS_IN_ALIAS {
642         struct {
643         } in;
644
645         struct {
646                 NTSTATUS result;
647         } out;
648
649 };
650
651 struct samr_OpenUser {
652         struct {
653                 struct policy_handle *handle;
654                 uint32 access_mask;
655                 uint32 rid;
656         } in;
657
658         struct {
659                 struct policy_handle *acct_handle;
660                 NTSTATUS result;
661         } out;
662
663 };
664
665 struct samr_DeleteUser {
666         struct {
667                 struct policy_handle *handle;
668         } in;
669
670         struct {
671                 struct policy_handle *handle;
672                 NTSTATUS result;
673         } out;
674
675 };
676
677 struct samr_UserInfo1 {
678         struct samr_Name username;
679         struct samr_Name full_name;
680         uint32 primary_group_rid;
681         struct samr_Name description;
682         struct samr_Name comment;
683 };
684
685 struct samr_UserInfo2 {
686         struct samr_Name comment;
687         uint32 unknown1;
688         uint32 unknown2;
689         uint16 country_code;
690         uint16 code_page;
691 };
692
693 struct samr_UserInfo3 {
694         struct samr_Name username;
695         struct samr_Name full_name;
696         uint32 Rid;
697         uint32 primary_group_rid;
698         struct samr_Name home_directory;
699         struct samr_Name home_drive;
700         struct samr_Name logon_script;
701         struct samr_Name profile;
702         struct samr_Name workstations;
703         NTTIME last_logon;
704         NTTIME last_logoff;
705         NTTIME last_pwd_change;
706         NTTIME allow_pwd_change;
707         NTTIME force_pwd_change;
708         uint32 units_per_week;
709         uint8 *logon_hours;
710         uint16 bad_pwd_count;
711         uint16 num_logons;
712         uint32 acct_flags;
713 };
714
715 struct samr_UserInfo4 {
716         uint32 units_per_week;
717         uint8 *logon_hours;
718 };
719
720 struct samr_UserInfo5 {
721         struct samr_Name username;
722         struct samr_Name full_name;
723         uint32 rid;
724         uint32 primary_group_rid;
725         struct samr_Name home_directory;
726         struct samr_Name home_drive;
727         struct samr_Name logon_script;
728         struct samr_Name profile;
729         struct samr_Name descriptiom;
730         struct samr_Name workstations;
731         NTTIME last_logon;
732         NTTIME last_logoff;
733         uint32 units_per_week;
734         uint8 *logon_hours;
735         uint32 unknown;
736         NTTIME last_pwd_change;
737         NTTIME acct_expiry;
738         uint32 acct_flags;
739 };
740
741 struct samr_UserInfo6 {
742         struct samr_Name username;
743         struct samr_Name full_name;
744 };
745
746 struct samr_UserInfo7 {
747         struct samr_Name username;
748 };
749
750 struct samr_UserInfo8 {
751         struct samr_Name full_name;
752 };
753
754 struct samr_UserInfo9 {
755         uint32 PrimaryGroupRid;
756 };
757
758 struct samr_UserInfo10 {
759         struct samr_Name home_dir;
760         struct samr_Name home_drive;
761 };
762
763 struct samr_UserInfo11 {
764         struct samr_Name logon_script;
765 };
766
767 struct samr_UserInfo12 {
768         struct samr_Name profile;
769 };
770
771 struct samr_UserInfo13 {
772         struct samr_Name descriptiom;
773 };
774
775 struct samr_UserInfo14 {
776         struct samr_Name workstations;
777 };
778
779 struct samr_UserInfo16 {
780         uint32 acct_flags;
781 };
782
783 struct samr_UserInfo17 {
784         NTTIME acct_expiry;
785 };
786
787 struct samr_UserInfo20 {
788         struct samr_Name callback;
789 };
790
791 struct samr_UserInfo21 {
792         NTTIME last_logon;
793         NTTIME last_logoff;
794         NTTIME last_pwd_change;
795         NTTIME acct_expiry;
796         NTTIME allow_pwd_change;
797         NTTIME force_pwd_change;
798         struct samr_Name username;
799         struct samr_Name full_name;
800         struct samr_Name home_dir;
801         struct samr_Name home_drive;
802         struct samr_Name logon_script;
803         struct samr_Name profile;
804         struct samr_Name description;
805         struct samr_Name workstations;
806         struct samr_Name comment;
807         struct samr_Name callback;
808         struct samr_Name unknown1;
809         struct samr_Name unknown2;
810         struct samr_Name unknown3;
811         uint32 buf_count;
812         uint8 *buffer;
813         uint32 rid;
814         uint32 primary_group_rid;
815         uint32 acct_flags;
816         uint32 fields_present;
817         uint32 units_per_week;
818         uint8 *logon_hours;
819         uint16 bad_pwd_count;
820         uint16 num_logons;
821         uint16 country_code;
822         uint16 code_page;
823         uint8 nt_pwd_set;
824         uint8 lm_pwd_set;
825         uint8 expired_flag;
826         uint8 unknown4;
827 };
828
829 union samr_UserInfo {
830 /* [case(1)] */ struct samr_UserInfo1 info1;
831 /* [case(2)] */ struct samr_UserInfo2 info2;
832 /* [case(3)] */ struct samr_UserInfo3 info3;
833 /* [case(4)] */ struct samr_UserInfo4 info4;
834 /* [case(5)] */ struct samr_UserInfo5 info5;
835 /* [case(6)] */ struct samr_UserInfo6 info6;
836 /* [case(7)] */ struct samr_UserInfo7 info7;
837 /* [case(8)] */ struct samr_UserInfo8 info8;
838 /* [case(9)] */ struct samr_UserInfo9 info9;
839 /* [case(10)] */ struct samr_UserInfo10 info10;
840 /* [case(11)] */ struct samr_UserInfo11 info11;
841 /* [case(12)] */ struct samr_UserInfo12 info12;
842 /* [case(13)] */ struct samr_UserInfo13 info13;
843 /* [case(14)] */ struct samr_UserInfo14 info14;
844 /* [case(16)] */ struct samr_UserInfo16 info16;
845 /* [case(17)] */ struct samr_UserInfo17 info17;
846 /* [case(20)] */ struct samr_UserInfo20 info20;
847 /* [case(21)] */ struct samr_UserInfo21 info21;
848 };
849
850 struct samr_QueryUserInfo {
851         struct {
852                 struct policy_handle *handle;
853                 uint16 level;
854         } in;
855
856         struct {
857                 union samr_UserInfo *info;
858                 NTSTATUS result;
859         } out;
860
861 };
862
863 struct samr_SET_USERINFO {
864         struct {
865         } in;
866
867         struct {
868                 NTSTATUS result;
869         } out;
870
871 };
872
873 struct samr_CHANGE_PASSWORD_USER {
874         struct {
875         } in;
876
877         struct {
878                 NTSTATUS result;
879         } out;
880
881 };
882
883 struct samr_GET_GROUPS_FOR_USER {
884         struct {
885         } in;
886
887         struct {
888                 NTSTATUS result;
889         } out;
890
891 };
892
893 struct samr_QUERY_DISPINFO {
894         struct {
895         } in;
896
897         struct {
898                 NTSTATUS result;
899         } out;
900
901 };
902
903 struct samr_GET_DISPLAY_ENUMERATION_INDEX {
904         struct {
905         } in;
906
907         struct {
908                 NTSTATUS result;
909         } out;
910
911 };
912
913 struct samr_TEST_PRIVATE_FUNCTIONS_DOMAIN {
914         struct {
915         } in;
916
917         struct {
918                 NTSTATUS result;
919         } out;
920
921 };
922
923 struct samr_TEST_PRIVATE_FUNCTIONS_USER {
924         struct {
925         } in;
926
927         struct {
928                 NTSTATUS result;
929         } out;
930
931 };
932
933 struct samr_GET_USRDOM_PWINFO {
934         struct {
935         } in;
936
937         struct {
938                 NTSTATUS result;
939         } out;
940
941 };
942
943 struct samr_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN {
944         struct {
945         } in;
946
947         struct {
948                 NTSTATUS result;
949         } out;
950
951 };
952
953 struct samr_QUERY_INFORMATION_DOMAIN2 {
954         struct {
955         } in;
956
957         struct {
958                 NTSTATUS result;
959         } out;
960
961 };
962
963 struct samr_QUERY_INFORMATION_USER2 {
964         struct {
965         } in;
966
967         struct {
968                 NTSTATUS result;
969         } out;
970
971 };
972
973 struct samr_QUERY_DISPINFO2 {
974         struct {
975         } in;
976
977         struct {
978                 NTSTATUS result;
979         } out;
980
981 };
982
983 struct samr_GET_DISPLAY_ENUMERATION_INDEX2 {
984         struct {
985         } in;
986
987         struct {
988                 NTSTATUS result;
989         } out;
990
991 };
992
993 struct samr_CREATE_USER2_IN_DOMAIN {
994         struct {
995         } in;
996
997         struct {
998                 NTSTATUS result;
999         } out;
1000
1001 };
1002
1003 struct samr_QUERY_DISPINFO3 {
1004         struct {
1005         } in;
1006
1007         struct {
1008                 NTSTATUS result;
1009         } out;
1010
1011 };
1012
1013 struct samr_ADD_MULTIPLE_MEMBERS_TO_ALIAS {
1014         struct {
1015         } in;
1016
1017         struct {
1018                 NTSTATUS result;
1019         } out;
1020
1021 };
1022
1023 struct samr_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS {
1024         struct {
1025         } in;
1026
1027         struct {
1028                 NTSTATUS result;
1029         } out;
1030
1031 };
1032
1033 struct samr_OEM_CHANGE_PASSWORD_USER2 {
1034         struct {
1035         } in;
1036
1037         struct {
1038                 NTSTATUS result;
1039         } out;
1040
1041 };
1042
1043 struct samr_UNICODE_CHANGE_PASSWORD_USER2 {
1044         struct {
1045         } in;
1046
1047         struct {
1048                 NTSTATUS result;
1049         } out;
1050
1051 };
1052
1053 struct samr_GET_DOM_PWINFO {
1054         struct {
1055         } in;
1056
1057         struct {
1058                 NTSTATUS result;
1059         } out;
1060
1061 };
1062
1063 struct samr_CONNECT2 {
1064         struct {
1065         } in;
1066
1067         struct {
1068                 NTSTATUS result;
1069         } out;
1070
1071 };
1072
1073 struct samr_SET_USERINFO2 {
1074         struct {
1075         } in;
1076
1077         struct {
1078                 NTSTATUS result;
1079         } out;
1080
1081 };
1082
1083 struct samr_SET_BOOT_KEY_INFORMATION {
1084         struct {
1085         } in;
1086
1087         struct {
1088                 NTSTATUS result;
1089         } out;
1090
1091 };
1092
1093 struct samr_GET_BOOT_KEY_INFORMATION {
1094         struct {
1095         } in;
1096
1097         struct {
1098                 NTSTATUS result;
1099         } out;
1100
1101 };
1102
1103 struct samr_CONNECT3 {
1104         struct {
1105         } in;
1106
1107         struct {
1108                 NTSTATUS result;
1109         } out;
1110
1111 };
1112
1113 struct samr_Connect4 {
1114         struct {
1115                 const char *system_name;
1116                 uint32 unknown;
1117                 uint32 access_mask;
1118         } in;
1119
1120         struct {
1121                 struct policy_handle *handle;
1122                 NTSTATUS result;
1123         } out;
1124
1125 };
1126
1127 struct samr_UNICODE_CHANGE_PASSWORD_USER3 {
1128         struct {
1129         } in;
1130
1131         struct {
1132                 NTSTATUS result;
1133         } out;
1134
1135 };
1136
1137 struct samr_CONNECT5 {
1138         struct {
1139         } in;
1140
1141         struct {
1142                 NTSTATUS result;
1143         } out;
1144
1145 };
1146
1147 struct samr_RID_TO_SID {
1148         struct {
1149         } in;
1150
1151         struct {
1152                 NTSTATUS result;
1153         } out;
1154
1155 };
1156
1157 struct samr_SET_DSRM_PASSWORD {
1158         struct {
1159         } in;
1160
1161         struct {
1162                 NTSTATUS result;
1163         } out;
1164
1165 };
1166
1167 struct samr_VALIDATE_PASSWORD {
1168         struct {
1169         } in;
1170
1171         struct {
1172                 NTSTATUS result;
1173         } out;
1174
1175 };
1176