1
/* header auto-generated by pidl */
5
#include "libcli/util/ntstatus.h"
7
#include "librpc/gen_ndr/misc.h"
8
#include "librpc/gen_ndr/lsa.h"
9
#include "librpc/gen_ndr/security.h"
13
#define SAMR_ACCESS_ALL_ACCESS ( 0x0000003F )
14
#define GENERIC_RIGHTS_SAM_ALL_ACCESS ( (STANDARD_RIGHTS_REQUIRED_ACCESS|SAMR_ACCESS_ALL_ACCESS) )
15
#define GENERIC_RIGHTS_SAM_READ ( (STANDARD_RIGHTS_READ_ACCESS|SAMR_ACCESS_ENUM_DOMAINS) )
16
#define GENERIC_RIGHTS_SAM_WRITE ( (STANDARD_RIGHTS_WRITE_ACCESS|SAMR_ACCESS_CREATE_DOMAIN|SAMR_ACCESS_INITIALIZE_SERVER|SAMR_ACCESS_SHUTDOWN_SERVER) )
17
#define GENERIC_RIGHTS_SAM_EXECUTE ( (STANDARD_RIGHTS_EXECUTE_ACCESS|SAMR_ACCESS_LOOKUP_DOMAIN|SAMR_ACCESS_CONNECT_TO_SERVER) )
18
#define SAMR_USER_ACCESS_ALL_ACCESS ( 0x000007FF )
19
#define GENERIC_RIGHTS_USER_ALL_ACCESS ( (STANDARD_RIGHTS_REQUIRED_ACCESS|SAMR_USER_ACCESS_ALL_ACCESS) )
20
#define GENERIC_RIGHTS_USER_READ ( (STANDARD_RIGHTS_READ_ACCESS|SAMR_USER_ACCESS_GET_GROUP_MEMBERSHIP|SAMR_USER_ACCESS_GET_GROUPS|SAMR_USER_ACCESS_GET_ATTRIBUTES|SAMR_USER_ACCESS_GET_LOGONINFO|SAMR_USER_ACCESS_GET_LOCALE) )
21
#define GENERIC_RIGHTS_USER_WRITE ( (STANDARD_RIGHTS_WRITE_ACCESS|SAMR_USER_ACCESS_CHANGE_PASSWORD|SAMR_USER_ACCESS_SET_LOC_COM|SAMR_USER_ACCESS_SET_ATTRIBUTES|SAMR_USER_ACCESS_SET_PASSWORD|SAMR_USER_ACCESS_CHANGE_GROUP_MEMBERSHIP) )
22
#define GENERIC_RIGHTS_USER_EXECUTE ( (STANDARD_RIGHTS_EXECUTE_ACCESS|SAMR_USER_ACCESS_CHANGE_PASSWORD|SAMR_USER_ACCESS_GET_NAME_ETC) )
23
#define SAMR_DOMAIN_ACCESS_ALL_ACCESS ( 0x000007FF )
24
#define GENERIC_RIGHTS_DOMAIN_ALL_ACCESS ( (STANDARD_RIGHTS_REQUIRED_ACCESS|SAMR_DOMAIN_ACCESS_ALL_ACCESS) )
25
#define GENERIC_RIGHTS_DOMAIN_READ ( (STANDARD_RIGHTS_READ_ACCESS|SAMR_DOMAIN_ACCESS_LOOKUP_ALIAS|SAMR_DOMAIN_ACCESS_LOOKUP_INFO_2) )
26
#define GENERIC_RIGHTS_DOMAIN_WRITE ( (STANDARD_RIGHTS_WRITE_ACCESS|SAMR_DOMAIN_ACCESS_SET_INFO_3|SAMR_DOMAIN_ACCESS_CREATE_ALIAS|SAMR_DOMAIN_ACCESS_CREATE_GROUP|SAMR_DOMAIN_ACCESS_CREATE_USER|SAMR_DOMAIN_ACCESS_SET_INFO_2|SAMR_DOMAIN_ACCESS_SET_INFO_1) )
27
#define GENERIC_RIGHTS_DOMAIN_EXECUTE ( (STANDARD_RIGHTS_EXECUTE_ACCESS|SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT|SAMR_DOMAIN_ACCESS_ENUM_ACCOUNTS|SAMR_DOMAIN_ACCESS_LOOKUP_INFO_1) )
28
#define SAMR_GROUP_ACCESS_ALL_ACCESS ( 0x0000001F )
29
#define GENERIC_RIGHTS_GROUP_ALL_ACCESS ( (STANDARD_RIGHTS_REQUIRED_ACCESS|SAMR_GROUP_ACCESS_ALL_ACCESS) )
30
#define GENERIC_RIGHTS_GROUP_READ ( (STANDARD_RIGHTS_READ_ACCESS|SAMR_GROUP_ACCESS_GET_MEMBERS) )
31
#define GENERIC_RIGHTS_GROUP_WRITE ( (STANDARD_RIGHTS_WRITE_ACCESS|SAMR_GROUP_ACCESS_REMOVE_MEMBER|SAMR_GROUP_ACCESS_ADD_MEMBER|SAMR_GROUP_ACCESS_SET_INFO) )
32
#define GENERIC_RIGHTS_GROUP_EXECUTE ( (STANDARD_RIGHTS_EXECUTE_ACCESS|SAMR_GROUP_ACCESS_LOOKUP_INFO) )
33
#define SAMR_ALIAS_ACCESS_ALL_ACCESS ( 0x0000001F )
34
#define GENERIC_RIGHTS_ALIAS_ALL_ACCESS ( (STANDARD_RIGHTS_REQUIRED_ACCESS|SAMR_ALIAS_ACCESS_ALL_ACCESS) )
35
#define GENERIC_RIGHTS_ALIAS_READ ( (STANDARD_RIGHTS_READ_ACCESS|SAMR_ALIAS_ACCESS_GET_MEMBERS) )
36
#define GENERIC_RIGHTS_ALIAS_WRITE ( (STANDARD_RIGHTS_WRITE_ACCESS|SAMR_ALIAS_ACCESS_REMOVE_MEMBER|SAMR_ALIAS_ACCESS_ADD_MEMBER|SAMR_ALIAS_ACCESS_SET_INFO) )
37
#define GENERIC_RIGHTS_ALIAS_EXECUTE ( (STANDARD_RIGHTS_EXECUTE_ACCESS|SAMR_ALIAS_ACCESS_LOOKUP_INFO) )
38
#define SAMR_ENUM_USERS_MULTIPLIER ( 54 )
39
#define PASS_MUST_CHANGE_AT_NEXT_LOGON ( 0x01 )
40
#define PASS_DONT_CHANGE_AT_NEXT_LOGON ( 0x00 )
41
enum netr_SamDatabaseID
42
#ifndef USE_UINT_ENUMS
44
SAM_DATABASE_DOMAIN=0,
45
SAM_DATABASE_BUILTIN=1,
49
{ __donnot_use_enum_netr_SamDatabaseID=0x7FFFFFFF}
50
#define SAM_DATABASE_DOMAIN ( 0 )
51
#define SAM_DATABASE_BUILTIN ( 1 )
52
#define SAM_DATABASE_PRIVS ( 2 )
56
enum samr_RejectReason
57
#ifndef USE_UINT_ENUMS
60
SAMR_REJECT_TOO_SHORT=1,
61
SAMR_REJECT_IN_HISTORY=2,
62
SAMR_REJECT_COMPLEXITY=5
65
{ __donnot_use_enum_samr_RejectReason=0x7FFFFFFF}
66
#define SAMR_REJECT_OTHER ( 0 )
67
#define SAMR_REJECT_TOO_SHORT ( 1 )
68
#define SAMR_REJECT_IN_HISTORY ( 2 )
69
#define SAMR_REJECT_COMPLEXITY ( 5 )
73
/* bitmap samr_AcctFlags */
74
#define ACB_DISABLED ( 0x00000001 )
75
#define ACB_HOMDIRREQ ( 0x00000002 )
76
#define ACB_PWNOTREQ ( 0x00000004 )
77
#define ACB_TEMPDUP ( 0x00000008 )
78
#define ACB_NORMAL ( 0x00000010 )
79
#define ACB_MNS ( 0x00000020 )
80
#define ACB_DOMTRUST ( 0x00000040 )
81
#define ACB_WSTRUST ( 0x00000080 )
82
#define ACB_SVRTRUST ( 0x00000100 )
83
#define ACB_PWNOEXP ( 0x00000200 )
84
#define ACB_AUTOLOCK ( 0x00000400 )
85
#define ACB_ENC_TXT_PWD_ALLOWED ( 0x00000800 )
86
#define ACB_SMARTCARD_REQUIRED ( 0x00001000 )
87
#define ACB_TRUSTED_FOR_DELEGATION ( 0x00002000 )
88
#define ACB_NOT_DELEGATED ( 0x00004000 )
89
#define ACB_USE_DES_KEY_ONLY ( 0x00008000 )
90
#define ACB_DONT_REQUIRE_PREAUTH ( 0x00010000 )
91
#define ACB_PW_EXPIRED ( 0x00020000 )
92
#define ACB_NO_AUTH_DATA_REQD ( 0x00080000 )
94
/* bitmap samr_ConnectAccessMask */
95
#define SAMR_ACCESS_CONNECT_TO_SERVER ( 0x00000001 )
96
#define SAMR_ACCESS_SHUTDOWN_SERVER ( 0x00000002 )
97
#define SAMR_ACCESS_INITIALIZE_SERVER ( 0x00000004 )
98
#define SAMR_ACCESS_CREATE_DOMAIN ( 0x00000008 )
99
#define SAMR_ACCESS_ENUM_DOMAINS ( 0x00000010 )
100
#define SAMR_ACCESS_LOOKUP_DOMAIN ( 0x00000020 )
102
/* bitmap samr_UserAccessMask */
103
#define SAMR_USER_ACCESS_GET_NAME_ETC ( 0x00000001 )
104
#define SAMR_USER_ACCESS_GET_LOCALE ( 0x00000002 )
105
#define SAMR_USER_ACCESS_SET_LOC_COM ( 0x00000004 )
106
#define SAMR_USER_ACCESS_GET_LOGONINFO ( 0x00000008 )
107
#define SAMR_USER_ACCESS_GET_ATTRIBUTES ( 0x00000010 )
108
#define SAMR_USER_ACCESS_SET_ATTRIBUTES ( 0x00000020 )
109
#define SAMR_USER_ACCESS_CHANGE_PASSWORD ( 0x00000040 )
110
#define SAMR_USER_ACCESS_SET_PASSWORD ( 0x00000080 )
111
#define SAMR_USER_ACCESS_GET_GROUPS ( 0x00000100 )
112
#define SAMR_USER_ACCESS_GET_GROUP_MEMBERSHIP ( 0x00000200 )
113
#define SAMR_USER_ACCESS_CHANGE_GROUP_MEMBERSHIP ( 0x00000400 )
115
/* bitmap samr_DomainAccessMask */
116
#define SAMR_DOMAIN_ACCESS_LOOKUP_INFO_1 ( 0x00000001 )
117
#define SAMR_DOMAIN_ACCESS_SET_INFO_1 ( 0x00000002 )
118
#define SAMR_DOMAIN_ACCESS_LOOKUP_INFO_2 ( 0x00000004 )
119
#define SAMR_DOMAIN_ACCESS_SET_INFO_2 ( 0x00000008 )
120
#define SAMR_DOMAIN_ACCESS_CREATE_USER ( 0x00000010 )
121
#define SAMR_DOMAIN_ACCESS_CREATE_GROUP ( 0x00000020 )
122
#define SAMR_DOMAIN_ACCESS_CREATE_ALIAS ( 0x00000040 )
123
#define SAMR_DOMAIN_ACCESS_LOOKUP_ALIAS ( 0x00000080 )
124
#define SAMR_DOMAIN_ACCESS_ENUM_ACCOUNTS ( 0x00000100 )
125
#define SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT ( 0x00000200 )
126
#define SAMR_DOMAIN_ACCESS_SET_INFO_3 ( 0x00000400 )
128
/* bitmap samr_GroupAccessMask */
129
#define SAMR_GROUP_ACCESS_LOOKUP_INFO ( 0x00000001 )
130
#define SAMR_GROUP_ACCESS_SET_INFO ( 0x00000002 )
131
#define SAMR_GROUP_ACCESS_ADD_MEMBER ( 0x00000004 )
132
#define SAMR_GROUP_ACCESS_REMOVE_MEMBER ( 0x00000008 )
133
#define SAMR_GROUP_ACCESS_GET_MEMBERS ( 0x00000010 )
135
/* bitmap samr_AliasAccessMask */
136
#define SAMR_ALIAS_ACCESS_ADD_MEMBER ( 0x00000001 )
137
#define SAMR_ALIAS_ACCESS_REMOVE_MEMBER ( 0x00000002 )
138
#define SAMR_ALIAS_ACCESS_GET_MEMBERS ( 0x00000004 )
139
#define SAMR_ALIAS_ACCESS_LOOKUP_INFO ( 0x00000008 )
140
#define SAMR_ALIAS_ACCESS_SET_INFO ( 0x00000010 )
142
struct samr_SamEntry {
144
struct lsa_String name;
147
struct samr_SamArray {
149
struct samr_SamEntry *entries;/* [unique,size_is(count)] */
153
#ifndef USE_UINT_ENUMS
155
SAMR_ROLE_STANDALONE=0,
156
SAMR_ROLE_DOMAIN_MEMBER=1,
157
SAMR_ROLE_DOMAIN_BDC=2,
158
SAMR_ROLE_DOMAIN_PDC=3
161
{ __donnot_use_enum_samr_Role=0x7FFFFFFF}
162
#define SAMR_ROLE_STANDALONE ( 0 )
163
#define SAMR_ROLE_DOMAIN_MEMBER ( 1 )
164
#define SAMR_ROLE_DOMAIN_BDC ( 2 )
165
#define SAMR_ROLE_DOMAIN_PDC ( 3 )
169
/* bitmap samr_PasswordProperties */
170
#define DOMAIN_PASSWORD_COMPLEX ( 0x00000001 )
171
#define DOMAIN_PASSWORD_NO_ANON_CHANGE ( 0x00000002 )
172
#define DOMAIN_PASSWORD_NO_CLEAR_CHANGE ( 0x00000004 )
173
#define DOMAIN_PASSWORD_LOCKOUT_ADMINS ( 0x00000008 )
174
#define DOMAIN_PASSWORD_STORE_CLEARTEXT ( 0x00000010 )
175
#define DOMAIN_REFUSE_PASSWORD_CHANGE ( 0x00000020 )
177
enum samr_DomainServerState
178
#ifndef USE_UINT_ENUMS
180
DOMAIN_SERVER_ENABLED=1,
181
DOMAIN_SERVER_DISABLED=2
184
{ __donnot_use_enum_samr_DomainServerState=0x7FFFFFFF}
185
#define DOMAIN_SERVER_ENABLED ( 1 )
186
#define DOMAIN_SERVER_DISABLED ( 2 )
190
struct samr_DomInfo1 {
191
uint16_t min_password_length;
192
uint16_t password_history_length;
193
uint32_t password_properties;
194
int64_t max_password_age;
195
int64_t min_password_age;
198
struct samr_DomGeneralInformation {
199
NTTIME force_logoff_time;
200
struct lsa_String oem_information;
201
struct lsa_String domain_name;
202
struct lsa_String primary;
203
uint64_t sequence_num;
204
enum samr_DomainServerState domain_server_state;
209
uint32_t num_aliases;
212
struct samr_DomInfo3 {
213
NTTIME force_logoff_time;
216
struct samr_DomOEMInformation {
217
struct lsa_String oem_information;
220
struct samr_DomInfo5 {
221
struct lsa_String domain_name;
224
struct samr_DomInfo6 {
225
struct lsa_String primary;
228
struct samr_DomInfo7 {
232
struct samr_DomInfo8 {
233
uint64_t sequence_num;
234
NTTIME domain_create_time;
237
struct samr_DomInfo9 {
238
enum samr_DomainServerState domain_server_state;
241
struct samr_DomGeneralInformation2 {
242
struct samr_DomGeneralInformation general;
243
uint64_t lockout_duration;
244
uint64_t lockout_window;
245
uint16_t lockout_threshold;
248
struct samr_DomInfo12 {
249
uint64_t lockout_duration;
250
uint64_t lockout_window;
251
uint16_t lockout_threshold;
254
struct samr_DomInfo13 {
255
uint64_t sequence_num;
256
NTTIME domain_create_time;
257
uint64_t modified_count_at_last_promotion;
260
union samr_DomainInfo {
261
struct samr_DomInfo1 info1;/* [case] */
262
struct samr_DomGeneralInformation general;/* [case(2)] */
263
struct samr_DomInfo3 info3;/* [case(3)] */
264
struct samr_DomOEMInformation oem;/* [case(4)] */
265
struct samr_DomInfo5 info5;/* [case(5)] */
266
struct samr_DomInfo6 info6;/* [case(6)] */
267
struct samr_DomInfo7 info7;/* [case(7)] */
268
struct samr_DomInfo8 info8;/* [case(8)] */
269
struct samr_DomInfo9 info9;/* [case(9)] */
270
struct samr_DomGeneralInformation2 general2;/* [case(11)] */
271
struct samr_DomInfo12 info12;/* [case(12)] */
272
struct samr_DomInfo13 info13;/* [case(13)] */
273
}/* [switch_type(uint16)] */;
276
uint32_t count;/* [range(0,1024)] */
277
uint32_t *ids;/* [unique,size_is(count)] */
280
/* bitmap samr_GroupAttrs */
281
#define SE_GROUP_MANDATORY ( 0x00000001 )
282
#define SE_GROUP_ENABLED_BY_DEFAULT ( 0x00000002 )
283
#define SE_GROUP_ENABLED ( 0x00000004 )
284
#define SE_GROUP_OWNER ( 0x00000008 )
285
#define SE_GROUP_USE_FOR_DENY_ONLY ( 0x00000010 )
286
#define SE_GROUP_RESOURCE ( 0x20000000 )
287
#define SE_GROUP_LOGON_ID ( 0xC0000000 )
289
struct samr_GroupInfoAll {
290
struct lsa_String name;
292
uint32_t num_members;
293
struct lsa_String description;
296
struct samr_GroupInfoAttributes {
300
struct samr_GroupInfoDescription {
301
struct lsa_String description;
304
enum samr_GroupInfoEnum
305
#ifndef USE_UINT_ENUMS
309
GROUPINFOATTRIBUTES=3,
310
GROUPINFODESCRIPTION=4,
314
{ __donnot_use_enum_samr_GroupInfoEnum=0x7FFFFFFF}
315
#define GROUPINFOALL ( 1 )
316
#define GROUPINFONAME ( 2 )
317
#define GROUPINFOATTRIBUTES ( 3 )
318
#define GROUPINFODESCRIPTION ( 4 )
319
#define GROUPINFOALL2 ( 5 )
323
union samr_GroupInfo {
324
struct samr_GroupInfoAll all;/* [case(GROUPINFOALL)] */
325
struct lsa_String name;/* [case(GROUPINFONAME)] */
326
struct samr_GroupInfoAttributes attributes;/* [case(GROUPINFOATTRIBUTES)] */
327
struct lsa_String description;/* [case(GROUPINFODESCRIPTION)] */
328
struct samr_GroupInfoAll all2;/* [case(GROUPINFOALL2)] */
329
}/* [switch_type(samr_GroupInfoEnum)] */;
331
struct samr_RidTypeArray {
333
uint32_t *rids;/* [unique,size_is(count)] */
334
uint32_t *types;/* [unique,size_is(count)] */
337
struct samr_AliasInfoAll {
338
struct lsa_String name;
339
uint32_t num_members;
340
struct lsa_String description;
343
enum samr_AliasInfoEnum
344
#ifndef USE_UINT_ENUMS
348
ALIASINFODESCRIPTION=3
351
{ __donnot_use_enum_samr_AliasInfoEnum=0x7FFFFFFF}
352
#define ALIASINFOALL ( 1 )
353
#define ALIASINFONAME ( 2 )
354
#define ALIASINFODESCRIPTION ( 3 )
358
union samr_AliasInfo {
359
struct samr_AliasInfoAll all;/* [case(ALIASINFOALL)] */
360
struct lsa_String name;/* [case(ALIASINFONAME)] */
361
struct lsa_String description;/* [case(ALIASINFODESCRIPTION)] */
362
}/* [switch_type(samr_AliasInfoEnum)] */;
364
struct samr_UserInfo1 {
365
struct lsa_String account_name;
366
struct lsa_String full_name;
367
uint32_t primary_gid;
368
struct lsa_String description;
369
struct lsa_String comment;
372
struct samr_UserInfo2 {
373
struct lsa_String comment;
374
struct lsa_String unknown;
375
uint16_t country_code;
379
struct samr_LogonHours {
380
uint16_t units_per_week;
381
uint8_t *bits;/* [unique,length_is(units_per_week/8),size_is(1260)] */
382
}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
384
struct samr_UserInfo3 {
385
struct lsa_String account_name;
386
struct lsa_String full_name;
388
uint32_t primary_gid;
389
struct lsa_String home_directory;
390
struct lsa_String home_drive;
391
struct lsa_String logon_script;
392
struct lsa_String profile_path;
393
struct lsa_String workstations;
396
NTTIME last_password_change;
397
NTTIME allow_password_change;
398
NTTIME force_password_change;
399
struct samr_LogonHours logon_hours;
400
uint16_t bad_password_count;
401
uint16_t logon_count;
405
struct samr_UserInfo4 {
406
struct samr_LogonHours logon_hours;
409
struct samr_UserInfo5 {
410
struct lsa_String account_name;
411
struct lsa_String full_name;
413
uint32_t primary_gid;
414
struct lsa_String home_directory;
415
struct lsa_String home_drive;
416
struct lsa_String logon_script;
417
struct lsa_String profile_path;
418
struct lsa_String description;
419
struct lsa_String workstations;
422
struct samr_LogonHours logon_hours;
423
uint16_t bad_password_count;
424
uint16_t logon_count;
425
NTTIME last_password_change;
430
struct samr_UserInfo6 {
431
struct lsa_String account_name;
432
struct lsa_String full_name;
435
struct samr_UserInfo7 {
436
struct lsa_String account_name;
439
struct samr_UserInfo8 {
440
struct lsa_String full_name;
443
struct samr_UserInfo9 {
444
uint32_t primary_gid;
447
struct samr_UserInfo10 {
448
struct lsa_String home_directory;
449
struct lsa_String home_drive;
452
struct samr_UserInfo11 {
453
struct lsa_String logon_script;
456
struct samr_UserInfo12 {
457
struct lsa_String profile_path;
460
struct samr_UserInfo13 {
461
struct lsa_String description;
464
struct samr_UserInfo14 {
465
struct lsa_String workstations;
468
struct samr_UserInfo16 {
472
struct samr_UserInfo17 {
476
struct samr_Password {
478
}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
480
struct samr_UserInfo18 {
481
struct samr_Password nt_pwd;
482
struct samr_Password lm_pwd;
483
uint8_t nt_pwd_active;
484
uint8_t lm_pwd_active;
485
uint8_t password_expired;
488
struct samr_UserInfo20 {
489
struct lsa_BinaryString parameters;
492
/* bitmap samr_FieldsPresent */
493
#define SAMR_FIELD_ACCOUNT_NAME ( 0x00000001 )
494
#define SAMR_FIELD_FULL_NAME ( 0x00000002 )
495
#define SAMR_FIELD_RID ( 0x00000004 )
496
#define SAMR_FIELD_PRIMARY_GID ( 0x00000008 )
497
#define SAMR_FIELD_DESCRIPTION ( 0x00000010 )
498
#define SAMR_FIELD_COMMENT ( 0x00000020 )
499
#define SAMR_FIELD_HOME_DIRECTORY ( 0x00000040 )
500
#define SAMR_FIELD_HOME_DRIVE ( 0x00000080 )
501
#define SAMR_FIELD_LOGON_SCRIPT ( 0x00000100 )
502
#define SAMR_FIELD_PROFILE_PATH ( 0x00000200 )
503
#define SAMR_FIELD_WORKSTATIONS ( 0x00000400 )
504
#define SAMR_FIELD_LAST_LOGON ( 0x00000800 )
505
#define SAMR_FIELD_LAST_LOGOFF ( 0x00001000 )
506
#define SAMR_FIELD_LOGON_HOURS ( 0x00002000 )
507
#define SAMR_FIELD_BAD_PWD_COUNT ( 0x00004000 )
508
#define SAMR_FIELD_NUM_LOGONS ( 0x00008000 )
509
#define SAMR_FIELD_ALLOW_PWD_CHANGE ( 0x00010000 )
510
#define SAMR_FIELD_FORCE_PWD_CHANGE ( 0x00020000 )
511
#define SAMR_FIELD_LAST_PWD_CHANGE ( 0x00040000 )
512
#define SAMR_FIELD_ACCT_EXPIRY ( 0x00080000 )
513
#define SAMR_FIELD_ACCT_FLAGS ( 0x00100000 )
514
#define SAMR_FIELD_PARAMETERS ( 0x00200000 )
515
#define SAMR_FIELD_COUNTRY_CODE ( 0x00400000 )
516
#define SAMR_FIELD_CODE_PAGE ( 0x00800000 )
517
#define SAMR_FIELD_NT_PASSWORD_PRESENT ( 0x01000000 )
518
#define SAMR_FIELD_LM_PASSWORD_PRESENT ( 0x02000000 )
519
#define SAMR_FIELD_PRIVATE_DATA ( 0x04000000 )
520
#define SAMR_FIELD_EXPIRED_FLAG ( 0x08000000 )
521
#define SAMR_FIELD_SEC_DESC ( 0x10000000 )
522
#define SAMR_FIELD_OWF_PWD ( 0x20000000 )
524
struct samr_UserInfo21 {
527
NTTIME last_password_change;
529
NTTIME allow_password_change;
530
NTTIME force_password_change;
531
struct lsa_String account_name;
532
struct lsa_String full_name;
533
struct lsa_String home_directory;
534
struct lsa_String home_drive;
535
struct lsa_String logon_script;
536
struct lsa_String profile_path;
537
struct lsa_String description;
538
struct lsa_String workstations;
539
struct lsa_String comment;
540
struct lsa_BinaryString parameters;
541
struct lsa_BinaryString lm_owf_password;
542
struct lsa_BinaryString nt_owf_password;
543
struct lsa_String unknown3;
545
uint8_t *buffer;/* [unique,size_is(buf_count)] */
547
uint32_t primary_gid;
549
uint32_t fields_present;
550
struct samr_LogonHours logon_hours;
551
uint16_t bad_password_count;
552
uint16_t logon_count;
553
uint16_t country_code;
555
uint8_t lm_password_set;
556
uint8_t nt_password_set;
557
uint8_t password_expired;
561
struct samr_CryptPassword {
563
}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
565
struct samr_UserInfo23 {
566
struct samr_UserInfo21 info;
567
struct samr_CryptPassword password;
570
struct samr_UserInfo24 {
571
struct samr_CryptPassword password;
572
uint8_t password_expired;
575
struct samr_CryptPasswordEx {
577
}/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
579
struct samr_UserInfo25 {
580
struct samr_UserInfo21 info;
581
struct samr_CryptPasswordEx password;
584
struct samr_UserInfo26 {
585
struct samr_CryptPasswordEx password;
586
uint8_t password_expired;
589
union samr_UserInfo {
590
struct samr_UserInfo1 info1;/* [case] */
591
struct samr_UserInfo2 info2;/* [case(2)] */
592
struct samr_UserInfo3 info3;/* [case(3)] */
593
struct samr_UserInfo4 info4;/* [case(4)] */
594
struct samr_UserInfo5 info5;/* [case(5)] */
595
struct samr_UserInfo6 info6;/* [case(6)] */
596
struct samr_UserInfo7 info7;/* [case(7)] */
597
struct samr_UserInfo8 info8;/* [case(8)] */
598
struct samr_UserInfo9 info9;/* [case(9)] */
599
struct samr_UserInfo10 info10;/* [case(10)] */
600
struct samr_UserInfo11 info11;/* [case(11)] */
601
struct samr_UserInfo12 info12;/* [case(12)] */
602
struct samr_UserInfo13 info13;/* [case(13)] */
603
struct samr_UserInfo14 info14;/* [case(14)] */
604
struct samr_UserInfo16 info16;/* [case(16)] */
605
struct samr_UserInfo17 info17;/* [case(17)] */
606
struct samr_UserInfo18 info18;/* [case(18)] */
607
struct samr_UserInfo20 info20;/* [case(20)] */
608
struct samr_UserInfo21 info21;/* [case(21)] */
609
struct samr_UserInfo23 info23;/* [case(23)] */
610
struct samr_UserInfo24 info24;/* [case(24)] */
611
struct samr_UserInfo25 info25;/* [case(25)] */
612
struct samr_UserInfo26 info26;/* [case(26)] */
613
}/* [switch_type(uint16)] */;
615
struct samr_RidWithAttribute {
620
struct samr_RidWithAttributeArray {
622
struct samr_RidWithAttribute *rids;/* [unique,size_is(count)] */
625
struct samr_DispEntryGeneral {
629
struct lsa_String account_name;
630
struct lsa_String description;
631
struct lsa_String full_name;
634
struct samr_DispInfoGeneral {
636
struct samr_DispEntryGeneral *entries;/* [unique,size_is(count)] */
639
struct samr_DispEntryFull {
643
struct lsa_String account_name;
644
struct lsa_String description;
647
struct samr_DispInfoFull {
649
struct samr_DispEntryFull *entries;/* [unique,size_is(count)] */
652
struct samr_DispEntryFullGroup {
656
struct lsa_String account_name;
657
struct lsa_String description;
660
struct samr_DispInfoFullGroups {
662
struct samr_DispEntryFullGroup *entries;/* [unique,size_is(count)] */
665
struct samr_DispEntryAscii {
667
struct lsa_AsciiStringLarge account_name;
670
struct samr_DispInfoAscii {
672
struct samr_DispEntryAscii *entries;/* [unique,size_is(count)] */
675
union samr_DispInfo {
676
struct samr_DispInfoGeneral info1;/* [case] */
677
struct samr_DispInfoFull info2;/* [case(2)] */
678
struct samr_DispInfoFullGroups info3;/* [case(3)] */
679
struct samr_DispInfoAscii info4;/* [case(4)] */
680
struct samr_DispInfoAscii info5;/* [case(5)] */
681
}/* [switch_type(uint16)] */;
684
uint16_t min_password_length;
685
uint32_t password_properties;
688
enum samr_ConnectVersion
689
#ifndef USE_UINT_ENUMS
691
SAMR_CONNECT_PRE_W2K=1,
693
SAMR_CONNECT_AFTER_W2K=3
696
{ __donnot_use_enum_samr_ConnectVersion=0x7FFFFFFF}
697
#define SAMR_CONNECT_PRE_W2K ( 1 )
698
#define SAMR_CONNECT_W2K ( 2 )
699
#define SAMR_CONNECT_AFTER_W2K ( 3 )
703
struct samr_ChangeReject {
704
enum samr_RejectReason reason;
709
struct samr_ConnectInfo1 {
710
enum samr_ConnectVersion client_version;
714
union samr_ConnectInfo {
715
struct samr_ConnectInfo1 info1;/* [case] */
718
/* bitmap samr_ValidateFieldsPresent */
719
#define SAMR_VALIDATE_FIELD_PASSWORD_LAST_SET ( 0x00000001 )
720
#define SAMR_VALIDATE_FIELD_BAD_PASSWORD_TIME ( 0x00000002 )
721
#define SAMR_VALIDATE_FIELD_LOCKOUT_TIME ( 0x00000004 )
722
#define SAMR_VALIDATE_FIELD_BAD_PASSWORD_COUNT ( 0x00000008 )
723
#define SAMR_VALIDATE_FIELD_PASSWORD_HISTORY_LENGTH ( 0x00000010 )
724
#define SAMR_VALIDATE_FIELD_PASSWORD_HISTORY ( 0x00000020 )
726
enum samr_ValidatePasswordLevel
727
#ifndef USE_UINT_ENUMS
729
NetValidateAuthentication=1,
730
NetValidatePasswordChange=2,
731
NetValidatePasswordReset=3
734
{ __donnot_use_enum_samr_ValidatePasswordLevel=0x7FFFFFFF}
735
#define NetValidateAuthentication ( 1 )
736
#define NetValidatePasswordChange ( 2 )
737
#define NetValidatePasswordReset ( 3 )
741
enum samr_ValidationStatus
742
#ifndef USE_UINT_ENUMS
744
SAMR_VALIDATION_STATUS_SUCCESS=0,
745
SAMR_VALIDATION_STATUS_PASSWORD_MUST_CHANGE=1,
746
SAMR_VALIDATION_STATUS_ACCOUNT_LOCKED_OUT=2,
747
SAMR_VALIDATION_STATUS_BAD_PASSWORD=4,
748
SAMR_VALIDATION_STATUS_PWD_HISTORY_CONFLICT=5,
749
SAMR_VALIDATION_STATUS_PWD_TOO_SHORT=6,
750
SAMR_VALIDATION_STATUS_PWD_TOO_LONG=7,
751
SAMR_VALIDATION_STATUS_NOT_COMPLEX_ENOUGH=8,
752
SAMR_VALIDATION_STATUS_PASSWORD_TOO_RECENT=9
755
{ __donnot_use_enum_samr_ValidationStatus=0x7FFFFFFF}
756
#define SAMR_VALIDATION_STATUS_SUCCESS ( 0 )
757
#define SAMR_VALIDATION_STATUS_PASSWORD_MUST_CHANGE ( 1 )
758
#define SAMR_VALIDATION_STATUS_ACCOUNT_LOCKED_OUT ( 2 )
759
#define SAMR_VALIDATION_STATUS_BAD_PASSWORD ( 4 )
760
#define SAMR_VALIDATION_STATUS_PWD_HISTORY_CONFLICT ( 5 )
761
#define SAMR_VALIDATION_STATUS_PWD_TOO_SHORT ( 6 )
762
#define SAMR_VALIDATION_STATUS_PWD_TOO_LONG ( 7 )
763
#define SAMR_VALIDATION_STATUS_NOT_COMPLEX_ENOUGH ( 8 )
764
#define SAMR_VALIDATION_STATUS_PASSWORD_TOO_RECENT ( 9 )
768
struct samr_ValidationBlob {
770
uint8_t *data;/* [unique,size_is(length)] */
773
struct samr_ValidatePasswordInfo {
774
uint32_t fields_present;
775
NTTIME last_password_change;
776
NTTIME bad_password_time;
778
uint32_t bad_pwd_count;
779
uint32_t pwd_history_len;
780
struct samr_ValidationBlob *pwd_history;/* [unique,size_is(pwd_history_len)] */
783
struct samr_ValidatePasswordRepCtr {
784
struct samr_ValidatePasswordInfo info;
785
enum samr_ValidationStatus status;
788
union samr_ValidatePasswordRep {
789
struct samr_ValidatePasswordRepCtr ctr1;/* [case] */
790
struct samr_ValidatePasswordRepCtr ctr2;/* [case(2)] */
791
struct samr_ValidatePasswordRepCtr ctr3;/* [case(3)] */
792
}/* [switch_type(uint16)] */;
794
struct samr_ValidatePasswordReq3 {
795
struct samr_ValidatePasswordInfo info;
796
struct lsa_StringLarge password;
797
struct lsa_StringLarge account;
798
struct samr_ValidationBlob hash;
799
uint8_t pwd_must_change_at_next_logon;
800
uint8_t clear_lockout;
803
struct samr_ValidatePasswordReq2 {
804
struct samr_ValidatePasswordInfo info;
805
struct lsa_StringLarge password;
806
struct lsa_StringLarge account;
807
struct samr_ValidationBlob hash;
808
uint8_t password_matched;
811
struct samr_ValidatePasswordReq1 {
812
struct samr_ValidatePasswordInfo info;
813
uint8_t password_matched;
816
union samr_ValidatePasswordReq {
817
struct samr_ValidatePasswordReq1 req1;/* [case] */
818
struct samr_ValidatePasswordReq2 req2;/* [case(2)] */
819
struct samr_ValidatePasswordReq3 req3;/* [case(3)] */
820
}/* [switch_type(uint16)] */;
823
struct samr_Connect {
825
uint16_t *system_name;/* [unique] */
826
uint32_t access_mask;
830
struct policy_handle *connect_handle;/* [ref] */
839
struct policy_handle *handle;/* [ref] */
843
struct policy_handle *handle;/* [ref] */
850
struct samr_SetSecurity {
852
struct policy_handle *handle;/* [ref] */
854
struct sec_desc_buf *sdbuf;/* [ref] */
864
struct samr_QuerySecurity {
866
struct policy_handle *handle;/* [ref] */
871
struct sec_desc_buf **sdbuf;/* [ref] */
878
struct samr_Shutdown {
880
struct policy_handle *connect_handle;/* [ref] */
890
struct samr_LookupDomain {
892
struct policy_handle *connect_handle;/* [ref] */
893
struct lsa_String *domain_name;/* [ref] */
897
struct dom_sid2 **sid;/* [ref] */
904
struct samr_EnumDomains {
906
struct policy_handle *connect_handle;/* [ref] */
908
uint32_t *resume_handle;/* [ref] */
912
struct samr_SamArray **sam;/* [ref] */
913
uint32_t *num_entries;/* [ref] */
914
uint32_t *resume_handle;/* [ref] */
921
struct samr_OpenDomain {
923
struct policy_handle *connect_handle;/* [ref] */
924
uint32_t access_mask;
925
struct dom_sid2 *sid;/* [ref] */
929
struct policy_handle *domain_handle;/* [ref] */
936
struct samr_QueryDomainInfo {
938
struct policy_handle *domain_handle;/* [ref] */
943
union samr_DomainInfo **info;/* [ref,switch_is(level)] */
950
struct samr_SetDomainInfo {
952
struct policy_handle *domain_handle;/* [ref] */
954
union samr_DomainInfo *info;/* [ref,switch_is(level)] */
964
struct samr_CreateDomainGroup {
966
struct policy_handle *domain_handle;/* [ref] */
967
struct lsa_String *name;/* [ref] */
968
uint32_t access_mask;
972
struct policy_handle *group_handle;/* [ref] */
973
uint32_t *rid;/* [ref] */
980
struct samr_EnumDomainGroups {
982
struct policy_handle *domain_handle;/* [ref] */
984
uint32_t *resume_handle;/* [ref] */
988
struct samr_SamArray **sam;/* [ref] */
989
uint32_t *num_entries;/* [ref] */
990
uint32_t *resume_handle;/* [ref] */
997
struct samr_CreateUser {
999
struct policy_handle *domain_handle;/* [ref] */
1000
struct lsa_String *account_name;/* [ref] */
1001
uint32_t access_mask;
1005
struct policy_handle *user_handle;/* [ref] */
1006
uint32_t *rid;/* [ref] */
1013
struct samr_EnumDomainUsers {
1015
struct policy_handle *domain_handle;/* [ref] */
1016
uint32_t acct_flags;
1018
uint32_t *resume_handle;/* [ref] */
1022
struct samr_SamArray **sam;/* [ref] */
1023
uint32_t *num_entries;/* [ref] */
1024
uint32_t *resume_handle;/* [ref] */
1031
struct samr_CreateDomAlias {
1033
struct policy_handle *domain_handle;/* [ref] */
1034
struct lsa_String *alias_name;/* [ref] */
1035
uint32_t access_mask;
1039
struct policy_handle *alias_handle;/* [ref] */
1040
uint32_t *rid;/* [ref] */
1047
struct samr_EnumDomainAliases {
1049
struct policy_handle *domain_handle;/* [ref] */
1051
uint32_t *resume_handle;/* [ref] */
1055
struct samr_SamArray **sam;/* [ref] */
1056
uint32_t *num_entries;/* [ref] */
1057
uint32_t *resume_handle;/* [ref] */
1064
struct samr_GetAliasMembership {
1066
struct policy_handle *domain_handle;/* [ref] */
1067
struct lsa_SidArray *sids;/* [ref] */
1071
struct samr_Ids *rids;/* [ref] */
1078
struct samr_LookupNames {
1080
struct policy_handle *domain_handle;/* [ref] */
1081
uint32_t num_names;/* [range(0,1000)] */
1082
struct lsa_String *names;/* [length_is(num_names),size_is(1000)] */
1086
struct samr_Ids *rids;/* [ref] */
1087
struct samr_Ids *types;/* [ref] */
1094
struct samr_LookupRids {
1096
struct policy_handle *domain_handle;/* [ref] */
1097
uint32_t num_rids;/* [range(0,1000)] */
1098
uint32_t *rids;/* [length_is(num_rids),size_is(1000)] */
1102
struct lsa_Strings *names;/* [ref] */
1103
struct samr_Ids *types;/* [ref] */
1110
struct samr_OpenGroup {
1112
struct policy_handle *domain_handle;/* [ref] */
1113
uint32_t access_mask;
1118
struct policy_handle *group_handle;/* [ref] */
1125
struct samr_QueryGroupInfo {
1127
struct policy_handle *group_handle;/* [ref] */
1128
enum samr_GroupInfoEnum level;
1132
union samr_GroupInfo **info;/* [ref,switch_is(level)] */
1139
struct samr_SetGroupInfo {
1141
struct policy_handle *group_handle;/* [ref] */
1142
enum samr_GroupInfoEnum level;
1143
union samr_GroupInfo *info;/* [ref,switch_is(level)] */
1153
struct samr_AddGroupMember {
1155
struct policy_handle *group_handle;/* [ref] */
1167
struct samr_DeleteDomainGroup {
1169
struct policy_handle *group_handle;/* [ref] */
1173
struct policy_handle *group_handle;/* [ref] */
1180
struct samr_DeleteGroupMember {
1182
struct policy_handle *group_handle;/* [ref] */
1193
struct samr_QueryGroupMember {
1195
struct policy_handle *group_handle;/* [ref] */
1199
struct samr_RidTypeArray **rids;/* [ref] */
1206
struct samr_SetMemberAttributesOfGroup {
1208
struct policy_handle *group_handle;/* [ref] */
1220
struct samr_OpenAlias {
1222
struct policy_handle *domain_handle;/* [ref] */
1223
uint32_t access_mask;
1228
struct policy_handle *alias_handle;/* [ref] */
1235
struct samr_QueryAliasInfo {
1237
struct policy_handle *alias_handle;/* [ref] */
1238
enum samr_AliasInfoEnum level;
1242
union samr_AliasInfo **info;/* [ref,switch_is(level)] */
1249
struct samr_SetAliasInfo {
1251
struct policy_handle *alias_handle;/* [ref] */
1252
enum samr_AliasInfoEnum level;
1253
union samr_AliasInfo *info;/* [ref,switch_is(level)] */
1263
struct samr_DeleteDomAlias {
1265
struct policy_handle *alias_handle;/* [ref] */
1269
struct policy_handle *alias_handle;/* [ref] */
1276
struct samr_AddAliasMember {
1278
struct policy_handle *alias_handle;/* [ref] */
1279
struct dom_sid2 *sid;/* [ref] */
1289
struct samr_DeleteAliasMember {
1291
struct policy_handle *alias_handle;/* [ref] */
1292
struct dom_sid2 *sid;/* [ref] */
1302
struct samr_GetMembersInAlias {
1304
struct policy_handle *alias_handle;/* [ref] */
1308
struct lsa_SidArray *sids;/* [ref] */
1315
struct samr_OpenUser {
1317
struct policy_handle *domain_handle;/* [ref] */
1318
uint32_t access_mask;
1323
struct policy_handle *user_handle;/* [ref] */
1330
struct samr_DeleteUser {
1332
struct policy_handle *user_handle;/* [ref] */
1336
struct policy_handle *user_handle;/* [ref] */
1343
struct samr_QueryUserInfo {
1345
struct policy_handle *user_handle;/* [ref] */
1350
union samr_UserInfo **info;/* [ref,switch_is(level)] */
1357
struct samr_SetUserInfo {
1359
struct policy_handle *user_handle;/* [ref] */
1361
union samr_UserInfo *info;/* [ref,switch_is(level)] */
1371
struct samr_ChangePasswordUser {
1373
struct policy_handle *user_handle;/* [ref] */
1375
struct samr_Password *old_lm_crypted;/* [unique] */
1376
struct samr_Password *new_lm_crypted;/* [unique] */
1378
struct samr_Password *old_nt_crypted;/* [unique] */
1379
struct samr_Password *new_nt_crypted;/* [unique] */
1380
uint8_t cross1_present;
1381
struct samr_Password *nt_cross;/* [unique] */
1382
uint8_t cross2_present;
1383
struct samr_Password *lm_cross;/* [unique] */
1393
struct samr_GetGroupsForUser {
1395
struct policy_handle *user_handle;/* [ref] */
1399
struct samr_RidWithAttributeArray **rids;/* [ref] */
1406
struct samr_QueryDisplayInfo {
1408
struct policy_handle *domain_handle;/* [ref] */
1411
uint32_t max_entries;
1416
uint32_t *total_size;/* [ref] */
1417
uint32_t *returned_size;/* [ref] */
1418
union samr_DispInfo *info;/* [ref,switch_is(level)] */
1425
struct samr_GetDisplayEnumerationIndex {
1427
struct policy_handle *domain_handle;/* [ref] */
1429
struct lsa_String *name;/* [ref] */
1433
uint32_t *idx;/* [ref] */
1440
struct samr_TestPrivateFunctionsDomain {
1442
struct policy_handle *domain_handle;/* [ref] */
1452
struct samr_TestPrivateFunctionsUser {
1454
struct policy_handle *user_handle;/* [ref] */
1464
struct samr_GetUserPwInfo {
1466
struct policy_handle *user_handle;/* [ref] */
1470
struct samr_PwInfo *info;/* [ref] */
1477
struct samr_RemoveMemberFromForeignDomain {
1479
struct policy_handle *domain_handle;/* [ref] */
1480
struct dom_sid2 *sid;/* [ref] */
1490
struct samr_QueryDomainInfo2 {
1492
struct policy_handle *domain_handle;/* [ref] */
1497
union samr_DomainInfo **info;/* [ref,switch_is(level)] */
1504
struct samr_QueryUserInfo2 {
1506
struct policy_handle *user_handle;/* [ref] */
1511
union samr_UserInfo **info;/* [ref,switch_is(level)] */
1518
struct samr_QueryDisplayInfo2 {
1520
struct policy_handle *domain_handle;/* [ref] */
1523
uint32_t max_entries;
1528
uint32_t *total_size;/* [ref] */
1529
uint32_t *returned_size;/* [ref] */
1530
union samr_DispInfo *info;/* [ref,switch_is(level)] */
1537
struct samr_GetDisplayEnumerationIndex2 {
1539
struct policy_handle *domain_handle;/* [ref] */
1541
struct lsa_String *name;/* [ref] */
1545
uint32_t *idx;/* [ref] */
1552
struct samr_CreateUser2 {
1554
struct policy_handle *domain_handle;/* [ref] */
1555
struct lsa_String *account_name;/* [ref] */
1556
uint32_t acct_flags;
1557
uint32_t access_mask;
1561
struct policy_handle *user_handle;/* [ref] */
1562
uint32_t *access_granted;/* [ref] */
1563
uint32_t *rid;/* [ref] */
1570
struct samr_QueryDisplayInfo3 {
1572
struct policy_handle *domain_handle;/* [ref] */
1575
uint32_t max_entries;
1580
uint32_t *total_size;/* [ref] */
1581
uint32_t *returned_size;/* [ref] */
1582
union samr_DispInfo *info;/* [ref,switch_is(level)] */
1589
struct samr_AddMultipleMembersToAlias {
1591
struct policy_handle *alias_handle;/* [ref] */
1592
struct lsa_SidArray *sids;/* [ref] */
1602
struct samr_RemoveMultipleMembersFromAlias {
1604
struct policy_handle *alias_handle;/* [ref] */
1605
struct lsa_SidArray *sids;/* [ref] */
1615
struct samr_OemChangePasswordUser2 {
1617
struct lsa_AsciiString *server;/* [unique] */
1618
struct lsa_AsciiString *account;/* [ref] */
1619
struct samr_CryptPassword *password;/* [unique] */
1620
struct samr_Password *hash;/* [unique] */
1630
struct samr_ChangePasswordUser2 {
1632
struct lsa_String *server;/* [unique] */
1633
struct lsa_String *account;/* [ref] */
1634
struct samr_CryptPassword *nt_password;/* [unique] */
1635
struct samr_Password *nt_verifier;/* [unique] */
1637
struct samr_CryptPassword *lm_password;/* [unique] */
1638
struct samr_Password *lm_verifier;/* [unique] */
1648
struct samr_GetDomPwInfo {
1650
struct lsa_String *domain_name;/* [unique] */
1654
struct samr_PwInfo *info;/* [ref] */
1661
struct samr_Connect2 {
1663
const char *system_name;/* [unique,charset(UTF16)] */
1664
uint32_t access_mask;
1668
struct policy_handle *connect_handle;/* [ref] */
1675
struct samr_SetUserInfo2 {
1677
struct policy_handle *user_handle;/* [ref] */
1679
union samr_UserInfo *info;/* [ref,switch_is(level)] */
1689
struct samr_SetBootKeyInformation {
1691
struct policy_handle *connect_handle;/* [ref] */
1704
struct samr_GetBootKeyInformation {
1706
struct policy_handle *domain_handle;/* [ref] */
1710
uint32_t *unknown;/* [ref] */
1717
struct samr_Connect3 {
1719
const char *system_name;/* [unique,charset(UTF16)] */
1721
uint32_t access_mask;
1725
struct policy_handle *connect_handle;/* [ref] */
1732
struct samr_Connect4 {
1734
const char *system_name;/* [unique,charset(UTF16)] */
1735
enum samr_ConnectVersion client_version;
1736
uint32_t access_mask;
1740
struct policy_handle *connect_handle;/* [ref] */
1747
struct samr_ChangePasswordUser3 {
1749
struct lsa_String *server;/* [unique] */
1750
struct lsa_String *account;/* [ref] */
1751
struct samr_CryptPassword *nt_password;/* [unique] */
1752
struct samr_Password *nt_verifier;/* [unique] */
1754
struct samr_CryptPassword *lm_password;/* [unique] */
1755
struct samr_Password *lm_verifier;/* [unique] */
1756
struct samr_CryptPassword *password3;/* [unique] */
1760
struct samr_DomInfo1 **dominfo;/* [ref] */
1761
struct samr_ChangeReject **reject;/* [ref] */
1768
struct samr_Connect5 {
1770
const char *system_name;/* [unique,charset(UTF16)] */
1771
uint32_t access_mask;
1773
union samr_ConnectInfo *info_in;/* [ref,switch_is(level_in)] */
1777
uint32_t *level_out;/* [ref] */
1778
union samr_ConnectInfo *info_out;/* [ref,switch_is(*level_out)] */
1779
struct policy_handle *connect_handle;/* [ref] */
1786
struct samr_RidToSid {
1788
struct policy_handle *domain_handle;/* [ref] */
1793
struct dom_sid2 **sid;/* [ref] */
1800
struct samr_SetDsrmPassword {
1802
struct lsa_String *name;/* [unique] */
1804
struct samr_Password *hash;/* [unique] */
1814
struct samr_ValidatePassword {
1816
enum samr_ValidatePasswordLevel level;
1817
union samr_ValidatePasswordReq *req;/* [ref,switch_is(level)] */
1821
union samr_ValidatePasswordRep **rep;/* [ref,switch_is(level)] */
1827
#endif /* _HEADER_samr */