1 /* header auto-generated by pidl */
5 #include "librpc/gen_ndr/lsa.h"
6 #include "librpc/gen_ndr/samr.h"
7 #include "librpc/gen_ndr/security.h"
8 #ifndef _HEADER_netlogon
9 #define _HEADER_netlogon
11 #define MSV1_0_CLEARTEXT_PASSWORD_ALLOWED ( 0x002 )
12 #define MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT ( 0x020 )
13 #define MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT ( 0x800 )
14 #define NETLOGON_NEG_ARCFOUR ( 0x00000004 )
15 #define NETLOGON_NEG_128BIT ( 0x00004000 )
16 #define NETLOGON_NEG_SCHANNEL ( 0x40000000 )
18 const char *account_name
;/* [unique,charset(UTF16)] */
22 uint32_t bad_pw_count
;
27 uint32_t password_age
;
29 time_t pw_must_change
;
30 const char *computer
;/* [unique,charset(UTF16)] */
31 const char *domain
;/* [unique,charset(UTF16)] */
32 const char *script_path
;/* [unique,charset(UTF16)] */
36 struct netr_UasLogoffInfo
{
41 struct netr_AcctLockStr
{
44 uint16_t *bindata
;/* [unique,length_is(length/2),size_is(size/2)] */
47 struct netr_IdentityInfo
{
48 struct lsa_String domain_name
;
49 uint32_t parameter_control
;
50 uint32_t logon_id_low
;
51 uint32_t logon_id_high
;
52 struct lsa_String account_name
;
53 struct lsa_String workstation
;
56 struct netr_PasswordInfo
{
57 struct netr_IdentityInfo identity_info
;
58 struct samr_Password lmpassword
;
59 struct samr_Password ntpassword
;
62 struct netr_ChallengeResponse
{
64 uint16_t size
;/* [value(length)] */
65 uint8_t *data
;/* [unique,length_is(length),size_is(length)] */
66 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
68 struct netr_NetworkInfo
{
69 struct netr_IdentityInfo identity_info
;
71 struct netr_ChallengeResponse nt
;
72 struct netr_ChallengeResponse lm
;
73 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
75 union netr_LogonLevel
{
76 struct netr_PasswordInfo
*password
;/* [unique,case] */
77 struct netr_NetworkInfo
*network
;/* [unique,case(2)] */
78 }/* [public,switch_type(uint16)] */;
80 struct netr_GroupMembership
{
85 struct netr_UserSessionKey
{
87 }/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
89 struct netr_LMSessionKey
{
91 }/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
93 /* bitmap netr_UserFlags */
94 #define NETLOGON_GUEST ( 0x0001 )
95 #define NETLOGON_NOENCRYPTION ( 0x0002 )
96 #define NETLOGON_CACHED_ACCOUNT ( 0x0004 )
97 #define NETLOGON_USED_LM_PASSWORD ( 0x0008 )
98 #define NETLOGON_EXTRA_SIDS ( 0x0020 )
99 #define NETLOGON_SUBAUTH_SESSION_KEY ( 0x0040 )
100 #define NETLOGON_SERVER_TRUST_ACCOUNT ( 0x0080 )
101 #define NETLOGON_NTLMV2_ENABLED ( 0x0100 )
102 #define NETLOGON_RESOURCE_GROUPS ( 0x0200 )
103 #define NETLOGON_PROFILE_PATH_RETURNED ( 0x0400 )
107 struct netr_SamBaseInfo
{
111 NTTIME last_password_change
;
112 NTTIME allow_password_change
;
113 NTTIME force_password_change
;
114 struct lsa_String account_name
;
115 struct lsa_String full_name
;
116 struct lsa_String logon_script
;
117 struct lsa_String profile_path
;
118 struct lsa_String home_directory
;
119 struct lsa_String home_drive
;
120 uint16_t logon_count
;
121 uint16_t bad_password_count
;
123 uint32_t primary_gid
;
124 struct samr_RidWithAttributeArray groups
;
126 struct netr_UserSessionKey key
;
127 struct lsa_StringLarge logon_server
;
128 struct lsa_StringLarge domain
;
129 struct dom_sid2
*domain_sid
;/* [unique] */
130 struct netr_LMSessionKey LMSessKey
;
135 struct netr_SamInfo2
{
136 struct netr_SamBaseInfo base
;
139 struct netr_SidAttr
{
140 struct dom_sid2
*sid
;/* [unique] */
144 struct netr_SamInfo3
{
145 struct netr_SamBaseInfo base
;
147 struct netr_SidAttr
*sids
;/* [unique,size_is(sidcount)] */
150 struct netr_SamInfo6
{
151 struct netr_SamBaseInfo base
;
153 struct netr_SidAttr
*sids
;/* [unique,size_is(sidcount)] */
154 struct lsa_String forest
;
155 struct lsa_String principle
;
156 uint32_t unknown4
[20];
159 struct netr_PacInfo
{
161 uint8_t *pac
;/* [unique,size_is(pac_size)] */
162 struct lsa_String logon_domain
;
163 struct lsa_String logon_server
;
164 struct lsa_String principal_name
;
166 uint8_t *auth
;/* [unique,size_is(auth_size)] */
167 struct netr_UserSessionKey user_session_key
;
168 uint32_t expansionroom
[10];
169 struct lsa_String unknown1
;
170 struct lsa_String unknown2
;
171 struct lsa_String unknown3
;
172 struct lsa_String unknown4
;
175 union netr_Validation
{
176 struct netr_SamInfo2
*sam2
;/* [unique,case(2)] */
177 struct netr_SamInfo3
*sam3
;/* [unique,case(3)] */
178 struct netr_PacInfo
*pac
;/* [unique,case(4)] */
179 struct netr_SamInfo6
*sam6
;/* [unique,case(6)] */
180 }/* [public,switch_type(uint16)] */;
182 struct netr_Credential
{
184 }/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
186 struct netr_Authenticator
{
187 struct netr_Credential cred
;
191 struct netr_DELTA_DELETE_USER
{
192 const char *account_name
;/* [unique,charset(UTF16)] */
193 struct lsa_String unknown1
;
194 struct lsa_String unknown2
;
195 struct lsa_String unknown3
;
196 struct lsa_String unknown4
;
203 struct netr_USER_KEY16
{
205 uint16_t size
;/* [value(length)] */
207 struct samr_Password pwd
;
210 struct netr_PasswordHistory
{
221 struct netr_USER_KEYS2
{
222 struct netr_USER_KEY16 lmpassword
;
223 struct netr_USER_KEY16 ntpassword
;
224 struct netr_PasswordHistory lmhistory
;
227 struct netr_USER_KEY_UNION
{
228 struct netr_USER_KEYS2 keys2
;
231 struct netr_USER_KEYS
{
233 struct netr_USER_KEY_UNION keys
;
236 struct netr_USER_PRIVATE_INFO
{
237 uint8_t SensitiveDataFlag
;
239 uint8_t *SensitiveData
;/* [unique,flag(LIBNDR_PRINT_ARRAY_HEX),size_is(DataLength)] */
242 struct netr_DELTA_USER
{
243 struct lsa_String account_name
;
244 struct lsa_String full_name
;
246 uint32_t primary_gid
;
247 struct lsa_String home_directory
;
248 struct lsa_String home_drive
;
249 struct lsa_String logon_script
;
250 struct lsa_String description
;
251 struct lsa_String workstations
;
254 struct samr_LogonHours logon_hours
;
255 uint16_t bad_password_count
;
256 uint16_t logon_count
;
257 NTTIME last_password_change
;
260 struct samr_Password lmpassword
;
261 struct samr_Password ntpassword
;
262 uint8_t nt_password_present
;
263 uint8_t lm_password_present
;
264 uint8_t password_expired
;
265 struct lsa_String comment
;
266 struct lsa_String parameters
;
267 uint16_t country_code
;
269 struct netr_USER_PRIVATE_INFO user_private_info
;
270 uint32_t SecurityInformation
;
271 struct sec_desc_buf sdbuf
;
272 struct lsa_String profile_path
;
273 struct lsa_String unknown2
;
274 struct lsa_String unknown3
;
275 struct lsa_String unknown4
;
282 struct netr_DELTA_DOMAIN
{
283 struct lsa_String domain_name
;
284 struct lsa_String comment
;
285 int64_t force_logoff_time
;
286 uint16_t min_password_length
;
287 uint16_t password_history_length
;
288 int64_t max_password_age
;
289 int64_t min_password_age
;
290 uint64_t sequence_num
;
291 NTTIME domain_create_time
;
292 uint32_t SecurityInformation
;
293 struct sec_desc_buf sdbuf
;
294 struct netr_AcctLockStr account_lockout
;
295 struct lsa_String unknown2
;
296 struct lsa_String unknown3
;
297 struct lsa_String unknown4
;
298 uint32_t logon_to_chgpass
;
304 struct netr_DELTA_GROUP
{
305 struct lsa_String group_name
;
308 struct lsa_String description
;
309 uint32_t SecurityInformation
;
310 struct sec_desc_buf sdbuf
;
311 struct lsa_String unknown1
;
312 struct lsa_String unknown2
;
313 struct lsa_String unknown3
;
314 struct lsa_String unknown4
;
321 struct netr_DELTA_RENAME
{
322 struct lsa_String OldName
;
323 struct lsa_String NewName
;
324 struct lsa_String unknown1
;
325 struct lsa_String unknown2
;
326 struct lsa_String unknown3
;
327 struct lsa_String unknown4
;
334 struct netr_DELTA_GROUP_MEMBER
{
335 uint32_t *rids
;/* [unique,size_is(num_rids)] */
336 uint32_t *attribs
;/* [unique,size_is(num_rids)] */
344 struct netr_DELTA_ALIAS
{
345 struct lsa_String alias_name
;
347 uint32_t SecurityInformation
;
348 struct sec_desc_buf sdbuf
;
349 struct lsa_String description
;
350 struct lsa_String unknown2
;
351 struct lsa_String unknown3
;
352 struct lsa_String unknown4
;
359 struct netr_DELTA_ALIAS_MEMBER
{
360 struct lsa_SidArray sids
;
367 struct netr_QUOTA_LIMITS
{
368 uint32_t pagedpoollimit
;
369 uint32_t nonpagedpoollimit
;
370 uint32_t minimumworkingsetsize
;
371 uint32_t maximumworkingsetsize
;
372 uint32_t pagefilelimit
;
376 struct netr_DELTA_POLICY
{
378 NTTIME auditretentionperiod
;
379 uint8_t auditingmode
;
380 uint32_t maxauditeventcount
;
381 uint32_t *eventauditoptions
;/* [unique,size_is(maxauditeventcount+1)] */
382 struct lsa_String primary_domain_name
;
383 struct dom_sid2
*sid
;/* [unique] */
384 struct netr_QUOTA_LIMITS quota_limits
;
385 uint64_t sequence_num
;
386 NTTIME db_create_time
;
387 uint32_t SecurityInformation
;
388 struct sec_desc_buf sdbuf
;
389 struct lsa_String unknown1
;
390 struct lsa_String unknown2
;
391 struct lsa_String unknown3
;
392 struct lsa_String unknown4
;
399 struct netr_DELTA_TRUSTED_DOMAIN
{
400 struct lsa_String domain_name
;
401 uint32_t num_controllers
;
402 struct lsa_String
*controller_names
;/* [unique,size_is(num_controllers)] */
403 uint32_t SecurityInformation
;
404 struct sec_desc_buf sdbuf
;
405 struct lsa_String unknown1
;
406 struct lsa_String unknown2
;
407 struct lsa_String unknown3
;
408 struct lsa_String unknown4
;
409 uint32_t posix_offset
;
415 struct netr_DELTA_DELETE_TRUST
{
419 struct netr_DELTA_ACCOUNT
{
420 uint32_t privilege_entries
;
421 uint32_t privilege_control
;
422 uint32_t *privilege_attrib
;/* [unique,size_is(privilege_entries)] */
423 struct lsa_String
*privilege_name
;/* [unique,size_is(privilege_entries)] */
424 struct netr_QUOTA_LIMITS quotalimits
;
425 uint32_t system_flags
;
426 uint32_t SecurityInformation
;
427 struct sec_desc_buf sdbuf
;
428 struct lsa_String unknown1
;
429 struct lsa_String unknown2
;
430 struct lsa_String unknown3
;
431 struct lsa_String unknown4
;
438 struct netr_DELTA_DELETE_ACCOUNT
{
442 struct netr_DELTA_DELETE_SECRET
{
446 struct netr_CIPHER_VALUE
{
449 uint8_t *cipher_data
;/* [unique,length_is(len),size_is(maxlen)] */
452 struct netr_DELTA_SECRET
{
453 struct netr_CIPHER_VALUE current_cipher
;
454 NTTIME current_cipher_set_time
;
455 struct netr_CIPHER_VALUE old_cipher
;
456 NTTIME old_cipher_set_time
;
457 uint32_t SecurityInformation
;
458 struct sec_desc_buf sdbuf
;
459 struct lsa_String unknown1
;
460 struct lsa_String unknown2
;
461 struct lsa_String unknown3
;
462 struct lsa_String unknown4
;
469 #ifndef USE_UINT_ENUMS
470 enum netr_DeltaEnum
{
473 NETR_DELTA_DELETE_GROUP
=3,
474 NETR_DELTA_RENAME_GROUP
=4,
476 NETR_DELTA_DELETE_USER
=6,
477 NETR_DELTA_RENAME_USER
=7,
478 NETR_DELTA_GROUP_MEMBER
=8,
480 NETR_DELTA_DELETE_ALIAS
=10,
481 NETR_DELTA_RENAME_ALIAS
=11,
482 NETR_DELTA_ALIAS_MEMBER
=12,
483 NETR_DELTA_POLICY
=13,
484 NETR_DELTA_TRUSTED_DOMAIN
=14,
485 NETR_DELTA_DELETE_TRUST
=15,
486 NETR_DELTA_ACCOUNT
=16,
487 NETR_DELTA_DELETE_ACCOUNT
=17,
488 NETR_DELTA_SECRET
=18,
489 NETR_DELTA_DELETE_SECRET
=19,
490 NETR_DELTA_DELETE_GROUP2
=20,
491 NETR_DELTA_DELETE_USER2
=21,
492 NETR_DELTA_MODIFY_COUNT
=22
495 enum netr_DeltaEnum
{ __donnot_use_enum_netr_DeltaEnum
=0x7FFFFFFF}
496 #define NETR_DELTA_DOMAIN ( 1 )
497 #define NETR_DELTA_GROUP ( 2 )
498 #define NETR_DELTA_DELETE_GROUP ( 3 )
499 #define NETR_DELTA_RENAME_GROUP ( 4 )
500 #define NETR_DELTA_USER ( 5 )
501 #define NETR_DELTA_DELETE_USER ( 6 )
502 #define NETR_DELTA_RENAME_USER ( 7 )
503 #define NETR_DELTA_GROUP_MEMBER ( 8 )
504 #define NETR_DELTA_ALIAS ( 9 )
505 #define NETR_DELTA_DELETE_ALIAS ( 10 )
506 #define NETR_DELTA_RENAME_ALIAS ( 11 )
507 #define NETR_DELTA_ALIAS_MEMBER ( 12 )
508 #define NETR_DELTA_POLICY ( 13 )
509 #define NETR_DELTA_TRUSTED_DOMAIN ( 14 )
510 #define NETR_DELTA_DELETE_TRUST ( 15 )
511 #define NETR_DELTA_ACCOUNT ( 16 )
512 #define NETR_DELTA_DELETE_ACCOUNT ( 17 )
513 #define NETR_DELTA_SECRET ( 18 )
514 #define NETR_DELTA_DELETE_SECRET ( 19 )
515 #define NETR_DELTA_DELETE_GROUP2 ( 20 )
516 #define NETR_DELTA_DELETE_USER2 ( 21 )
517 #define NETR_DELTA_MODIFY_COUNT ( 22 )
521 union netr_DELTA_UNION
{
522 struct netr_DELTA_DOMAIN
*domain
;/* [unique,case(NETR_DELTA_DOMAIN)] */
523 struct netr_DELTA_GROUP
*group
;/* [unique,case(NETR_DELTA_GROUP)] */
524 struct netr_DELTA_RENAME
*rename_group
;/* [unique,case(NETR_DELTA_RENAME_GROUP)] */
525 struct netr_DELTA_USER
*user
;/* [unique,case(NETR_DELTA_USER)] */
526 struct netr_DELTA_RENAME
*rename_user
;/* [unique,case(NETR_DELTA_RENAME_USER)] */
527 struct netr_DELTA_GROUP_MEMBER
*group_member
;/* [unique,case(NETR_DELTA_GROUP_MEMBER)] */
528 struct netr_DELTA_ALIAS
*alias
;/* [unique,case(NETR_DELTA_ALIAS)] */
529 struct netr_DELTA_RENAME
*rename_alias
;/* [unique,case(NETR_DELTA_RENAME_ALIAS)] */
530 struct netr_DELTA_ALIAS_MEMBER
*alias_member
;/* [unique,case(NETR_DELTA_ALIAS_MEMBER)] */
531 struct netr_DELTA_POLICY
*policy
;/* [unique,case(NETR_DELTA_POLICY)] */
532 struct netr_DELTA_TRUSTED_DOMAIN
*trusted_domain
;/* [unique,case(NETR_DELTA_TRUSTED_DOMAIN)] */
533 struct netr_DELTA_DELETE_TRUST delete_trust
;/* [case(NETR_DELTA_DELETE_TRUST)] */
534 struct netr_DELTA_ACCOUNT
*account
;/* [unique,case(NETR_DELTA_ACCOUNT)] */
535 struct netr_DELTA_DELETE_ACCOUNT delete_account
;/* [case(NETR_DELTA_DELETE_ACCOUNT)] */
536 struct netr_DELTA_SECRET
*secret
;/* [unique,case(NETR_DELTA_SECRET)] */
537 struct netr_DELTA_DELETE_SECRET delete_secret
;/* [case(NETR_DELTA_DELETE_SECRET)] */
538 struct netr_DELTA_DELETE_USER
*delete_group
;/* [unique,case(NETR_DELTA_DELETE_GROUP2)] */
539 struct netr_DELTA_DELETE_USER
*delete_user
;/* [unique,case(NETR_DELTA_DELETE_USER2)] */
540 uint64_t *modified_count
;/* [unique,case(NETR_DELTA_MODIFY_COUNT)] */
541 }/* [switch_type(netr_DeltaEnum)] */;
543 union netr_DELTA_ID_UNION
{
544 uint32_t rid
;/* [case(NETR_DELTA_DOMAIN)] */
545 struct dom_sid2
*sid
;/* [unique,case(NETR_DELTA_POLICY)] */
546 const char *name
;/* [unique,charset(UTF16),case(NETR_DELTA_SECRET)] */
547 }/* [switch_type(netr_DeltaEnum)] */;
549 struct netr_DELTA_ENUM
{
550 enum netr_DeltaEnum delta_type
;
551 union netr_DELTA_ID_UNION delta_id_union
;/* [switch_is(delta_type)] */
552 union netr_DELTA_UNION delta_union
;/* [switch_is(delta_type)] */
555 struct netr_DELTA_ENUM_ARRAY
{
557 struct netr_DELTA_ENUM
*delta_enum
;/* [unique,size_is(num_deltas)] */
560 struct netr_UAS_INFO_0
{
561 uint8_t computer_name
[16];
562 uint32_t timecreated
;
563 uint32_t serial_number
;
564 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
566 struct netr_AccountBuffer
{
567 DATA_BLOB blob
;/* [flag(LIBNDR_FLAG_REMAINING)] */
570 struct netr_NETLOGON_INFO_1
{
572 uint32_t pdc_connection_status
;
575 struct netr_NETLOGON_INFO_2
{
577 uint32_t pdc_connection_status
;
578 const char *trusted_dc_name
;/* [charset(UTF16)] */
579 uint32_t tc_connection_status
;
582 struct netr_NETLOGON_INFO_3
{
584 uint32_t logon_attempts
;
592 union netr_CONTROL_QUERY_INFORMATION
{
593 struct netr_NETLOGON_INFO_1
*info1
;/* [unique,case] */
594 struct netr_NETLOGON_INFO_2
*info2
;/* [unique,case(2)] */
595 struct netr_NETLOGON_INFO_3
*info3
;/* [unique,case(3)] */
598 #ifndef USE_UINT_ENUMS
599 enum netr_LogonControlCode
{
600 NETLOGON_CONTROL_REDISCOVER
=5,
601 NETLOGON_CONTROL_TC_QUERY
=6,
602 NETLOGON_CONTROL_TRANSPORT_NOTIFY
=7,
603 NETLOGON_CONTROL_SET_DBFLAG
=65534
606 enum netr_LogonControlCode
{ __donnot_use_enum_netr_LogonControlCode
=0x7FFFFFFF}
607 #define NETLOGON_CONTROL_REDISCOVER ( 5 )
608 #define NETLOGON_CONTROL_TC_QUERY ( 6 )
609 #define NETLOGON_CONTROL_TRANSPORT_NOTIFY ( 7 )
610 #define NETLOGON_CONTROL_SET_DBFLAG ( 65534 )
614 union netr_CONTROL_DATA_INFORMATION
{
615 const char *domain
;/* [unique,charset(UTF16),case(NETLOGON_CONTROL_REDISCOVER)] */
616 uint32_t debug_level
;/* [case(NETLOGON_CONTROL_SET_DBFLAG)] */
619 struct netr_DsRGetDCNameInfo
{
620 const char *dc_unc
;/* [unique,charset(UTF16)] */
621 const char *dc_address
;/* [unique,charset(UTF16)] */
622 int32_t dc_address_type
;
623 struct GUID domain_guid
;
624 const char *domain_name
;/* [unique,charset(UTF16)] */
625 const char *forest_name
;/* [unique,charset(UTF16)] */
627 const char *dc_site_name
;/* [unique,charset(UTF16)] */
628 const char *client_site_name
;/* [unique,charset(UTF16)] */
633 uint8_t *data
;/* [unique,size_is(length)] */
636 struct netr_BinaryString
{
639 uint16_t *data
;/* [unique,length_is(length/2),size_is(size/2)] */
640 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
642 struct netr_DomainQuery1
{
643 struct netr_Blob blob
;
644 const char *workstation_domain
;/* [unique,charset(UTF16)] */
645 const char *workstation_site
;/* [unique,charset(UTF16)] */
646 const char *unknown1
;/* [unique,charset(UTF16)] */
647 const char *unknown2
;/* [unique,charset(UTF16)] */
648 const char *unknown3
;/* [unique,charset(UTF16)] */
649 const char *unknown4
;/* [unique,charset(UTF16)] */
650 struct netr_BinaryString blob2
;
651 struct lsa_String product
;
652 struct lsa_String unknown5
;
653 struct lsa_String unknown6
;
654 uint32_t unknown7
[4];
657 union netr_DomainQuery
{
658 struct netr_DomainQuery1
*query1
;/* [unique,case] */
661 struct netr_DomainTrustInfo
{
662 struct lsa_String domainname
;
663 struct lsa_String fulldomainname
;
664 struct lsa_String forest
;
666 struct dom_sid2
*sid
;/* [unique] */
667 struct netr_BinaryString unknown1
[4];
671 struct netr_DomainInfo1
{
672 struct netr_DomainTrustInfo domaininfo
;
674 struct netr_DomainTrustInfo
*trusts
;/* [unique,size_is(num_trusts)] */
675 uint32_t unknown
[14];
678 union netr_DomainInfo
{
679 struct netr_DomainInfo1
*info1
;/* [unique,case] */
682 struct netr_CryptPassword
{
685 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
687 /* bitmap netr_TrustFlags */
688 #define NETR_TRUST_FLAG_IN_FOREST ( 0x00000001 )
689 #define NETR_TRUST_FLAG_OUTBOUND ( 0x00000002 )
690 #define NETR_TRUST_FLAG_TREEROOT ( 0x00000004 )
691 #define NETR_TRUST_FLAG_PRIMARY ( 0x00000008 )
692 #define NETR_TRUST_FLAG_NATIVE ( 0x00000010 )
693 #define NETR_TRUST_FLAG_INBOUND ( 0x00000020 )
697 #ifndef USE_UINT_ENUMS
698 enum netr_TrustType
{
699 NETR_TRUST_TYPE_DOWNLEVEL
=1,
700 NETR_TRUST_TYPE_UPLEVEL
=2,
701 NETR_TRUST_TYPE_MIT
=3,
702 NETR_TRUST_TYPE_DCE
=4
705 enum netr_TrustType
{ __donnot_use_enum_netr_TrustType
=0x7FFFFFFF}
706 #define NETR_TRUST_TYPE_DOWNLEVEL ( 1 )
707 #define NETR_TRUST_TYPE_UPLEVEL ( 2 )
708 #define NETR_TRUST_TYPE_MIT ( 3 )
709 #define NETR_TRUST_TYPE_DCE ( 4 )
713 /* bitmap netr_TrustAttributes */
714 #define NETR_TRUST_ATTRIBUTE_NON_TRANSITIVE ( 0x00000001 )
715 #define NETR_TRUST_ATTRIBUTE_UPLEVEL_ONLY ( 0x00000002 )
716 #define NETR_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN ( 0x00000004 )
717 #define NETR_TRUST_ATTRIBUTE_FOREST_TRANSITIVE ( 0x00000008 )
718 #define NETR_TRUST_ATTRIBUTE_CROSS_ORGANIZATION ( 0x00000010 )
719 #define NETR_TRUST_ATTRIBUTE_WITHIN_FOREST ( 0x00000020 )
720 #define NETR_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL ( 0x00000040 )
724 struct netr_DomainTrust
{
725 const char *netbios_name
;/* [unique,charset(UTF16)] */
726 const char *dns_name
;/* [unique,charset(UTF16)] */
727 uint32_t trust_flags
;
728 uint32_t parent_index
;
729 enum netr_TrustType trust_type
;
730 uint32_t trust_attributes
;
731 struct dom_sid2
*sid
;/* [unique] */
736 struct netr_LogonUasLogon
{
738 const char *server_name
;/* [unique,charset(UTF16)] */
739 const char *account_name
;/* [charset(UTF16)] */
740 const char *workstation
;/* [charset(UTF16)] */
744 struct netr_UasInfo
*info
;/* [unique] */
751 struct netr_LogonUasLogoff
{
753 const char *server_name
;/* [unique,charset(UTF16)] */
754 const char *account_name
;/* [charset(UTF16)] */
755 const char *workstation
;/* [charset(UTF16)] */
759 struct netr_UasLogoffInfo
*info
;/* [ref] */
766 struct netr_LogonSamLogon
{
768 const char *server_name
;/* [unique,charset(UTF16)] */
769 const char *computer_name
;/* [unique,charset(UTF16)] */
770 struct netr_Authenticator
*credential
;/* [unique] */
771 uint16_t logon_level
;
772 union netr_LogonLevel logon
;/* [switch_is(logon_level)] */
773 uint16_t validation_level
;
774 struct netr_Authenticator
*return_authenticator
;/* [unique] */
778 union netr_Validation
*validation
;/* [ref,switch_is(validation_level)] */
779 uint8_t *authoritative
;/* [ref] */
780 struct netr_Authenticator
*return_authenticator
;/* [unique] */
787 struct netr_LogonSamLogoff
{
789 const char *server_name
;/* [unique,charset(UTF16)] */
790 const char *computer_name
;/* [unique,charset(UTF16)] */
791 struct netr_Authenticator
*credential
;/* [unique] */
792 uint16_t logon_level
;
793 union netr_LogonLevel logon
;/* [switch_is(logon_level)] */
794 struct netr_Authenticator
*return_authenticator
;/* [unique] */
798 struct netr_Authenticator
*return_authenticator
;/* [unique] */
805 struct netr_ServerReqChallenge
{
807 const char *server_name
;/* [unique,charset(UTF16)] */
808 const char *computer_name
;/* [charset(UTF16)] */
809 struct netr_Credential
*credentials
;/* [ref] */
813 struct netr_Credential
*credentials
;/* [ref] */
820 struct netr_ServerAuthenticate
{
822 const char *server_name
;/* [unique,charset(UTF16)] */
823 const char *account_name
;/* [charset(UTF16)] */
824 enum netr_SchannelType secure_channel_type
;
825 const char *computer_name
;/* [charset(UTF16)] */
826 struct netr_Credential
*credentials
;/* [ref] */
830 struct netr_Credential
*credentials
;/* [ref] */
837 struct netr_ServerPasswordSet
{
839 const char *server_name
;/* [unique,charset(UTF16)] */
840 const char *account_name
;/* [charset(UTF16)] */
841 enum netr_SchannelType secure_channel_type
;
842 const char *computer_name
;/* [charset(UTF16)] */
843 struct netr_Authenticator credential
;
844 struct samr_Password new_password
;
848 struct netr_Authenticator
*return_authenticator
;/* [ref] */
855 struct netr_DatabaseDeltas
{
857 const char *logon_server
;/* [charset(UTF16)] */
858 const char *computername
;/* [charset(UTF16)] */
859 struct netr_Authenticator credential
;
860 enum netr_SamDatabaseID database_id
;
861 uint32_t preferredmaximumlength
;
862 struct netr_Authenticator
*return_authenticator
;/* [ref] */
863 uint64_t *sequence_num
;/* [ref] */
867 struct netr_DELTA_ENUM_ARRAY
*delta_enum_array
;/* [unique] */
868 struct netr_Authenticator
*return_authenticator
;/* [ref] */
869 uint64_t *sequence_num
;/* [ref] */
876 struct netr_DatabaseSync
{
878 const char *logon_server
;/* [charset(UTF16)] */
879 const char *computername
;/* [charset(UTF16)] */
880 struct netr_Authenticator credential
;
881 enum netr_SamDatabaseID database_id
;
882 uint32_t preferredmaximumlength
;
883 struct netr_Authenticator
*return_authenticator
;/* [ref] */
884 uint32_t *sync_context
;/* [ref] */
888 struct netr_DELTA_ENUM_ARRAY
*delta_enum_array
;/* [unique] */
889 struct netr_Authenticator
*return_authenticator
;/* [ref] */
890 uint32_t *sync_context
;/* [ref] */
897 struct netr_AccountDeltas
{
899 const char *logon_server
;/* [unique,charset(UTF16)] */
900 const char *computername
;/* [charset(UTF16)] */
901 struct netr_Authenticator credential
;
902 struct netr_UAS_INFO_0 uas
;
906 struct netr_Authenticator
*return_authenticator
;/* [ref] */
910 struct netr_AccountBuffer
*buffer
;/* [ref,subcontext(4)] */
911 uint32_t *count_returned
;/* [ref] */
912 uint32_t *total_entries
;/* [ref] */
913 struct netr_UAS_INFO_0
*recordid
;/* [ref] */
914 struct netr_Authenticator
*return_authenticator
;/* [ref] */
921 struct netr_AccountSync
{
923 const char *logon_server
;/* [unique,charset(UTF16)] */
924 const char *computername
;/* [charset(UTF16)] */
925 struct netr_Authenticator credential
;
929 struct netr_Authenticator
*return_authenticator
;/* [ref] */
930 struct netr_UAS_INFO_0
*recordid
;/* [ref] */
934 struct netr_AccountBuffer
*buffer
;/* [ref,subcontext(4)] */
935 uint32_t *count_returned
;/* [ref] */
936 uint32_t *total_entries
;/* [ref] */
937 uint32_t *next_reference
;/* [ref] */
938 struct netr_Authenticator
*return_authenticator
;/* [ref] */
939 struct netr_UAS_INFO_0
*recordid
;/* [ref] */
946 struct netr_GetDcName
{
948 const char *logon_server
;/* [charset(UTF16)] */
949 const char *domainname
;/* [unique,charset(UTF16)] */
953 const char **dcname
;/* [ref,charset(UTF16)] */
960 struct netr_LogonControl
{
962 const char *logon_server
;/* [unique,charset(UTF16)] */
963 enum netr_LogonControlCode function_code
;
968 union netr_CONTROL_QUERY_INFORMATION
*info
;/* [ref,switch_is(level)] */
975 struct netr_GetAnyDCName
{
977 const char *logon_server
;/* [unique,charset(UTF16)] */
978 const char *domainname
;/* [unique,charset(UTF16)] */
982 const char **dcname
;/* [ref,charset(UTF16)] */
989 struct netr_LogonControl2
{
991 const char *logon_server
;/* [unique,charset(UTF16)] */
992 uint32_t function_code
;
994 union netr_CONTROL_DATA_INFORMATION data
;/* [switch_is(function_code)] */
998 union netr_CONTROL_QUERY_INFORMATION
*query
;/* [ref,switch_is(level)] */
1005 struct netr_ServerAuthenticate2
{
1007 const char *server_name
;/* [unique,charset(UTF16)] */
1008 const char *account_name
;/* [charset(UTF16)] */
1009 enum netr_SchannelType secure_channel_type
;
1010 const char *computer_name
;/* [charset(UTF16)] */
1011 struct netr_Credential
*credentials
;/* [ref] */
1012 uint32_t *negotiate_flags
;/* [ref] */
1016 struct netr_Credential
*credentials
;/* [ref] */
1017 uint32_t *negotiate_flags
;/* [ref] */
1024 struct netr_DatabaseSync2
{
1026 const char *logon_server
;/* [charset(UTF16)] */
1027 const char *computername
;/* [charset(UTF16)] */
1028 struct netr_Authenticator credential
;
1029 enum netr_SamDatabaseID database_id
;
1030 uint16_t restart_state
;
1031 uint32_t preferredmaximumlength
;
1032 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1033 uint32_t *sync_context
;/* [ref] */
1037 struct netr_DELTA_ENUM_ARRAY
*delta_enum_array
;/* [unique] */
1038 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1039 uint32_t *sync_context
;/* [ref] */
1046 struct netr_DatabaseRedo
{
1048 const char *logon_server
;/* [charset(UTF16)] */
1049 const char *computername
;/* [charset(UTF16)] */
1050 struct netr_Authenticator credential
;
1051 uint8_t *change_log_entry
;/* [unique,size_is(change_log_entry_size)] */
1052 uint32_t change_log_entry_size
;
1053 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1057 struct netr_DELTA_ENUM_ARRAY
*delta_enum_array
;/* [unique] */
1058 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1065 struct netr_LogonControl2Ex
{
1067 const char *logon_server
;/* [unique,charset(UTF16)] */
1068 uint32_t function_code
;
1070 union netr_CONTROL_DATA_INFORMATION data
;/* [switch_is(function_code)] */
1074 union netr_CONTROL_QUERY_INFORMATION
*query
;/* [ref,switch_is(level)] */
1081 struct netr_NETRENUMERATETRUSTEDDOMAINS
{
1089 struct netr_DsRGetDCName
{
1091 const char *server_unc
;/* [unique,charset(UTF16)] */
1092 const char *domain_name
;/* [unique,charset(UTF16)] */
1093 struct GUID
*domain_guid
;/* [unique] */
1094 struct GUID
*site_guid
;/* [unique] */
1099 struct netr_DsRGetDCNameInfo
*info
;/* [unique] */
1106 struct netr_NETRLOGONDUMMYROUTINE1
{
1114 struct netr_NETRLOGONSETSERVICEBITS
{
1122 struct netr_NETRLOGONGETTRUSTRID
{
1130 struct netr_NETRLOGONCOMPUTESERVERDIGEST
{
1138 struct netr_NETRLOGONCOMPUTECLIENTDIGEST
{
1146 struct netr_ServerAuthenticate3
{
1148 const char *server_name
;/* [unique,charset(UTF16)] */
1149 const char *account_name
;/* [charset(UTF16)] */
1150 enum netr_SchannelType secure_channel_type
;
1151 const char *computer_name
;/* [charset(UTF16)] */
1152 struct netr_Credential
*credentials
;/* [ref] */
1153 uint32_t *negotiate_flags
;/* [ref] */
1157 uint32_t *rid
;/* [ref] */
1158 struct netr_Credential
*credentials
;/* [ref] */
1159 uint32_t *negotiate_flags
;/* [ref] */
1166 struct netr_DsRGetDCNameEx
{
1168 const char *server_unc
;/* [unique,charset(UTF16)] */
1169 const char *domain_name
;/* [unique,charset(UTF16)] */
1170 struct GUID
*domain_guid
;/* [unique] */
1171 const char *site_name
;/* [unique,charset(UTF16)] */
1176 struct netr_DsRGetDCNameInfo
*info
;/* [unique] */
1183 struct netr_DsRGetSiteName
{
1185 const char *computer_name
;/* [unique,charset(UTF16)] */
1189 const char **site
;/* [ref,charset(UTF16)] */
1196 struct netr_LogonGetDomainInfo
{
1198 const char *server_name
;/* [charset(UTF16)] */
1199 const char *computer_name
;/* [unique,charset(UTF16)] */
1200 struct netr_Authenticator
*credential
;/* [ref] */
1202 union netr_DomainQuery query
;/* [switch_is(level)] */
1203 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1207 union netr_DomainInfo
*info
;/* [ref,switch_is(level)] */
1208 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1215 struct netr_ServerPasswordSet2
{
1217 const char *server_name
;/* [unique,charset(UTF16)] */
1218 const char *account_name
;/* [charset(UTF16)] */
1219 enum netr_SchannelType secure_channel_type
;
1220 const char *computer_name
;/* [charset(UTF16)] */
1221 struct netr_Authenticator credential
;
1222 struct netr_CryptPassword new_password
;
1226 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1233 struct netr_NETRSERVERPASSWORDGET
{
1241 struct netr_NETRLOGONSENDTOSAM
{
1249 struct netr_DSRADDRESSTOSITENAMESW
{
1257 struct netr_DsRGetDCNameEx2
{
1259 const char *server_unc
;/* [unique,charset(UTF16)] */
1260 const char *client_account
;/* [unique,charset(UTF16)] */
1262 const char *domain_name
;/* [unique,charset(UTF16)] */
1263 struct GUID
*domain_guid
;/* [unique] */
1264 const char *site_name
;/* [unique,charset(UTF16)] */
1269 struct netr_DsRGetDCNameInfo
*info
;/* [unique] */
1276 struct netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN
{
1284 struct netr_NETRENUMERATETRUSTEDDOMAINSEX
{
1292 struct netr_DSRADDRESSTOSITENAMESEXW
{
1300 struct netr_DSRGETDCSITECOVERAGEW
{
1308 struct netr_LogonSamLogonEx
{
1310 const char *server_name
;/* [unique,charset(UTF16)] */
1311 const char *computer_name
;/* [unique,charset(UTF16)] */
1312 uint16_t logon_level
;
1313 union netr_LogonLevel logon
;/* [switch_is(logon_level)] */
1314 uint16_t validation_level
;
1315 uint32_t *flags
;/* [ref] */
1319 union netr_Validation
*validation
;/* [ref,switch_is(validation_level)] */
1320 uint8_t *authoritative
;/* [ref] */
1321 uint32_t *flags
;/* [ref] */
1328 struct netr_DsrEnumerateDomainTrusts
{
1330 const char *server_name
;/* [unique,charset(UTF16)] */
1331 uint32_t trust_flags
;
1335 uint32_t *count
;/* [ref] */
1336 struct netr_DomainTrust
**trusts
;/* [ref,size_is(count)] */
1343 struct netr_DSRDEREGISTERDNSHOSTRECORDS
{
1351 struct netr_NETRSERVERTRUSTPASSWORDSGET
{
1359 struct netr_DSRGETFORESTTRUSTINFORMATION
{
1367 struct netr_NETRGETFORESTTRUSTINFORMATION
{
1375 struct netr_LogonSamLogonWithFlags
{
1377 const char *server_name
;/* [unique,charset(UTF16)] */
1378 const char *computer_name
;/* [unique,charset(UTF16)] */
1379 struct netr_Authenticator
*credential
;/* [unique] */
1380 uint16_t logon_level
;
1381 union netr_LogonLevel logon
;/* [switch_is(logon_level)] */
1382 uint16_t validation_level
;
1383 struct netr_Authenticator
*return_authenticator
;/* [unique] */
1384 uint32_t *flags
;/* [ref] */
1388 union netr_Validation
*validation
;/* [ref,switch_is(validation_level)] */
1389 uint8_t *authoritative
;/* [ref] */
1390 struct netr_Authenticator
*return_authenticator
;/* [unique] */
1391 uint32_t *flags
;/* [ref] */
1398 struct netr_NETRSERVERGETTRUSTINFO
{
1405 #endif /* _HEADER_netlogon */