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 #include "librpc/gen_ndr/nbt.h"
9 #ifndef _HEADER_netlogon
10 #define _HEADER_netlogon
12 #define DSGETDC_VALID_FLAGS ( (DS_FORCE_REDISCOVERY|DS_DIRECTORY_SERVICE_REQUIRED|DS_DIRECTORY_SERVICE_PREFERRED|DS_GC_SERVER_REQUIRED|DS_PDC_REQUIRED|DS_BACKGROUND_ONLY|DS_IP_REQUIRED|DS_KDC_REQUIRED|DS_TIMESERV_REQUIRED|DS_WRITABLE_REQUIRED|DS_GOOD_TIMESERV_PREFERRED|DS_AVOID_SELF|DS_ONLY_LDAP_NEEDED|DS_IS_FLAT_NAME|DS_IS_DNS_NAME|DS_RETURN_FLAT_NAME|DS_RETURN_DNS_NAME) )
13 #define DS_GFTI_UPDATE_TDO ( 0x1 )
15 const char *account_name
;/* [unique,charset(UTF16)] */
19 uint32_t bad_pw_count
;
24 uint32_t password_age
;
26 time_t pw_must_change
;
27 const char *computer
;/* [unique,charset(UTF16)] */
28 const char *domain
;/* [unique,charset(UTF16)] */
29 const char *script_path
;/* [unique,charset(UTF16)] */
33 struct netr_UasLogoffInfo
{
38 struct netr_AcctLockStr
{
39 int64_t lockout_duration
;
41 uint32_t bad_attempt_lockout
;
45 /* bitmap netr_LogonParameterControl */
46 #define MSV1_0_CLEARTEXT_PASSWORD_ALLOWED ( 0x00000002 )
47 #define MSV1_0_UPDATE_LOGON_STATISTICS ( 0x00000004 )
48 #define MSV1_0_RETURN_USER_PARAMETERS ( 0x00000008 )
49 #define MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT ( 0x00000020 )
50 #define MSV1_0_RETURN_PROFILE_PATH ( 0x00000200 )
51 #define MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT ( 0x00000800 )
53 struct netr_IdentityInfo
{
54 struct lsa_String domain_name
;
55 uint32_t parameter_control
;
56 uint32_t logon_id_low
;
57 uint32_t logon_id_high
;
58 struct lsa_String account_name
;
59 struct lsa_String workstation
;
62 struct netr_PasswordInfo
{
63 struct netr_IdentityInfo identity_info
;
64 struct samr_Password lmpassword
;
65 struct samr_Password ntpassword
;
68 struct netr_ChallengeResponse
{
70 uint16_t size
;/* [value(length)] */
71 uint8_t *data
;/* [unique,length_is(length),size_is(length)] */
72 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
74 struct netr_NetworkInfo
{
75 struct netr_IdentityInfo identity_info
;
77 struct netr_ChallengeResponse nt
;
78 struct netr_ChallengeResponse lm
;
79 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
81 union netr_LogonInfo
{
82 struct netr_PasswordInfo
*password
;/* [unique,case] */
83 struct netr_NetworkInfo
*network
;/* [unique,case(2)] */
84 }/* [public,switch_type(uint16)] */;
86 struct netr_UserSessionKey
{
88 }/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
90 struct netr_LMSessionKey
{
92 }/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
94 /* bitmap netr_UserFlags */
95 #define NETLOGON_GUEST ( 0x00000001 )
96 #define NETLOGON_NOENCRYPTION ( 0x00000002 )
97 #define NETLOGON_CACHED_ACCOUNT ( 0x00000004 )
98 #define NETLOGON_USED_LM_PASSWORD ( 0x00000008 )
99 #define NETLOGON_EXTRA_SIDS ( 0x00000020 )
100 #define NETLOGON_SUBAUTH_SESSION_KEY ( 0x00000040 )
101 #define NETLOGON_SERVER_TRUST_ACCOUNT ( 0x00000080 )
102 #define NETLOGON_NTLMV2_ENABLED ( 0x00000100 )
103 #define NETLOGON_RESOURCE_GROUPS ( 0x00000200 )
104 #define NETLOGON_PROFILE_PATH_RETURNED ( 0x00000400 )
105 #define NETLOGON_GRACE_LOGON ( 0x01000000 )
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
;
192 #ifndef USE_UINT_ENUMS
194 INTERACTIVE_LOGON_TYPE
=1,
198 { __donnot_use_enum_netr_LogonLevel
=0x7FFFFFFF}
199 #define INTERACTIVE_LOGON_TYPE ( 1 )
200 #define NET_LOGON_TYPE ( 2 )
204 enum netr_SchannelType
;
206 enum netr_SamDatabaseID
;
208 struct netr_DELTA_DELETE_USER
{
209 const char *account_name
;/* [unique,charset(UTF16)] */
210 struct lsa_String unknown1
;
211 struct lsa_String unknown2
;
212 struct lsa_String unknown3
;
213 struct lsa_String unknown4
;
220 struct netr_USER_KEY16
{
222 uint16_t size
;/* [value(length)] */
224 struct samr_Password pwd
;
227 struct netr_PasswordHistory
{
229 uint16_t nt_size
;/* [value(nt_length)] */
232 uint16_t lm_size
;/* [value(lm_length)] */
238 struct netr_USER_KEYS2
{
239 struct netr_USER_KEY16 lmpassword
;
240 struct netr_USER_KEY16 ntpassword
;
241 struct netr_PasswordHistory history
;
244 struct netr_USER_KEY_UNION
{
245 struct netr_USER_KEYS2 keys2
;
248 struct netr_USER_KEYS
{
250 struct netr_USER_KEY_UNION keys
;
253 struct netr_USER_PRIVATE_INFO
{
254 uint8_t SensitiveDataFlag
;
256 uint8_t *SensitiveData
;/* [unique,flag(LIBNDR_PRINT_ARRAY_HEX),size_is(DataLength)] */
259 struct netr_DELTA_USER
{
260 struct lsa_String account_name
;
261 struct lsa_String full_name
;
263 uint32_t primary_gid
;
264 struct lsa_String home_directory
;
265 struct lsa_String home_drive
;
266 struct lsa_String logon_script
;
267 struct lsa_String description
;
268 struct lsa_String workstations
;
271 struct samr_LogonHours logon_hours
;
272 uint16_t bad_password_count
;
273 uint16_t logon_count
;
274 NTTIME last_password_change
;
277 struct samr_Password lmpassword
;
278 struct samr_Password ntpassword
;
279 uint8_t nt_password_present
;
280 uint8_t lm_password_present
;
281 uint8_t password_expired
;
282 struct lsa_String comment
;
283 struct lsa_String parameters
;
284 uint16_t country_code
;
286 struct netr_USER_PRIVATE_INFO user_private_info
;
287 uint32_t SecurityInformation
;
288 struct sec_desc_buf sdbuf
;
289 struct lsa_String profile_path
;
290 struct lsa_String unknown2
;
291 struct lsa_String unknown3
;
292 struct lsa_String unknown4
;
299 struct netr_DELTA_DOMAIN
{
300 struct lsa_String domain_name
;
301 struct lsa_String comment
;
302 int64_t force_logoff_time
;
303 uint16_t min_password_length
;
304 uint16_t password_history_length
;
305 int64_t max_password_age
;
306 int64_t min_password_age
;
307 uint64_t sequence_num
;
308 NTTIME domain_create_time
;
309 uint32_t SecurityInformation
;
310 struct sec_desc_buf sdbuf
;
311 struct lsa_BinaryString account_lockout
;
312 struct lsa_String unknown2
;
313 struct lsa_String unknown3
;
314 struct lsa_String unknown4
;
315 uint32_t logon_to_chgpass
;
321 struct netr_DELTA_GROUP
{
322 struct lsa_String group_name
;
325 struct lsa_String description
;
326 uint32_t SecurityInformation
;
327 struct sec_desc_buf sdbuf
;
328 struct lsa_String unknown1
;
329 struct lsa_String unknown2
;
330 struct lsa_String unknown3
;
331 struct lsa_String unknown4
;
338 struct netr_DELTA_RENAME
{
339 struct lsa_String OldName
;
340 struct lsa_String NewName
;
341 struct lsa_String unknown1
;
342 struct lsa_String unknown2
;
343 struct lsa_String unknown3
;
344 struct lsa_String unknown4
;
351 struct netr_DELTA_GROUP_MEMBER
{
352 uint32_t *rids
;/* [unique,size_is(num_rids)] */
353 uint32_t *attribs
;/* [unique,size_is(num_rids)] */
361 struct netr_DELTA_ALIAS
{
362 struct lsa_String alias_name
;
364 uint32_t SecurityInformation
;
365 struct sec_desc_buf sdbuf
;
366 struct lsa_String description
;
367 struct lsa_String unknown2
;
368 struct lsa_String unknown3
;
369 struct lsa_String unknown4
;
376 struct netr_DELTA_ALIAS_MEMBER
{
377 struct lsa_SidArray sids
;
384 struct netr_QUOTA_LIMITS
{
385 uint32_t pagedpoollimit
;
386 uint32_t nonpagedpoollimit
;
387 uint32_t minimumworkingsetsize
;
388 uint32_t maximumworkingsetsize
;
389 uint32_t pagefilelimit
;
393 struct netr_DELTA_POLICY
{
395 NTTIME auditretentionperiod
;
396 uint8_t auditingmode
;
397 uint32_t maxauditeventcount
;
398 uint32_t *eventauditoptions
;/* [unique,size_is(maxauditeventcount+1)] */
399 struct lsa_String primary_domain_name
;
400 struct dom_sid2
*sid
;/* [unique] */
401 struct netr_QUOTA_LIMITS quota_limits
;
402 uint64_t sequence_num
;
403 NTTIME db_create_time
;
404 uint32_t SecurityInformation
;
405 struct sec_desc_buf sdbuf
;
406 struct lsa_String unknown1
;
407 struct lsa_String unknown2
;
408 struct lsa_String unknown3
;
409 struct lsa_String unknown4
;
416 struct netr_DELTA_TRUSTED_DOMAIN
{
417 struct lsa_String domain_name
;
418 uint32_t num_controllers
;
419 struct lsa_String
*controller_names
;/* [unique,size_is(num_controllers)] */
420 uint32_t SecurityInformation
;
421 struct sec_desc_buf sdbuf
;
422 struct lsa_String unknown1
;
423 struct lsa_String unknown2
;
424 struct lsa_String unknown3
;
425 struct lsa_String unknown4
;
426 uint32_t posix_offset
;
432 struct netr_DELTA_DELETE_TRUST
{
436 struct netr_DELTA_ACCOUNT
{
437 uint32_t privilege_entries
;
438 uint32_t privilege_control
;
439 uint32_t *privilege_attrib
;/* [unique,size_is(privilege_entries)] */
440 struct lsa_String
*privilege_name
;/* [unique,size_is(privilege_entries)] */
441 struct netr_QUOTA_LIMITS quotalimits
;
442 uint32_t system_flags
;
443 uint32_t SecurityInformation
;
444 struct sec_desc_buf sdbuf
;
445 struct lsa_String unknown1
;
446 struct lsa_String unknown2
;
447 struct lsa_String unknown3
;
448 struct lsa_String unknown4
;
455 struct netr_DELTA_DELETE_ACCOUNT
{
459 struct netr_DELTA_DELETE_SECRET
{
463 struct netr_CIPHER_VALUE
{
466 uint8_t *cipher_data
;/* [unique,length_is(len),size_is(maxlen)] */
469 struct netr_DELTA_SECRET
{
470 struct netr_CIPHER_VALUE current_cipher
;
471 NTTIME current_cipher_set_time
;
472 struct netr_CIPHER_VALUE old_cipher
;
473 NTTIME old_cipher_set_time
;
474 uint32_t SecurityInformation
;
475 struct sec_desc_buf sdbuf
;
476 struct lsa_String unknown1
;
477 struct lsa_String unknown2
;
478 struct lsa_String unknown3
;
479 struct lsa_String unknown4
;
487 #ifndef USE_UINT_ENUMS
491 NETR_DELTA_DELETE_GROUP
=3,
492 NETR_DELTA_RENAME_GROUP
=4,
494 NETR_DELTA_DELETE_USER
=6,
495 NETR_DELTA_RENAME_USER
=7,
496 NETR_DELTA_GROUP_MEMBER
=8,
498 NETR_DELTA_DELETE_ALIAS
=10,
499 NETR_DELTA_RENAME_ALIAS
=11,
500 NETR_DELTA_ALIAS_MEMBER
=12,
501 NETR_DELTA_POLICY
=13,
502 NETR_DELTA_TRUSTED_DOMAIN
=14,
503 NETR_DELTA_DELETE_TRUST
=15,
504 NETR_DELTA_ACCOUNT
=16,
505 NETR_DELTA_DELETE_ACCOUNT
=17,
506 NETR_DELTA_SECRET
=18,
507 NETR_DELTA_DELETE_SECRET
=19,
508 NETR_DELTA_DELETE_GROUP2
=20,
509 NETR_DELTA_DELETE_USER2
=21,
510 NETR_DELTA_MODIFY_COUNT
=22
513 { __donnot_use_enum_netr_DeltaEnum
=0x7FFFFFFF}
514 #define NETR_DELTA_DOMAIN ( 1 )
515 #define NETR_DELTA_GROUP ( 2 )
516 #define NETR_DELTA_DELETE_GROUP ( 3 )
517 #define NETR_DELTA_RENAME_GROUP ( 4 )
518 #define NETR_DELTA_USER ( 5 )
519 #define NETR_DELTA_DELETE_USER ( 6 )
520 #define NETR_DELTA_RENAME_USER ( 7 )
521 #define NETR_DELTA_GROUP_MEMBER ( 8 )
522 #define NETR_DELTA_ALIAS ( 9 )
523 #define NETR_DELTA_DELETE_ALIAS ( 10 )
524 #define NETR_DELTA_RENAME_ALIAS ( 11 )
525 #define NETR_DELTA_ALIAS_MEMBER ( 12 )
526 #define NETR_DELTA_POLICY ( 13 )
527 #define NETR_DELTA_TRUSTED_DOMAIN ( 14 )
528 #define NETR_DELTA_DELETE_TRUST ( 15 )
529 #define NETR_DELTA_ACCOUNT ( 16 )
530 #define NETR_DELTA_DELETE_ACCOUNT ( 17 )
531 #define NETR_DELTA_SECRET ( 18 )
532 #define NETR_DELTA_DELETE_SECRET ( 19 )
533 #define NETR_DELTA_DELETE_GROUP2 ( 20 )
534 #define NETR_DELTA_DELETE_USER2 ( 21 )
535 #define NETR_DELTA_MODIFY_COUNT ( 22 )
539 union netr_DELTA_UNION
{
540 struct netr_DELTA_DOMAIN
*domain
;/* [unique,case(NETR_DELTA_DOMAIN)] */
541 struct netr_DELTA_GROUP
*group
;/* [unique,case(NETR_DELTA_GROUP)] */
542 struct netr_DELTA_RENAME
*rename_group
;/* [unique,case(NETR_DELTA_RENAME_GROUP)] */
543 struct netr_DELTA_USER
*user
;/* [unique,case(NETR_DELTA_USER)] */
544 struct netr_DELTA_RENAME
*rename_user
;/* [unique,case(NETR_DELTA_RENAME_USER)] */
545 struct netr_DELTA_GROUP_MEMBER
*group_member
;/* [unique,case(NETR_DELTA_GROUP_MEMBER)] */
546 struct netr_DELTA_ALIAS
*alias
;/* [unique,case(NETR_DELTA_ALIAS)] */
547 struct netr_DELTA_RENAME
*rename_alias
;/* [unique,case(NETR_DELTA_RENAME_ALIAS)] */
548 struct netr_DELTA_ALIAS_MEMBER
*alias_member
;/* [unique,case(NETR_DELTA_ALIAS_MEMBER)] */
549 struct netr_DELTA_POLICY
*policy
;/* [unique,case(NETR_DELTA_POLICY)] */
550 struct netr_DELTA_TRUSTED_DOMAIN
*trusted_domain
;/* [unique,case(NETR_DELTA_TRUSTED_DOMAIN)] */
551 struct netr_DELTA_DELETE_TRUST delete_trust
;/* [case(NETR_DELTA_DELETE_TRUST)] */
552 struct netr_DELTA_ACCOUNT
*account
;/* [unique,case(NETR_DELTA_ACCOUNT)] */
553 struct netr_DELTA_DELETE_ACCOUNT delete_account
;/* [case(NETR_DELTA_DELETE_ACCOUNT)] */
554 struct netr_DELTA_SECRET
*secret
;/* [unique,case(NETR_DELTA_SECRET)] */
555 struct netr_DELTA_DELETE_SECRET delete_secret
;/* [case(NETR_DELTA_DELETE_SECRET)] */
556 struct netr_DELTA_DELETE_USER
*delete_group
;/* [unique,case(NETR_DELTA_DELETE_GROUP2)] */
557 struct netr_DELTA_DELETE_USER
*delete_user
;/* [unique,case(NETR_DELTA_DELETE_USER2)] */
558 uint64_t *modified_count
;/* [unique,case(NETR_DELTA_MODIFY_COUNT)] */
559 }/* [switch_type(netr_DeltaEnum)] */;
561 union netr_DELTA_ID_UNION
{
562 uint32_t rid
;/* [case(NETR_DELTA_DOMAIN)] */
563 struct dom_sid2
*sid
;/* [unique,case(NETR_DELTA_POLICY)] */
564 const char *name
;/* [unique,charset(UTF16),case(NETR_DELTA_SECRET)] */
565 }/* [switch_type(netr_DeltaEnum)] */;
567 struct netr_DELTA_ENUM
{
568 enum netr_DeltaEnum delta_type
;
569 union netr_DELTA_ID_UNION delta_id_union
;/* [switch_is(delta_type)] */
570 union netr_DELTA_UNION delta_union
;/* [switch_is(delta_type)] */
573 struct netr_DELTA_ENUM_ARRAY
{
575 struct netr_DELTA_ENUM
*delta_enum
;/* [unique,size_is(num_deltas)] */
578 struct netr_UAS_INFO_0
{
579 uint8_t computer_name
[16];
580 uint32_t timecreated
;
581 uint32_t serial_number
;
582 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
584 struct netr_AccountBuffer
{
585 DATA_BLOB blob
;/* [flag(LIBNDR_FLAG_REMAINING)] */
588 /* bitmap netr_InfoFlags */
589 #define NETLOGON_CTRL_REPL_NEEDED ( 0x0001 )
590 #define NETLOGON_CTRL_REPL_IN_PROGRESS ( 0x0002 )
591 #define NETLOGON_CTRL_REPL_FULL_SYNC ( 0x0004 )
593 struct netr_NETLOGON_INFO_1
{
595 uint32_t pdc_connection_status
;
598 struct netr_NETLOGON_INFO_2
{
600 uint32_t pdc_connection_status
;
601 const char *trusted_dc_name
;/* [unique,charset(UTF16)] */
602 uint32_t tc_connection_status
;
605 struct netr_NETLOGON_INFO_3
{
607 uint32_t logon_attempts
;
615 union netr_CONTROL_QUERY_INFORMATION
{
616 struct netr_NETLOGON_INFO_1
*info1
;/* [unique,case] */
617 struct netr_NETLOGON_INFO_2
*info2
;/* [unique,case(2)] */
618 struct netr_NETLOGON_INFO_3
*info3
;/* [unique,case(3)] */
621 enum netr_LogonControlCode
622 #ifndef USE_UINT_ENUMS
624 NETLOGON_CONTROL_SYNC
=2,
625 NETLOGON_CONTROL_REDISCOVER
=5,
626 NETLOGON_CONTROL_TC_QUERY
=6,
627 NETLOGON_CONTROL_TRANSPORT_NOTIFY
=7,
628 NETLOGON_CONTROL_SET_DBFLAG
=65534
631 { __donnot_use_enum_netr_LogonControlCode
=0x7FFFFFFF}
632 #define NETLOGON_CONTROL_SYNC ( 2 )
633 #define NETLOGON_CONTROL_REDISCOVER ( 5 )
634 #define NETLOGON_CONTROL_TC_QUERY ( 6 )
635 #define NETLOGON_CONTROL_TRANSPORT_NOTIFY ( 7 )
636 #define NETLOGON_CONTROL_SET_DBFLAG ( 65534 )
640 union netr_CONTROL_DATA_INFORMATION
{
641 const char *domain
;/* [unique,charset(UTF16),case(NETLOGON_CONTROL_REDISCOVER)] */
642 uint32_t debug_level
;/* [case(NETLOGON_CONTROL_SET_DBFLAG)] */
645 /* bitmap netr_NegotiateFlags */
646 #define NETLOGON_NEG_ACCOUNT_LOCKOUT ( 0x00000001 )
647 #define NETLOGON_NEG_PERSISTENT_SAMREPL ( 0x00000002 )
648 #define NETLOGON_NEG_ARCFOUR ( 0x00000004 )
649 #define NETLOGON_NEG_PROMOTION_COUNT ( 0x00000008 )
650 #define NETLOGON_NEG_CHANGELOG_BDC ( 0x00000010 )
651 #define NETLOGON_NEG_FULL_SYNC_REPL ( 0x00000020 )
652 #define NETLOGON_NEG_MULTIPLE_SIDS ( 0x00000040 )
653 #define NETLOGON_NEG_REDO ( 0x00000080 )
654 #define NETLOGON_NEG_PASSWORD_CHANGE_REFUSAL ( 0x00000100 )
655 #define NETLOGON_NEG_SEND_PASSWORD_INFO_PDC ( 0x00000200 )
656 #define NETLOGON_NEG_GENERIC_PASSTHROUGH ( 0x00000400 )
657 #define NETLOGON_NEG_CONCURRENT_RPC ( 0x00000800 )
658 #define NETLOGON_NEG_AVOID_ACCOUNT_DB_REPL ( 0x00001000 )
659 #define NETLOGON_NEG_AVOID_SECURITYAUTH_DB_REPL ( 0x00002000 )
660 #define NETLOGON_NEG_128BIT ( 0x00004000 )
661 #define NETLOGON_NEG_TRANSITIVE_TRUSTS ( 0x00008000 )
662 #define NETLOGON_NEG_DNS_DOMAIN_TRUSTS ( 0x00010000 )
663 #define NETLOGON_NEG_PASSWORD_SET2 ( 0x00020000 )
664 #define NETLOGON_NEG_GETDOMAININFO ( 0x00040000 )
665 #define NETLOGON_NEG_CROSS_FOREST_TRUSTS ( 0x00080000 )
666 #define NETLOGON_NEG_NEUTRALIZE_NT4_EMULATION ( 0x00100000 )
667 #define NETLOGON_NEG_RODC_PASSTHROUGH ( 0x00200000 )
668 #define NETLOGON_NEG_AUTHENTICATED_RPC_LSASS ( 0x20000000 )
669 #define NETLOGON_NEG_SCHANNEL ( 0x40000000 )
673 uint8_t *data
;/* [unique,size_is(length)] */
676 /* bitmap netr_DsRGetDCName_flags */
677 #define DS_FORCE_REDISCOVERY ( 0x00000001 )
678 #define DS_DIRECTORY_SERVICE_REQUIRED ( 0x00000010 )
679 #define DS_DIRECTORY_SERVICE_PREFERRED ( 0x00000020 )
680 #define DS_GC_SERVER_REQUIRED ( 0x00000040 )
681 #define DS_PDC_REQUIRED ( 0x00000080 )
682 #define DS_BACKGROUND_ONLY ( 0x00000100 )
683 #define DS_IP_REQUIRED ( 0x00000200 )
684 #define DS_KDC_REQUIRED ( 0x00000400 )
685 #define DS_TIMESERV_REQUIRED ( 0x00000800 )
686 #define DS_WRITABLE_REQUIRED ( 0x00001000 )
687 #define DS_GOOD_TIMESERV_PREFERRED ( 0x00002000 )
688 #define DS_AVOID_SELF ( 0x00004000 )
689 #define DS_ONLY_LDAP_NEEDED ( 0x00008000 )
690 #define DS_IS_FLAT_NAME ( 0x00010000 )
691 #define DS_IS_DNS_NAME ( 0x00020000 )
692 #define DS_TRY_NEXTCLOSEST_SITE ( 0x00040000 )
693 #define DS_DIRECTORY_SERVICE_6_REQUIRED ( 0x00080000 )
694 #define DS_RETURN_DNS_NAME ( 0x40000000 )
695 #define DS_RETURN_FLAT_NAME ( 0x80000000 )
697 enum netr_DsRGetDCNameInfo_AddressType
698 #ifndef USE_UINT_ENUMS
700 DS_ADDRESS_TYPE_INET
=1,
701 DS_ADDRESS_TYPE_NETBIOS
=2
704 { __donnot_use_enum_netr_DsRGetDCNameInfo_AddressType
=0x7FFFFFFF}
705 #define DS_ADDRESS_TYPE_INET ( 1 )
706 #define DS_ADDRESS_TYPE_NETBIOS ( 2 )
710 /* bitmap netr_DsR_DcFlags */
711 #define DS_SERVER_PDC ( NBT_SERVER_PDC )
712 #define DS_SERVER_GC ( NBT_SERVER_GC )
713 #define DS_SERVER_LDAP ( NBT_SERVER_LDAP )
714 #define DS_SERVER_DS ( NBT_SERVER_DS )
715 #define DS_SERVER_KDC ( NBT_SERVER_KDC )
716 #define DS_SERVER_TIMESERV ( NBT_SERVER_TIMESERV )
717 #define DS_SERVER_CLOSEST ( NBT_SERVER_CLOSEST )
718 #define DS_SERVER_WRITABLE ( NBT_SERVER_WRITABLE )
719 #define DS_SERVER_GOOD_TIMESERV ( NBT_SERVER_GOOD_TIMESERV )
720 #define DS_SERVER_NDNC ( NBT_SERVER_NDNC )
721 #define DS_SERVER_SELECT_SECRET_DOMAIN_6 ( NBT_SERVER_SELECT_SECRET_DOMAIN_6 )
722 #define DS_SERVER_FULL_SECRET_DOMAIN_6 ( NBT_SERVER_FULL_SECRET_DOMAIN_6 )
723 #define DS_DNS_CONTROLLER ( 0x20000000 )
724 #define DS_DNS_DOMAIN ( 0x40000000 )
725 #define DS_DNS_FOREST ( 0x80000000 )
727 struct netr_DsRGetDCNameInfo
{
728 const char *dc_unc
;/* [unique,charset(UTF16)] */
729 const char *dc_address
;/* [unique,charset(UTF16)] */
730 enum netr_DsRGetDCNameInfo_AddressType dc_address_type
;
731 struct GUID domain_guid
;
732 const char *domain_name
;/* [unique,charset(UTF16)] */
733 const char *forest_name
;/* [unique,charset(UTF16)] */
735 const char *dc_site_name
;/* [unique,charset(UTF16)] */
736 const char *client_site_name
;/* [unique,charset(UTF16)] */
739 struct netr_BinaryString
{
742 uint16_t *data
;/* [unique,length_is(length/2),size_is(size/2)] */
743 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
745 struct netr_DomainQuery1
{
746 struct netr_Blob blob
;
747 const char *workstation_domain
;/* [unique,charset(UTF16)] */
748 const char *workstation_site
;/* [unique,charset(UTF16)] */
749 const char *unknown1
;/* [unique,charset(UTF16)] */
750 const char *unknown2
;/* [unique,charset(UTF16)] */
751 const char *unknown3
;/* [unique,charset(UTF16)] */
752 const char *unknown4
;/* [unique,charset(UTF16)] */
753 struct netr_BinaryString blob2
;
754 struct lsa_String product
;
755 struct lsa_String unknown5
;
756 struct lsa_String unknown6
;
757 uint32_t unknown7
[4];
760 union netr_DomainQuery
{
761 struct netr_DomainQuery1
*query1
;/* [unique,case] */
764 struct netr_DomainTrustInfo
{
765 struct lsa_String domainname
;
766 struct lsa_String fulldomainname
;
767 struct lsa_String forest
;
769 struct dom_sid2
*sid
;/* [unique] */
770 struct netr_BinaryString unknown1
[4];
774 struct netr_DomainInfo1
{
775 struct netr_DomainTrustInfo domaininfo
;
777 struct netr_DomainTrustInfo
*trusts
;/* [unique,size_is(num_trusts)] */
778 uint32_t unknown
[14];
781 union netr_DomainInfo
{
782 struct netr_DomainInfo1
*info1
;/* [unique,case] */
785 struct netr_CryptPassword
{
788 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
790 struct netr_DsRAddressToSitenamesWCtr
{
792 struct lsa_String
*sitename
;/* [unique,size_is(count)] */
795 struct netr_DsRAddress
{
796 uint8_t *buffer
;/* [unique,size_is(size)] */
800 /* bitmap netr_TrustFlags */
801 #define NETR_TRUST_FLAG_IN_FOREST ( 0x00000001 )
802 #define NETR_TRUST_FLAG_OUTBOUND ( 0x00000002 )
803 #define NETR_TRUST_FLAG_TREEROOT ( 0x00000004 )
804 #define NETR_TRUST_FLAG_PRIMARY ( 0x00000008 )
805 #define NETR_TRUST_FLAG_NATIVE ( 0x00000010 )
806 #define NETR_TRUST_FLAG_INBOUND ( 0x00000020 )
809 #ifndef USE_UINT_ENUMS
811 NETR_TRUST_TYPE_DOWNLEVEL
=1,
812 NETR_TRUST_TYPE_UPLEVEL
=2,
813 NETR_TRUST_TYPE_MIT
=3,
814 NETR_TRUST_TYPE_DCE
=4
817 { __donnot_use_enum_netr_TrustType
=0x7FFFFFFF}
818 #define NETR_TRUST_TYPE_DOWNLEVEL ( 1 )
819 #define NETR_TRUST_TYPE_UPLEVEL ( 2 )
820 #define NETR_TRUST_TYPE_MIT ( 3 )
821 #define NETR_TRUST_TYPE_DCE ( 4 )
825 /* bitmap netr_TrustAttributes */
826 #define NETR_TRUST_ATTRIBUTE_NON_TRANSITIVE ( 0x00000001 )
827 #define NETR_TRUST_ATTRIBUTE_UPLEVEL_ONLY ( 0x00000002 )
828 #define NETR_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN ( 0x00000004 )
829 #define NETR_TRUST_ATTRIBUTE_FOREST_TRANSITIVE ( 0x00000008 )
830 #define NETR_TRUST_ATTRIBUTE_CROSS_ORGANIZATION ( 0x00000010 )
831 #define NETR_TRUST_ATTRIBUTE_WITHIN_FOREST ( 0x00000020 )
832 #define NETR_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL ( 0x00000040 )
834 struct netr_DomainTrust
{
835 const char *netbios_name
;/* [unique,charset(UTF16)] */
836 const char *dns_name
;/* [unique,charset(UTF16)] */
837 uint32_t trust_flags
;
838 uint32_t parent_index
;
839 enum netr_TrustType trust_type
;
840 uint32_t trust_attributes
;
841 struct dom_sid2
*sid
;/* [unique] */
845 struct netr_DomainTrustList
{
847 struct netr_DomainTrust
*array
;/* [unique,size_is(count)] */
850 struct netr_DsRAddressToSitenamesExWCtr
{
852 struct lsa_String
*sitename
;/* [unique,size_is(count)] */
853 struct lsa_String
*subnetname
;/* [unique,size_is(count)] */
858 struct lsa_String
*sites
;/* [unique,size_is(num_sites)] */
862 struct netr_LogonUasLogon
{
864 const char *server_name
;/* [unique,charset(UTF16)] */
865 const char *account_name
;/* [charset(UTF16)] */
866 const char *workstation
;/* [charset(UTF16)] */
870 struct netr_UasInfo
*info
;/* [ref] */
877 struct netr_LogonUasLogoff
{
879 const char *server_name
;/* [unique,charset(UTF16)] */
880 const char *account_name
;/* [charset(UTF16)] */
881 const char *workstation
;/* [charset(UTF16)] */
885 struct netr_UasLogoffInfo
*info
;/* [ref] */
892 struct netr_LogonSamLogon
{
894 const char *server_name
;/* [unique,charset(UTF16)] */
895 const char *computer_name
;/* [unique,charset(UTF16)] */
896 struct netr_Authenticator
*credential
;/* [unique] */
897 enum netr_LogonLevel logon_level
;
898 union netr_LogonInfo
*logon
;/* [ref,switch_is(logon_level)] */
899 uint16_t validation_level
;
900 struct netr_Authenticator
*return_authenticator
;/* [unique] */
904 union netr_Validation
*validation
;/* [ref,switch_is(validation_level)] */
905 uint8_t *authoritative
;/* [ref] */
906 struct netr_Authenticator
*return_authenticator
;/* [unique] */
913 struct netr_LogonSamLogoff
{
915 const char *server_name
;/* [unique,charset(UTF16)] */
916 const char *computer_name
;/* [unique,charset(UTF16)] */
917 struct netr_Authenticator
*credential
;/* [unique] */
918 enum netr_LogonLevel logon_level
;
919 union netr_LogonInfo logon
;/* [switch_is(logon_level)] */
920 struct netr_Authenticator
*return_authenticator
;/* [unique] */
924 struct netr_Authenticator
*return_authenticator
;/* [unique] */
931 struct netr_ServerReqChallenge
{
933 const char *server_name
;/* [unique,charset(UTF16)] */
934 const char *computer_name
;/* [charset(UTF16)] */
935 struct netr_Credential
*credentials
;/* [ref] */
939 struct netr_Credential
*return_credentials
;/* [ref] */
946 struct netr_ServerAuthenticate
{
948 const char *server_name
;/* [unique,charset(UTF16)] */
949 const char *account_name
;/* [charset(UTF16)] */
950 enum netr_SchannelType secure_channel_type
;
951 const char *computer_name
;/* [charset(UTF16)] */
952 struct netr_Credential
*credentials
;/* [ref] */
956 struct netr_Credential
*return_credentials
;/* [ref] */
963 struct netr_ServerPasswordSet
{
965 const char *server_name
;/* [unique,charset(UTF16)] */
966 const char *account_name
;/* [charset(UTF16)] */
967 enum netr_SchannelType secure_channel_type
;
968 const char *computer_name
;/* [charset(UTF16)] */
969 struct netr_Authenticator
*credential
;/* [ref] */
970 struct samr_Password
*new_password
;/* [ref] */
974 struct netr_Authenticator
*return_authenticator
;/* [ref] */
981 struct netr_DatabaseDeltas
{
983 const char *logon_server
;/* [charset(UTF16)] */
984 const char *computername
;/* [charset(UTF16)] */
985 struct netr_Authenticator
*credential
;/* [ref] */
986 enum netr_SamDatabaseID database_id
;
987 uint32_t preferredmaximumlength
;
988 struct netr_Authenticator
*return_authenticator
;/* [ref] */
989 uint64_t *sequence_num
;/* [ref] */
993 struct netr_DELTA_ENUM_ARRAY
**delta_enum_array
;/* [ref] */
994 struct netr_Authenticator
*return_authenticator
;/* [ref] */
995 uint64_t *sequence_num
;/* [ref] */
1002 struct netr_DatabaseSync
{
1004 const char *logon_server
;/* [charset(UTF16)] */
1005 const char *computername
;/* [charset(UTF16)] */
1006 struct netr_Authenticator credential
;
1007 enum netr_SamDatabaseID database_id
;
1008 uint32_t preferredmaximumlength
;
1009 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1010 uint32_t *sync_context
;/* [ref] */
1014 struct netr_DELTA_ENUM_ARRAY
*delta_enum_array
;/* [ref] */
1015 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1016 uint32_t *sync_context
;/* [ref] */
1023 struct netr_AccountDeltas
{
1025 const char *logon_server
;/* [unique,charset(UTF16)] */
1026 const char *computername
;/* [charset(UTF16)] */
1027 struct netr_Authenticator credential
;
1028 struct netr_UAS_INFO_0 uas
;
1031 uint32_t buffersize
;
1032 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1036 struct netr_AccountBuffer
*buffer
;/* [ref,subcontext(4)] */
1037 uint32_t *count_returned
;/* [ref] */
1038 uint32_t *total_entries
;/* [ref] */
1039 struct netr_UAS_INFO_0
*recordid
;/* [ref] */
1040 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1047 struct netr_AccountSync
{
1049 const char *logon_server
;/* [unique,charset(UTF16)] */
1050 const char *computername
;/* [charset(UTF16)] */
1051 struct netr_Authenticator credential
;
1054 uint32_t buffersize
;
1055 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1056 struct netr_UAS_INFO_0
*recordid
;/* [ref] */
1060 struct netr_AccountBuffer
*buffer
;/* [ref,subcontext(4)] */
1061 uint32_t *count_returned
;/* [ref] */
1062 uint32_t *total_entries
;/* [ref] */
1063 uint32_t *next_reference
;/* [ref] */
1064 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1065 struct netr_UAS_INFO_0
*recordid
;/* [ref] */
1072 struct netr_GetDcName
{
1074 const char *logon_server
;/* [charset(UTF16)] */
1075 const char *domainname
;/* [unique,charset(UTF16)] */
1079 const char **dcname
;/* [ref,charset(UTF16)] */
1086 struct netr_LogonControl
{
1088 const char *logon_server
;/* [unique,charset(UTF16)] */
1089 enum netr_LogonControlCode function_code
;
1094 union netr_CONTROL_QUERY_INFORMATION
*info
;/* [ref,switch_is(level)] */
1101 struct netr_GetAnyDCName
{
1103 const char *logon_server
;/* [unique,charset(UTF16)] */
1104 const char *domainname
;/* [unique,charset(UTF16)] */
1108 const char **dcname
;/* [ref,charset(UTF16)] */
1115 struct netr_LogonControl2
{
1117 const char *logon_server
;/* [unique,charset(UTF16)] */
1118 enum netr_LogonControlCode function_code
;
1120 union netr_CONTROL_DATA_INFORMATION
*data
;/* [ref,switch_is(function_code)] */
1124 union netr_CONTROL_QUERY_INFORMATION
*query
;/* [ref,switch_is(level)] */
1131 struct netr_ServerAuthenticate2
{
1133 const char *server_name
;/* [unique,charset(UTF16)] */
1134 const char *account_name
;/* [charset(UTF16)] */
1135 enum netr_SchannelType secure_channel_type
;
1136 const char *computer_name
;/* [charset(UTF16)] */
1137 struct netr_Credential
*credentials
;/* [ref] */
1138 uint32_t *negotiate_flags
;/* [ref] */
1142 struct netr_Credential
*return_credentials
;/* [ref] */
1143 uint32_t *negotiate_flags
;/* [ref] */
1150 struct netr_DatabaseSync2
{
1152 const char *logon_server
;/* [charset(UTF16)] */
1153 const char *computername
;/* [charset(UTF16)] */
1154 struct netr_Authenticator
*credential
;/* [ref] */
1155 enum netr_SamDatabaseID database_id
;
1156 uint16_t restart_state
;
1157 uint32_t preferredmaximumlength
;
1158 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1159 uint32_t *sync_context
;/* [ref] */
1163 struct netr_DELTA_ENUM_ARRAY
**delta_enum_array
;/* [ref] */
1164 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1165 uint32_t *sync_context
;/* [ref] */
1172 struct netr_DatabaseRedo
{
1174 const char *logon_server
;/* [charset(UTF16)] */
1175 const char *computername
;/* [charset(UTF16)] */
1176 struct netr_Authenticator credential
;
1177 uint8_t *change_log_entry
;/* [unique,size_is(change_log_entry_size)] */
1178 uint32_t change_log_entry_size
;
1179 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1183 struct netr_DELTA_ENUM_ARRAY
*delta_enum_array
;/* [ref] */
1184 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1191 struct netr_LogonControl2Ex
{
1193 const char *logon_server
;/* [unique,charset(UTF16)] */
1194 uint32_t function_code
;
1196 union netr_CONTROL_DATA_INFORMATION data
;/* [switch_is(function_code)] */
1200 union netr_CONTROL_QUERY_INFORMATION
*query
;/* [ref,switch_is(level)] */
1207 struct netr_NetrEnumerateTrustedDomains
{
1209 const char *server_name
;/* [unique,charset(UTF16)] */
1213 struct netr_Blob
*trusted_domains_blob
;/* [ref] */
1220 struct netr_DsRGetDCName
{
1222 const char *server_unc
;/* [unique,charset(UTF16)] */
1223 const char *domain_name
;/* [unique,charset(UTF16)] */
1224 struct GUID
*domain_guid
;/* [unique] */
1225 struct GUID
*site_guid
;/* [unique] */
1230 struct netr_DsRGetDCNameInfo
**info
;/* [ref] */
1237 struct netr_NETRLOGONDUMMYROUTINE1
{
1245 struct netr_NETRLOGONSETSERVICEBITS
{
1253 struct netr_LogonGetTrustRid
{
1255 const char *server_name
;/* [unique,charset(UTF16)] */
1256 const char *domain_name
;/* [unique,charset(UTF16)] */
1260 uint32_t *rid
;/* [ref] */
1267 struct netr_NETRLOGONCOMPUTESERVERDIGEST
{
1275 struct netr_NETRLOGONCOMPUTECLIENTDIGEST
{
1283 struct netr_ServerAuthenticate3
{
1285 const char *server_name
;/* [unique,charset(UTF16)] */
1286 const char *account_name
;/* [charset(UTF16)] */
1287 enum netr_SchannelType secure_channel_type
;
1288 const char *computer_name
;/* [charset(UTF16)] */
1289 struct netr_Credential
*credentials
;/* [ref] */
1290 uint32_t *negotiate_flags
;/* [ref] */
1294 uint32_t *rid
;/* [ref] */
1295 struct netr_Credential
*credentials
;/* [ref] */
1296 uint32_t *negotiate_flags
;/* [ref] */
1303 struct netr_DsRGetDCNameEx
{
1305 const char *server_unc
;/* [unique,charset(UTF16)] */
1306 const char *domain_name
;/* [unique,charset(UTF16)] */
1307 struct GUID
*domain_guid
;/* [unique] */
1308 const char *site_name
;/* [unique,charset(UTF16)] */
1313 struct netr_DsRGetDCNameInfo
**info
;/* [ref] */
1320 struct netr_DsRGetSiteName
{
1322 const char *computer_name
;/* [unique,charset(UTF16)] */
1326 const char **site
;/* [ref,charset(UTF16)] */
1333 struct netr_LogonGetDomainInfo
{
1335 const char *server_name
;/* [charset(UTF16)] */
1336 const char *computer_name
;/* [unique,charset(UTF16)] */
1337 struct netr_Authenticator
*credential
;/* [ref] */
1339 union netr_DomainQuery query
;/* [switch_is(level)] */
1340 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1344 union netr_DomainInfo
*info
;/* [ref,switch_is(level)] */
1345 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1352 struct netr_ServerPasswordSet2
{
1354 const char *server_name
;/* [unique,charset(UTF16)] */
1355 const char *account_name
;/* [charset(UTF16)] */
1356 enum netr_SchannelType secure_channel_type
;
1357 const char *computer_name
;/* [charset(UTF16)] */
1358 struct netr_Authenticator
*credential
;/* [ref] */
1359 struct netr_CryptPassword
*new_password
;/* [ref] */
1363 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1370 struct netr_ServerPasswordGet
{
1372 const char *server_name
;/* [unique,charset(UTF16)] */
1373 const char *account_name
;/* [charset(UTF16)] */
1374 enum netr_SchannelType secure_channel_type
;
1375 const char *computer_name
;/* [charset(UTF16)] */
1376 struct netr_Authenticator
*credential
;/* [ref] */
1380 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1381 struct samr_Password
*password
;/* [ref] */
1388 struct netr_NETRLOGONSENDTOSAM
{
1396 struct netr_DsRAddressToSitenamesW
{
1398 const char *server_name
;/* [unique,charset(UTF16)] */
1399 uint32_t count
;/* [range(0,32000)] */
1400 struct netr_DsRAddress
*addresses
;/* [ref,size_is(count)] */
1404 struct netr_DsRAddressToSitenamesWCtr
**ctr
;/* [ref] */
1411 struct netr_DsRGetDCNameEx2
{
1413 const char *server_unc
;/* [unique,charset(UTF16)] */
1414 const char *client_account
;/* [unique,charset(UTF16)] */
1416 const char *domain_name
;/* [unique,charset(UTF16)] */
1417 struct GUID
*domain_guid
;/* [unique] */
1418 const char *site_name
;/* [unique,charset(UTF16)] */
1423 struct netr_DsRGetDCNameInfo
**info
;/* [ref] */
1430 struct netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN
{
1438 struct netr_NetrEnumerateTrustedDomainsEx
{
1440 const char *server_name
;/* [unique,charset(UTF16)] */
1444 struct netr_DomainTrustList
*dom_trust_list
;/* [ref] */
1451 struct netr_DsRAddressToSitenamesExW
{
1453 const char *server_name
;/* [unique,charset(UTF16)] */
1454 uint32_t count
;/* [range(0,32000)] */
1455 struct netr_DsRAddress
*addresses
;/* [ref,size_is(count)] */
1459 struct netr_DsRAddressToSitenamesExWCtr
**ctr
;/* [ref] */
1466 struct netr_DsrGetDcSiteCoverageW
{
1468 const char *server_name
;/* [unique,charset(UTF16)] */
1472 struct DcSitesCtr
*ctr
;/* [ref] */
1479 struct netr_LogonSamLogonEx
{
1481 const char *server_name
;/* [unique,charset(UTF16)] */
1482 const char *computer_name
;/* [unique,charset(UTF16)] */
1483 enum netr_LogonLevel logon_level
;
1484 union netr_LogonInfo
*logon
;/* [ref,switch_is(logon_level)] */
1485 uint16_t validation_level
;
1486 uint32_t *flags
;/* [ref] */
1490 union netr_Validation
*validation
;/* [ref,switch_is(validation_level)] */
1491 uint8_t *authoritative
;/* [ref] */
1492 uint32_t *flags
;/* [ref] */
1499 struct netr_DsrEnumerateDomainTrusts
{
1501 const char *server_name
;/* [unique,charset(UTF16)] */
1502 uint32_t trust_flags
;
1506 struct netr_DomainTrustList
*trusts
;/* [ref] */
1513 struct netr_DsrDeregisterDNSHostRecords
{
1515 const char *server_name
;/* [unique,charset(UTF16)] */
1516 const char *domain
;/* [unique,charset(UTF16)] */
1517 struct GUID
*domain_guid
;/* [unique] */
1518 struct GUID
*dsa_guid
;/* [unique] */
1519 const char *dns_host
;/* [ref,charset(UTF16)] */
1529 struct netr_ServerTrustPasswordsGet
{
1531 const char *server_name
;/* [unique,charset(UTF16)] */
1532 const char *account_name
;/* [charset(UTF16)] */
1533 enum netr_SchannelType secure_channel_type
;
1534 const char *computer_name
;/* [charset(UTF16)] */
1535 struct netr_Authenticator
*credential
;/* [ref] */
1539 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1540 struct samr_Password
*password
;/* [ref] */
1541 struct samr_Password
*password2
;/* [ref] */
1548 struct netr_DsRGetForestTrustInformation
{
1550 const char *server_name
;/* [unique,charset(UTF16)] */
1551 const char *trusted_domain_name
;/* [unique,charset(UTF16)] */
1556 struct lsa_ForestTrustInformation
**forest_trust_info
;/* [ref] */
1563 struct netr_GetForestTrustInformation
{
1565 const char *server_name
;/* [unique,charset(UTF16)] */
1566 const char *trusted_domain_name
;/* [ref,charset(UTF16)] */
1567 struct netr_Authenticator
*credential
;/* [ref] */
1572 struct netr_Authenticator
*return_authenticator
;/* [ref] */
1573 struct lsa_ForestTrustInformation
**forest_trust_info
;/* [ref] */
1580 struct netr_LogonSamLogonWithFlags
{
1582 const char *server_name
;/* [unique,charset(UTF16)] */
1583 const char *computer_name
;/* [unique,charset(UTF16)] */
1584 struct netr_Authenticator
*credential
;/* [unique] */
1585 enum netr_LogonLevel logon_level
;
1586 union netr_LogonInfo logon
;/* [switch_is(logon_level)] */
1587 uint16_t validation_level
;
1588 struct netr_Authenticator
*return_authenticator
;/* [unique] */
1589 uint32_t *flags
;/* [ref] */
1593 union netr_Validation
*validation
;/* [ref,switch_is(validation_level)] */
1594 uint8_t *authoritative
;/* [ref] */
1595 struct netr_Authenticator
*return_authenticator
;/* [unique] */
1596 uint32_t *flags
;/* [ref] */
1603 struct netr_NETRSERVERGETTRUSTINFO
{
1610 #endif /* _HEADER_netlogon */