1 /* header auto-generated by pidl */
5 #include "librpc/gen_ndr/misc.h"
6 #include "librpc/gen_ndr/lsa.h"
7 #include "librpc/gen_ndr/samr.h"
8 #include "librpc/gen_ndr/security.h"
9 #include "librpc/gen_ndr/nbt.h"
10 #define netr_DeltaEnum8Bit netr_DeltaEnum
11 #ifndef _HEADER_netlogon
12 #define _HEADER_netlogon
14 #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) )
15 #define DS_GFTI_UPDATE_TDO ( 0x1 )
16 enum netr_DeltaEnum8Bit;
19 const char *account_name;/* [unique,charset(UTF16)] */
23 uint32_t bad_pw_count;
28 uint32_t password_age;
30 time_t pw_must_change;
31 const char *computer;/* [unique,charset(UTF16)] */
32 const char *domain;/* [unique,charset(UTF16)] */
33 const char *script_path;/* [unique,charset(UTF16)] */
37 struct netr_UasLogoffInfo {
42 struct netr_AcctLockStr {
43 int64_t lockout_duration;
45 uint32_t bad_attempt_lockout;
49 /* bitmap netr_LogonParameterControl */
50 #define MSV1_0_CLEARTEXT_PASSWORD_ALLOWED ( 0x00000002 )
51 #define MSV1_0_UPDATE_LOGON_STATISTICS ( 0x00000004 )
52 #define MSV1_0_RETURN_USER_PARAMETERS ( 0x00000008 )
53 #define MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT ( 0x00000020 )
54 #define MSV1_0_RETURN_PROFILE_PATH ( 0x00000200 )
55 #define MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT ( 0x00000800 )
57 struct netr_IdentityInfo {
58 struct lsa_String domain_name;
59 uint32_t parameter_control;
60 uint32_t logon_id_low;
61 uint32_t logon_id_high;
62 struct lsa_String account_name;
63 struct lsa_String workstation;
66 struct netr_PasswordInfo {
67 struct netr_IdentityInfo identity_info;
68 struct samr_Password lmpassword;
69 struct samr_Password ntpassword;
72 struct netr_ChallengeResponse {
74 uint16_t size;/* [value(length)] */
75 uint8_t *data;/* [unique,length_is(length),size_is(length)] */
76 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
78 struct netr_NetworkInfo {
79 struct netr_IdentityInfo identity_info;
81 struct netr_ChallengeResponse nt;
82 struct netr_ChallengeResponse lm;
83 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
85 struct netr_GenericInfo {
86 struct netr_IdentityInfo identity_info;
87 struct lsa_String package_name;
89 uint8_t *data;/* [unique,size_is(length)] */
90 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
92 enum netr_LogonInfoClass
93 #ifndef USE_UINT_ENUMS
95 NetlogonInteractiveInformation=1,
96 NetlogonNetworkInformation=2,
97 NetlogonServiceInformation=3,
98 NetlogonGenericInformation=4,
99 NetlogonInteractiveTransitiveInformation=5,
100 NetlogonNetworkTransitiveInformation=6,
101 NetlogonServiceTransitiveInformation=7
104 { __donnot_use_enum_netr_LogonInfoClass=0x7FFFFFFF}
105 #define NetlogonInteractiveInformation ( 1 )
106 #define NetlogonNetworkInformation ( 2 )
107 #define NetlogonServiceInformation ( 3 )
108 #define NetlogonGenericInformation ( 4 )
109 #define NetlogonInteractiveTransitiveInformation ( 5 )
110 #define NetlogonNetworkTransitiveInformation ( 6 )
111 #define NetlogonServiceTransitiveInformation ( 7 )
115 union netr_LogonLevel {
116 struct netr_PasswordInfo *password;/* [unique,case(NetlogonInteractiveInformation)] */
117 struct netr_NetworkInfo *network;/* [unique,case(NetlogonNetworkInformation)] */
118 struct netr_GenericInfo *generic;/* [unique,case(NetlogonGenericInformation)] */
119 }/* [public,switch_type(netr_LogonInfoClass)] */;
121 struct netr_UserSessionKey {
123 }/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
125 struct netr_LMSessionKey {
127 }/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
129 /* bitmap netr_UserFlags */
130 #define NETLOGON_GUEST ( 0x00000001 )
131 #define NETLOGON_NOENCRYPTION ( 0x00000002 )
132 #define NETLOGON_CACHED_ACCOUNT ( 0x00000004 )
133 #define NETLOGON_USED_LM_PASSWORD ( 0x00000008 )
134 #define NETLOGON_EXTRA_SIDS ( 0x00000020 )
135 #define NETLOGON_SUBAUTH_SESSION_KEY ( 0x00000040 )
136 #define NETLOGON_SERVER_TRUST_ACCOUNT ( 0x00000080 )
137 #define NETLOGON_NTLMV2_ENABLED ( 0x00000100 )
138 #define NETLOGON_RESOURCE_GROUPS ( 0x00000200 )
139 #define NETLOGON_PROFILE_PATH_RETURNED ( 0x00000400 )
140 #define NETLOGON_GRACE_LOGON ( 0x01000000 )
142 struct netr_SamBaseInfo {
146 NTTIME last_password_change;
147 NTTIME allow_password_change;
148 NTTIME force_password_change;
149 struct lsa_String account_name;
150 struct lsa_String full_name;
151 struct lsa_String logon_script;
152 struct lsa_String profile_path;
153 struct lsa_String home_directory;
154 struct lsa_String home_drive;
155 uint16_t logon_count;
156 uint16_t bad_password_count;
158 uint32_t primary_gid;
159 struct samr_RidWithAttributeArray groups;
161 struct netr_UserSessionKey key;
162 struct lsa_StringLarge logon_server;
163 struct lsa_StringLarge domain;
164 struct dom_sid2 *domain_sid;/* [unique] */
165 struct netr_LMSessionKey LMSessKey;
170 struct netr_SamInfo2 {
171 struct netr_SamBaseInfo base;
174 struct netr_SidAttr {
175 struct dom_sid2 *sid;/* [unique] */
179 struct netr_SamInfo3 {
180 struct netr_SamBaseInfo base;
182 struct netr_SidAttr *sids;/* [unique,size_is(sidcount)] */
185 struct netr_SamInfo6 {
186 struct netr_SamBaseInfo base;
188 struct netr_SidAttr *sids;/* [unique,size_is(sidcount)] */
189 struct lsa_String forest;
190 struct lsa_String principle;
191 uint32_t unknown4[20];
194 struct netr_PacInfo {
196 uint8_t *pac;/* [unique,size_is(pac_size)] */
197 struct lsa_String logon_domain;
198 struct lsa_String logon_server;
199 struct lsa_String principal_name;
201 uint8_t *auth;/* [unique,size_is(auth_size)] */
202 struct netr_UserSessionKey user_session_key;
203 uint32_t expansionroom[10];
204 struct lsa_String unknown1;
205 struct lsa_String unknown2;
206 struct lsa_String unknown3;
207 struct lsa_String unknown4;
210 struct netr_GenericInfo2 {
212 uint8_t *data;/* [unique,size_is(length)] */
213 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
215 enum netr_ValidationInfoClass
216 #ifndef USE_UINT_ENUMS
218 NetlogonValidationUasInfo=1,
219 NetlogonValidationSamInfo=2,
220 NetlogonValidationSamInfo2=3,
221 NetlogonValidationGenericInfo2=5,
222 NetlogonValidationSamInfo4=6
225 { __donnot_use_enum_netr_ValidationInfoClass=0x7FFFFFFF}
226 #define NetlogonValidationUasInfo ( 1 )
227 #define NetlogonValidationSamInfo ( 2 )
228 #define NetlogonValidationSamInfo2 ( 3 )
229 #define NetlogonValidationGenericInfo2 ( 5 )
230 #define NetlogonValidationSamInfo4 ( 6 )
234 union netr_Validation {
235 struct netr_SamInfo2 *sam2;/* [unique,case(NetlogonValidationSamInfo)] */
236 struct netr_SamInfo3 *sam3;/* [unique,case(NetlogonValidationSamInfo2)] */
237 struct netr_PacInfo *pac;/* [unique,case(4)] */
238 struct netr_GenericInfo2 *generic;/* [unique,case(NetlogonValidationGenericInfo2)] */
239 struct netr_SamInfo6 *sam6;/* [unique,case(NetlogonValidationSamInfo4)] */
240 }/* [public,switch_type(uint16)] */;
242 struct netr_Credential {
244 }/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
246 struct netr_Authenticator {
247 struct netr_Credential cred;
251 enum netr_SchannelType;
253 enum netr_SamDatabaseID;
255 struct netr_DELTA_DELETE_USER {
256 const char *account_name;/* [unique,charset(UTF16)] */
257 struct lsa_String unknown1;
258 struct lsa_String unknown2;
259 struct lsa_String unknown3;
260 struct lsa_String unknown4;
267 struct netr_USER_KEY16 {
269 uint16_t size;/* [value(length)] */
271 struct samr_Password pwd;
274 struct netr_PasswordHistory {
276 uint16_t nt_size;/* [value(nt_length)] */
279 uint16_t lm_size;/* [value(lm_length)] */
285 struct netr_USER_KEYS2 {
286 struct netr_USER_KEY16 lmpassword;
287 struct netr_USER_KEY16 ntpassword;
288 struct netr_PasswordHistory history;
291 struct netr_USER_KEY_UNION {
292 struct netr_USER_KEYS2 keys2;
295 struct netr_USER_KEYS {
297 struct netr_USER_KEY_UNION keys;
300 struct netr_USER_PRIVATE_INFO {
301 uint8_t SensitiveDataFlag;
303 uint8_t *SensitiveData;/* [unique,flag(LIBNDR_PRINT_ARRAY_HEX),size_is(DataLength)] */
306 struct netr_DELTA_USER {
307 struct lsa_String account_name;
308 struct lsa_String full_name;
310 uint32_t primary_gid;
311 struct lsa_String home_directory;
312 struct lsa_String home_drive;
313 struct lsa_String logon_script;
314 struct lsa_String description;
315 struct lsa_String workstations;
318 struct samr_LogonHours logon_hours;
319 uint16_t bad_password_count;
320 uint16_t logon_count;
321 NTTIME last_password_change;
324 struct samr_Password lmpassword;
325 struct samr_Password ntpassword;
326 uint8_t nt_password_present;
327 uint8_t lm_password_present;
328 uint8_t password_expired;
329 struct lsa_String comment;
330 struct lsa_String parameters;
331 uint16_t country_code;
333 struct netr_USER_PRIVATE_INFO user_private_info;
334 uint32_t SecurityInformation;
335 struct sec_desc_buf sdbuf;
336 struct lsa_String profile_path;
337 struct lsa_String unknown2;
338 struct lsa_String unknown3;
339 struct lsa_String unknown4;
346 struct netr_DELTA_DOMAIN {
347 struct lsa_String domain_name;
348 struct lsa_String oem_information;
349 int64_t force_logoff_time;
350 uint16_t min_password_length;
351 uint16_t password_history_length;
352 int64_t max_password_age;
353 int64_t min_password_age;
354 uint64_t sequence_num;
355 NTTIME domain_create_time;
356 uint32_t SecurityInformation;
357 struct sec_desc_buf sdbuf;
358 struct lsa_BinaryString account_lockout;
359 struct lsa_String unknown2;
360 struct lsa_String unknown3;
361 struct lsa_String unknown4;
362 uint32_t logon_to_chgpass;
368 struct netr_DELTA_GROUP {
369 struct lsa_String group_name;
372 struct lsa_String description;
373 uint32_t SecurityInformation;
374 struct sec_desc_buf sdbuf;
375 struct lsa_String unknown1;
376 struct lsa_String unknown2;
377 struct lsa_String unknown3;
378 struct lsa_String unknown4;
385 struct netr_DELTA_RENAME {
386 struct lsa_String OldName;
387 struct lsa_String NewName;
388 struct lsa_String unknown1;
389 struct lsa_String unknown2;
390 struct lsa_String unknown3;
391 struct lsa_String unknown4;
398 struct netr_DELTA_GROUP_MEMBER {
399 uint32_t *rids;/* [unique,size_is(num_rids)] */
400 uint32_t *attribs;/* [unique,size_is(num_rids)] */
408 struct netr_DELTA_ALIAS {
409 struct lsa_String alias_name;
411 uint32_t SecurityInformation;
412 struct sec_desc_buf sdbuf;
413 struct lsa_String description;
414 struct lsa_String unknown2;
415 struct lsa_String unknown3;
416 struct lsa_String unknown4;
423 struct netr_DELTA_ALIAS_MEMBER {
424 struct lsa_SidArray sids;
431 struct netr_QUOTA_LIMITS {
432 uint32_t pagedpoollimit;
433 uint32_t nonpagedpoollimit;
434 uint32_t minimumworkingsetsize;
435 uint32_t maximumworkingsetsize;
436 uint32_t pagefilelimit;
440 struct netr_DELTA_POLICY {
442 NTTIME auditretentionperiod;
443 uint8_t auditingmode;
444 uint32_t maxauditeventcount;
445 uint32_t *eventauditoptions;/* [unique,size_is(maxauditeventcount+1)] */
446 struct lsa_String primary_domain_name;
447 struct dom_sid2 *sid;/* [unique] */
448 struct netr_QUOTA_LIMITS quota_limits;
449 uint64_t sequence_num;
450 NTTIME db_create_time;
451 uint32_t SecurityInformation;
452 struct sec_desc_buf sdbuf;
453 struct lsa_String unknown1;
454 struct lsa_String unknown2;
455 struct lsa_String unknown3;
456 struct lsa_String unknown4;
463 struct netr_DELTA_TRUSTED_DOMAIN {
464 struct lsa_String domain_name;
465 uint32_t num_controllers;
466 struct lsa_String *controller_names;/* [unique,size_is(num_controllers)] */
467 uint32_t SecurityInformation;
468 struct sec_desc_buf sdbuf;
469 struct lsa_String unknown1;
470 struct lsa_String unknown2;
471 struct lsa_String unknown3;
472 struct lsa_String unknown4;
473 uint32_t posix_offset;
479 struct netr_DELTA_DELETE_TRUST {
483 struct netr_DELTA_ACCOUNT {
484 uint32_t privilege_entries;
485 uint32_t privilege_control;
486 uint32_t *privilege_attrib;/* [unique,size_is(privilege_entries)] */
487 struct lsa_String *privilege_name;/* [unique,size_is(privilege_entries)] */
488 struct netr_QUOTA_LIMITS quotalimits;
489 uint32_t system_flags;
490 uint32_t SecurityInformation;
491 struct sec_desc_buf sdbuf;
492 struct lsa_String unknown1;
493 struct lsa_String unknown2;
494 struct lsa_String unknown3;
495 struct lsa_String unknown4;
502 struct netr_DELTA_DELETE_ACCOUNT {
506 struct netr_DELTA_DELETE_SECRET {
510 struct netr_CIPHER_VALUE {
513 uint8_t *cipher_data;/* [unique,length_is(len),size_is(maxlen)] */
516 struct netr_DELTA_SECRET {
517 struct netr_CIPHER_VALUE current_cipher;
518 NTTIME current_cipher_set_time;
519 struct netr_CIPHER_VALUE old_cipher;
520 NTTIME old_cipher_set_time;
521 uint32_t SecurityInformation;
522 struct sec_desc_buf sdbuf;
523 struct lsa_String unknown1;
524 struct lsa_String unknown2;
525 struct lsa_String unknown3;
526 struct lsa_String unknown4;
534 #ifndef USE_UINT_ENUMS
538 NETR_DELTA_DELETE_GROUP=3,
539 NETR_DELTA_RENAME_GROUP=4,
541 NETR_DELTA_DELETE_USER=6,
542 NETR_DELTA_RENAME_USER=7,
543 NETR_DELTA_GROUP_MEMBER=8,
545 NETR_DELTA_DELETE_ALIAS=10,
546 NETR_DELTA_RENAME_ALIAS=11,
547 NETR_DELTA_ALIAS_MEMBER=12,
548 NETR_DELTA_POLICY=13,
549 NETR_DELTA_TRUSTED_DOMAIN=14,
550 NETR_DELTA_DELETE_TRUST=15,
551 NETR_DELTA_ACCOUNT=16,
552 NETR_DELTA_DELETE_ACCOUNT=17,
553 NETR_DELTA_SECRET=18,
554 NETR_DELTA_DELETE_SECRET=19,
555 NETR_DELTA_DELETE_GROUP2=20,
556 NETR_DELTA_DELETE_USER2=21,
557 NETR_DELTA_MODIFY_COUNT=22
560 { __donnot_use_enum_netr_DeltaEnum=0x7FFFFFFF}
561 #define NETR_DELTA_DOMAIN ( 1 )
562 #define NETR_DELTA_GROUP ( 2 )
563 #define NETR_DELTA_DELETE_GROUP ( 3 )
564 #define NETR_DELTA_RENAME_GROUP ( 4 )
565 #define NETR_DELTA_USER ( 5 )
566 #define NETR_DELTA_DELETE_USER ( 6 )
567 #define NETR_DELTA_RENAME_USER ( 7 )
568 #define NETR_DELTA_GROUP_MEMBER ( 8 )
569 #define NETR_DELTA_ALIAS ( 9 )
570 #define NETR_DELTA_DELETE_ALIAS ( 10 )
571 #define NETR_DELTA_RENAME_ALIAS ( 11 )
572 #define NETR_DELTA_ALIAS_MEMBER ( 12 )
573 #define NETR_DELTA_POLICY ( 13 )
574 #define NETR_DELTA_TRUSTED_DOMAIN ( 14 )
575 #define NETR_DELTA_DELETE_TRUST ( 15 )
576 #define NETR_DELTA_ACCOUNT ( 16 )
577 #define NETR_DELTA_DELETE_ACCOUNT ( 17 )
578 #define NETR_DELTA_SECRET ( 18 )
579 #define NETR_DELTA_DELETE_SECRET ( 19 )
580 #define NETR_DELTA_DELETE_GROUP2 ( 20 )
581 #define NETR_DELTA_DELETE_USER2 ( 21 )
582 #define NETR_DELTA_MODIFY_COUNT ( 22 )
586 union netr_DELTA_UNION {
587 struct netr_DELTA_DOMAIN *domain;/* [unique,case(NETR_DELTA_DOMAIN)] */
588 struct netr_DELTA_GROUP *group;/* [unique,case(NETR_DELTA_GROUP)] */
589 struct netr_DELTA_RENAME *rename_group;/* [unique,case(NETR_DELTA_RENAME_GROUP)] */
590 struct netr_DELTA_USER *user;/* [unique,case(NETR_DELTA_USER)] */
591 struct netr_DELTA_RENAME *rename_user;/* [unique,case(NETR_DELTA_RENAME_USER)] */
592 struct netr_DELTA_GROUP_MEMBER *group_member;/* [unique,case(NETR_DELTA_GROUP_MEMBER)] */
593 struct netr_DELTA_ALIAS *alias;/* [unique,case(NETR_DELTA_ALIAS)] */
594 struct netr_DELTA_RENAME *rename_alias;/* [unique,case(NETR_DELTA_RENAME_ALIAS)] */
595 struct netr_DELTA_ALIAS_MEMBER *alias_member;/* [unique,case(NETR_DELTA_ALIAS_MEMBER)] */
596 struct netr_DELTA_POLICY *policy;/* [unique,case(NETR_DELTA_POLICY)] */
597 struct netr_DELTA_TRUSTED_DOMAIN *trusted_domain;/* [unique,case(NETR_DELTA_TRUSTED_DOMAIN)] */
598 struct netr_DELTA_DELETE_TRUST delete_trust;/* [case(NETR_DELTA_DELETE_TRUST)] */
599 struct netr_DELTA_ACCOUNT *account;/* [unique,case(NETR_DELTA_ACCOUNT)] */
600 struct netr_DELTA_DELETE_ACCOUNT delete_account;/* [case(NETR_DELTA_DELETE_ACCOUNT)] */
601 struct netr_DELTA_SECRET *secret;/* [unique,case(NETR_DELTA_SECRET)] */
602 struct netr_DELTA_DELETE_SECRET delete_secret;/* [case(NETR_DELTA_DELETE_SECRET)] */
603 struct netr_DELTA_DELETE_USER *delete_group;/* [unique,case(NETR_DELTA_DELETE_GROUP2)] */
604 struct netr_DELTA_DELETE_USER *delete_user;/* [unique,case(NETR_DELTA_DELETE_USER2)] */
605 uint64_t *modified_count;/* [unique,case(NETR_DELTA_MODIFY_COUNT)] */
606 }/* [switch_type(netr_DeltaEnum)] */;
608 union netr_DELTA_ID_UNION {
609 uint32_t rid;/* [case(NETR_DELTA_DOMAIN)] */
610 struct dom_sid2 *sid;/* [unique,case(NETR_DELTA_POLICY)] */
611 const char *name;/* [unique,charset(UTF16),case(NETR_DELTA_SECRET)] */
612 }/* [switch_type(netr_DeltaEnum)] */;
614 struct netr_DELTA_ENUM {
615 enum netr_DeltaEnum delta_type;
616 union netr_DELTA_ID_UNION delta_id_union;/* [switch_is(delta_type)] */
617 union netr_DELTA_UNION delta_union;/* [switch_is(delta_type)] */
620 struct netr_DELTA_ENUM_ARRAY {
622 struct netr_DELTA_ENUM *delta_enum;/* [unique,size_is(num_deltas)] */
625 struct netr_UAS_INFO_0 {
626 uint8_t computer_name[16];
627 uint32_t timecreated;
628 uint32_t serial_number;
629 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
631 struct netr_AccountBuffer {
632 DATA_BLOB blob;/* [flag(LIBNDR_FLAG_REMAINING)] */
635 /* bitmap netr_InfoFlags */
636 #define NETLOGON_CTRL_REPL_NEEDED ( 0x0001 )
637 #define NETLOGON_CTRL_REPL_IN_PROGRESS ( 0x0002 )
638 #define NETLOGON_CTRL_REPL_FULL_SYNC ( 0x0004 )
640 struct netr_NETLOGON_INFO_1 {
642 uint32_t pdc_connection_status;
645 struct netr_NETLOGON_INFO_2 {
647 uint32_t pdc_connection_status;
648 const char *trusted_dc_name;/* [unique,charset(UTF16)] */
649 uint32_t tc_connection_status;
652 struct netr_NETLOGON_INFO_3 {
654 uint32_t logon_attempts;
662 union netr_CONTROL_QUERY_INFORMATION {
663 struct netr_NETLOGON_INFO_1 *info1;/* [unique,case] */
664 struct netr_NETLOGON_INFO_2 *info2;/* [unique,case(2)] */
665 struct netr_NETLOGON_INFO_3 *info3;/* [unique,case(3)] */
668 enum netr_LogonControlCode
669 #ifndef USE_UINT_ENUMS
671 NETLOGON_CONTROL_SYNC=2,
672 NETLOGON_CONTROL_REDISCOVER=5,
673 NETLOGON_CONTROL_TC_QUERY=6,
674 NETLOGON_CONTROL_TRANSPORT_NOTIFY=7,
675 NETLOGON_CONTROL_SET_DBFLAG=65534
678 { __donnot_use_enum_netr_LogonControlCode=0x7FFFFFFF}
679 #define NETLOGON_CONTROL_SYNC ( 2 )
680 #define NETLOGON_CONTROL_REDISCOVER ( 5 )
681 #define NETLOGON_CONTROL_TC_QUERY ( 6 )
682 #define NETLOGON_CONTROL_TRANSPORT_NOTIFY ( 7 )
683 #define NETLOGON_CONTROL_SET_DBFLAG ( 65534 )
687 union netr_CONTROL_DATA_INFORMATION {
688 const char *domain;/* [unique,charset(UTF16),case(NETLOGON_CONTROL_REDISCOVER)] */
689 uint32_t debug_level;/* [case(NETLOGON_CONTROL_SET_DBFLAG)] */
692 /* bitmap netr_NegotiateFlags */
693 #define NETLOGON_NEG_ACCOUNT_LOCKOUT ( 0x00000001 )
694 #define NETLOGON_NEG_PERSISTENT_SAMREPL ( 0x00000002 )
695 #define NETLOGON_NEG_ARCFOUR ( 0x00000004 )
696 #define NETLOGON_NEG_PROMOTION_COUNT ( 0x00000008 )
697 #define NETLOGON_NEG_CHANGELOG_BDC ( 0x00000010 )
698 #define NETLOGON_NEG_FULL_SYNC_REPL ( 0x00000020 )
699 #define NETLOGON_NEG_MULTIPLE_SIDS ( 0x00000040 )
700 #define NETLOGON_NEG_REDO ( 0x00000080 )
701 #define NETLOGON_NEG_PASSWORD_CHANGE_REFUSAL ( 0x00000100 )
702 #define NETLOGON_NEG_SEND_PASSWORD_INFO_PDC ( 0x00000200 )
703 #define NETLOGON_NEG_GENERIC_PASSTHROUGH ( 0x00000400 )
704 #define NETLOGON_NEG_CONCURRENT_RPC ( 0x00000800 )
705 #define NETLOGON_NEG_AVOID_ACCOUNT_DB_REPL ( 0x00001000 )
706 #define NETLOGON_NEG_AVOID_SECURITYAUTH_DB_REPL ( 0x00002000 )
707 #define NETLOGON_NEG_128BIT ( 0x00004000 )
708 #define NETLOGON_NEG_TRANSITIVE_TRUSTS ( 0x00008000 )
709 #define NETLOGON_NEG_DNS_DOMAIN_TRUSTS ( 0x00010000 )
710 #define NETLOGON_NEG_PASSWORD_SET2 ( 0x00020000 )
711 #define NETLOGON_NEG_GETDOMAININFO ( 0x00040000 )
712 #define NETLOGON_NEG_CROSS_FOREST_TRUSTS ( 0x00080000 )
713 #define NETLOGON_NEG_NEUTRALIZE_NT4_EMULATION ( 0x00100000 )
714 #define NETLOGON_NEG_RODC_PASSTHROUGH ( 0x00200000 )
715 #define NETLOGON_NEG_AUTHENTICATED_RPC_LSASS ( 0x20000000 )
716 #define NETLOGON_NEG_SCHANNEL ( 0x40000000 )
718 /* bitmap netr_ChangeLogFlags */
719 #define NETR_CHANGELOG_IMMEDIATE_REPL_REQUIRED ( 0x0001 )
720 #define NETR_CHANGELOG_CHANGED_PASSWORD ( 0x0002 )
721 #define NETR_CHANGELOG_SID_INCLUDED ( 0x0004 )
722 #define NETR_CHANGELOG_NAME_INCLUDED ( 0x0008 )
723 #define NETR_CHANGELOG_FIRST_PROMOTION_OBJ ( 0x0010 )
725 union netr_ChangeLogObject {
726 struct dom_sid object_sid;/* [case(NETR_CHANGELOG_SID_INCLUDED)] */
727 const char * object_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(NETR_CHANGELOG_NAME_INCLUDED)] */
728 }/* [nodiscriminant] */;
730 struct netr_ChangeLogEntry {
731 uint32_t serial_number1;
732 uint32_t serial_number2;
735 enum netr_SamDatabaseID8Bit db_index;
736 enum netr_DeltaEnum8Bit delta_type;
737 union netr_ChangeLogObject object;/* [switch_is(flags&(NETR_CHANGELOG_SID_INCLUDED|NETR_CHANGELOG_NAME_INCLUDED))] */
738 }/* [gensize,public] */;
742 uint8_t *data;/* [unique,size_is(length)] */
745 /* bitmap netr_DsRGetDCName_flags */
746 #define DS_FORCE_REDISCOVERY ( 0x00000001 )
747 #define DS_DIRECTORY_SERVICE_REQUIRED ( 0x00000010 )
748 #define DS_DIRECTORY_SERVICE_PREFERRED ( 0x00000020 )
749 #define DS_GC_SERVER_REQUIRED ( 0x00000040 )
750 #define DS_PDC_REQUIRED ( 0x00000080 )
751 #define DS_BACKGROUND_ONLY ( 0x00000100 )
752 #define DS_IP_REQUIRED ( 0x00000200 )
753 #define DS_KDC_REQUIRED ( 0x00000400 )
754 #define DS_TIMESERV_REQUIRED ( 0x00000800 )
755 #define DS_WRITABLE_REQUIRED ( 0x00001000 )
756 #define DS_GOOD_TIMESERV_PREFERRED ( 0x00002000 )
757 #define DS_AVOID_SELF ( 0x00004000 )
758 #define DS_ONLY_LDAP_NEEDED ( 0x00008000 )
759 #define DS_IS_FLAT_NAME ( 0x00010000 )
760 #define DS_IS_DNS_NAME ( 0x00020000 )
761 #define DS_TRY_NEXTCLOSEST_SITE ( 0x00040000 )
762 #define DS_DIRECTORY_SERVICE_6_REQUIRED ( 0x00080000 )
763 #define DS_RETURN_DNS_NAME ( 0x40000000 )
764 #define DS_RETURN_FLAT_NAME ( 0x80000000 )
766 enum netr_DsRGetDCNameInfo_AddressType
767 #ifndef USE_UINT_ENUMS
769 DS_ADDRESS_TYPE_INET=1,
770 DS_ADDRESS_TYPE_NETBIOS=2
773 { __donnot_use_enum_netr_DsRGetDCNameInfo_AddressType=0x7FFFFFFF}
774 #define DS_ADDRESS_TYPE_INET ( 1 )
775 #define DS_ADDRESS_TYPE_NETBIOS ( 2 )
779 /* bitmap netr_DsR_DcFlags */
780 #define DS_SERVER_PDC ( NBT_SERVER_PDC )
781 #define DS_SERVER_GC ( NBT_SERVER_GC )
782 #define DS_SERVER_LDAP ( NBT_SERVER_LDAP )
783 #define DS_SERVER_DS ( NBT_SERVER_DS )
784 #define DS_SERVER_KDC ( NBT_SERVER_KDC )
785 #define DS_SERVER_TIMESERV ( NBT_SERVER_TIMESERV )
786 #define DS_SERVER_CLOSEST ( NBT_SERVER_CLOSEST )
787 #define DS_SERVER_WRITABLE ( NBT_SERVER_WRITABLE )
788 #define DS_SERVER_GOOD_TIMESERV ( NBT_SERVER_GOOD_TIMESERV )
789 #define DS_SERVER_NDNC ( NBT_SERVER_NDNC )
790 #define DS_SERVER_SELECT_SECRET_DOMAIN_6 ( NBT_SERVER_SELECT_SECRET_DOMAIN_6 )
791 #define DS_SERVER_FULL_SECRET_DOMAIN_6 ( NBT_SERVER_FULL_SECRET_DOMAIN_6 )
792 #define DS_DNS_CONTROLLER ( 0x20000000 )
793 #define DS_DNS_DOMAIN ( 0x40000000 )
794 #define DS_DNS_FOREST ( 0x80000000 )
796 struct netr_DsRGetDCNameInfo {
797 const char *dc_unc;/* [unique,charset(UTF16)] */
798 const char *dc_address;/* [unique,charset(UTF16)] */
799 enum netr_DsRGetDCNameInfo_AddressType dc_address_type;
800 struct GUID domain_guid;
801 const char *domain_name;/* [unique,charset(UTF16)] */
802 const char *forest_name;/* [unique,charset(UTF16)] */
804 const char *dc_site_name;/* [unique,charset(UTF16)] */
805 const char *client_site_name;/* [unique,charset(UTF16)] */
808 /* bitmap netr_TrustFlags */
809 #define NETR_TRUST_FLAG_IN_FOREST ( 0x00000001 )
810 #define NETR_TRUST_FLAG_OUTBOUND ( 0x00000002 )
811 #define NETR_TRUST_FLAG_TREEROOT ( 0x00000004 )
812 #define NETR_TRUST_FLAG_PRIMARY ( 0x00000008 )
813 #define NETR_TRUST_FLAG_NATIVE ( 0x00000010 )
814 #define NETR_TRUST_FLAG_INBOUND ( 0x00000020 )
815 #define NETR_TRUST_FLAG_MIT_KRB5 ( 0x00000080 )
816 #define NETR_TRUST_FLAG_AES ( 0x00000100 )
818 struct netr_BinaryString {
821 uint16_t *data;/* [unique,length_is(length/2),size_is(size/2)] */
822 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
824 struct netr_DomainQuery1 {
825 struct netr_Blob blob;
826 const char *workstation_domain;/* [unique,charset(UTF16)] */
827 const char *workstation_site;/* [unique,charset(UTF16)] */
828 const char *unknown1;/* [unique,charset(UTF16)] */
829 const char *unknown2;/* [unique,charset(UTF16)] */
830 const char *unknown3;/* [unique,charset(UTF16)] */
831 const char *unknown4;/* [unique,charset(UTF16)] */
832 struct netr_BinaryString blob2;
833 struct lsa_String product;
834 struct lsa_String unknown5;
835 struct lsa_String unknown6;
836 uint32_t unknown7[4];
839 union netr_DomainQuery {
840 struct netr_DomainQuery1 *query1;/* [unique,case] */
843 struct netr_trust_extension {
844 uint32_t length;/* [value(8)] */
845 uint32_t dummy;/* [value(0)] */
846 uint32_t size;/* [value(8)] */
848 uint32_t parent_index;
850 uint32_t trust_attributes;
853 struct netr_trust_extension_container {
855 uint16_t size;/* [value(length)] */
856 struct netr_trust_extension *info;/* [unique] */
859 struct netr_DomainTrustInfo {
860 struct lsa_String domainname;
861 struct lsa_String fulldomainname;
862 struct lsa_String forest;
864 struct dom_sid2 *sid;/* [unique] */
865 struct netr_trust_extension_container trust_extension;
866 struct lsa_String dummystring[3];
870 struct netr_LsaPolicyInfo {
871 uint32_t policy_size;
872 uint8_t *policy;/* [unique,size_is(policy_size)] */
875 /* bitmap netr_WorkstationFlags */
876 #define NETR_WS_FLAG_HANDLES_INBOUND_TRUSTS ( 0x00000001 )
877 #define NETR_WS_FLAG_HANDLES_SPN_UPDATE ( 0x00000002 )
879 struct netr_DomainInfo1 {
880 struct netr_DomainTrustInfo domaininfo;
882 struct netr_DomainTrustInfo *trusts;/* [unique,size_is(num_trusts)] */
883 struct netr_LsaPolicyInfo lsa_policy;
884 struct lsa_String dns_hostname;
885 struct lsa_String dummystring[3];
886 uint32_t workstation_flags;
887 uint32_t supported_enc_types;
891 union netr_DomainInfo {
892 struct netr_DomainInfo1 *info1;/* [unique,case] */
893 struct netr_DomainInfo1 *info2;/* [unique,case(2)] */
896 struct netr_CryptPassword {
899 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
901 struct netr_DsRAddressToSitenamesWCtr {
903 struct lsa_String *sitename;/* [unique,size_is(count)] */
906 struct netr_DsRAddress {
907 uint8_t *buffer;/* [unique,size_is(size)] */
912 #ifndef USE_UINT_ENUMS
914 NETR_TRUST_TYPE_DOWNLEVEL=1,
915 NETR_TRUST_TYPE_UPLEVEL=2,
916 NETR_TRUST_TYPE_MIT=3,
917 NETR_TRUST_TYPE_DCE=4
920 { __donnot_use_enum_netr_TrustType=0x7FFFFFFF}
921 #define NETR_TRUST_TYPE_DOWNLEVEL ( 1 )
922 #define NETR_TRUST_TYPE_UPLEVEL ( 2 )
923 #define NETR_TRUST_TYPE_MIT ( 3 )
924 #define NETR_TRUST_TYPE_DCE ( 4 )
928 /* bitmap netr_TrustAttributes */
929 #define NETR_TRUST_ATTRIBUTE_NON_TRANSITIVE ( 0x00000001 )
930 #define NETR_TRUST_ATTRIBUTE_UPLEVEL_ONLY ( 0x00000002 )
931 #define NETR_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN ( 0x00000004 )
932 #define NETR_TRUST_ATTRIBUTE_FOREST_TRANSITIVE ( 0x00000008 )
933 #define NETR_TRUST_ATTRIBUTE_CROSS_ORGANIZATION ( 0x00000010 )
934 #define NETR_TRUST_ATTRIBUTE_WITHIN_FOREST ( 0x00000020 )
935 #define NETR_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL ( 0x00000040 )
937 struct netr_DomainTrust {
938 const char *netbios_name;/* [unique,charset(UTF16)] */
939 const char *dns_name;/* [unique,charset(UTF16)] */
940 uint32_t trust_flags;
941 uint32_t parent_index;
942 enum netr_TrustType trust_type;
943 uint32_t trust_attributes;
944 struct dom_sid2 *sid;/* [unique] */
948 struct netr_DomainTrustList {
950 struct netr_DomainTrust *array;/* [unique,size_is(count)] */
953 struct netr_DsRAddressToSitenamesExWCtr {
955 struct lsa_String *sitename;/* [unique,size_is(count)] */
956 struct lsa_String *subnetname;/* [unique,size_is(count)] */
961 struct lsa_String *sites;/* [unique,size_is(num_sites)] */
965 struct netr_LogonUasLogon {
967 const char *server_name;/* [unique,charset(UTF16)] */
968 const char *account_name;/* [charset(UTF16)] */
969 const char *workstation;/* [charset(UTF16)] */
973 struct netr_UasInfo **info;/* [ref] */
980 struct netr_LogonUasLogoff {
982 const char *server_name;/* [unique,charset(UTF16)] */
983 const char *account_name;/* [charset(UTF16)] */
984 const char *workstation;/* [charset(UTF16)] */
988 struct netr_UasLogoffInfo *info;/* [ref] */
995 struct netr_LogonSamLogon {
997 const char *server_name;/* [unique,charset(UTF16)] */
998 const char *computer_name;/* [unique,charset(UTF16)] */
999 struct netr_Authenticator *credential;/* [unique] */
1000 enum netr_LogonInfoClass logon_level;
1001 union netr_LogonLevel *logon;/* [ref,switch_is(logon_level)] */
1002 uint16_t validation_level;
1003 struct netr_Authenticator *return_authenticator;/* [unique] */
1007 union netr_Validation *validation;/* [ref,switch_is(validation_level)] */
1008 uint8_t *authoritative;/* [ref] */
1009 struct netr_Authenticator *return_authenticator;/* [unique] */
1016 struct netr_LogonSamLogoff {
1018 const char *server_name;/* [unique,charset(UTF16)] */
1019 const char *computer_name;/* [unique,charset(UTF16)] */
1020 struct netr_Authenticator *credential;/* [unique] */
1021 enum netr_LogonInfoClass logon_level;
1022 union netr_LogonLevel logon;/* [switch_is(logon_level)] */
1023 struct netr_Authenticator *return_authenticator;/* [unique] */
1027 struct netr_Authenticator *return_authenticator;/* [unique] */
1034 struct netr_ServerReqChallenge {
1036 const char *server_name;/* [unique,charset(UTF16)] */
1037 const char *computer_name;/* [charset(UTF16)] */
1038 struct netr_Credential *credentials;/* [ref] */
1042 struct netr_Credential *return_credentials;/* [ref] */
1049 struct netr_ServerAuthenticate {
1051 const char *server_name;/* [unique,charset(UTF16)] */
1052 const char *account_name;/* [charset(UTF16)] */
1053 enum netr_SchannelType secure_channel_type;
1054 const char *computer_name;/* [charset(UTF16)] */
1055 struct netr_Credential *credentials;/* [ref] */
1059 struct netr_Credential *return_credentials;/* [ref] */
1066 struct netr_ServerPasswordSet {
1068 const char *server_name;/* [unique,charset(UTF16)] */
1069 const char *account_name;/* [charset(UTF16)] */
1070 enum netr_SchannelType secure_channel_type;
1071 const char *computer_name;/* [charset(UTF16)] */
1072 struct netr_Authenticator *credential;/* [ref] */
1073 struct samr_Password *new_password;/* [ref] */
1077 struct netr_Authenticator *return_authenticator;/* [ref] */
1084 struct netr_DatabaseDeltas {
1086 const char *logon_server;/* [charset(UTF16)] */
1087 const char *computername;/* [charset(UTF16)] */
1088 struct netr_Authenticator *credential;/* [ref] */
1089 enum netr_SamDatabaseID database_id;
1090 uint32_t preferredmaximumlength;
1091 struct netr_Authenticator *return_authenticator;/* [ref] */
1092 uint64_t *sequence_num;/* [ref] */
1096 struct netr_DELTA_ENUM_ARRAY **delta_enum_array;/* [ref] */
1097 struct netr_Authenticator *return_authenticator;/* [ref] */
1098 uint64_t *sequence_num;/* [ref] */
1105 struct netr_DatabaseSync {
1107 const char *logon_server;/* [charset(UTF16)] */
1108 const char *computername;/* [charset(UTF16)] */
1109 struct netr_Authenticator *credential;/* [ref] */
1110 enum netr_SamDatabaseID database_id;
1111 uint32_t preferredmaximumlength;
1112 struct netr_Authenticator *return_authenticator;/* [ref] */
1113 uint32_t *sync_context;/* [ref] */
1117 struct netr_DELTA_ENUM_ARRAY **delta_enum_array;/* [ref] */
1118 struct netr_Authenticator *return_authenticator;/* [ref] */
1119 uint32_t *sync_context;/* [ref] */
1126 struct netr_AccountDeltas {
1128 const char *logon_server;/* [unique,charset(UTF16)] */
1129 const char *computername;/* [charset(UTF16)] */
1130 struct netr_Authenticator credential;
1131 struct netr_UAS_INFO_0 uas;
1134 uint32_t buffersize;
1135 struct netr_Authenticator *return_authenticator;/* [ref] */
1139 struct netr_AccountBuffer *buffer;/* [ref,subcontext(4)] */
1140 uint32_t *count_returned;/* [ref] */
1141 uint32_t *total_entries;/* [ref] */
1142 struct netr_UAS_INFO_0 *recordid;/* [ref] */
1143 struct netr_Authenticator *return_authenticator;/* [ref] */
1150 struct netr_AccountSync {
1152 const char *logon_server;/* [unique,charset(UTF16)] */
1153 const char *computername;/* [charset(UTF16)] */
1154 struct netr_Authenticator credential;
1157 uint32_t buffersize;
1158 struct netr_Authenticator *return_authenticator;/* [ref] */
1159 struct netr_UAS_INFO_0 *recordid;/* [ref] */
1163 struct netr_AccountBuffer *buffer;/* [ref,subcontext(4)] */
1164 uint32_t *count_returned;/* [ref] */
1165 uint32_t *total_entries;/* [ref] */
1166 uint32_t *next_reference;/* [ref] */
1167 struct netr_Authenticator *return_authenticator;/* [ref] */
1168 struct netr_UAS_INFO_0 *recordid;/* [ref] */
1175 struct netr_GetDcName {
1177 const char *logon_server;/* [charset(UTF16)] */
1178 const char *domainname;/* [unique,charset(UTF16)] */
1182 const char **dcname;/* [ref,charset(UTF16)] */
1189 struct netr_LogonControl {
1191 const char *logon_server;/* [unique,charset(UTF16)] */
1192 enum netr_LogonControlCode function_code;
1197 union netr_CONTROL_QUERY_INFORMATION *info;/* [ref,switch_is(level)] */
1204 struct netr_GetAnyDCName {
1206 const char *logon_server;/* [unique,charset(UTF16)] */
1207 const char *domainname;/* [unique,charset(UTF16)] */
1211 const char **dcname;/* [ref,charset(UTF16)] */
1218 struct netr_LogonControl2 {
1220 const char *logon_server;/* [unique,charset(UTF16)] */
1221 enum netr_LogonControlCode function_code;
1223 union netr_CONTROL_DATA_INFORMATION *data;/* [ref,switch_is(function_code)] */
1227 union netr_CONTROL_QUERY_INFORMATION *query;/* [ref,switch_is(level)] */
1234 struct netr_ServerAuthenticate2 {
1236 const char *server_name;/* [unique,charset(UTF16)] */
1237 const char *account_name;/* [charset(UTF16)] */
1238 enum netr_SchannelType secure_channel_type;
1239 const char *computer_name;/* [charset(UTF16)] */
1240 struct netr_Credential *credentials;/* [ref] */
1241 uint32_t *negotiate_flags;/* [ref] */
1245 struct netr_Credential *return_credentials;/* [ref] */
1246 uint32_t *negotiate_flags;/* [ref] */
1253 struct netr_DatabaseSync2 {
1255 const char *logon_server;/* [charset(UTF16)] */
1256 const char *computername;/* [charset(UTF16)] */
1257 struct netr_Authenticator *credential;/* [ref] */
1258 enum netr_SamDatabaseID database_id;
1259 uint16_t restart_state;
1260 uint32_t preferredmaximumlength;
1261 struct netr_Authenticator *return_authenticator;/* [ref] */
1262 uint32_t *sync_context;/* [ref] */
1266 struct netr_DELTA_ENUM_ARRAY **delta_enum_array;/* [ref] */
1267 struct netr_Authenticator *return_authenticator;/* [ref] */
1268 uint32_t *sync_context;/* [ref] */
1275 struct netr_DatabaseRedo {
1277 const char *logon_server;/* [charset(UTF16)] */
1278 const char *computername;/* [charset(UTF16)] */
1279 struct netr_Authenticator *credential;/* [ref] */
1280 struct netr_ChangeLogEntry change_log_entry;/* [subcontext_size(change_log_entry_size),subcontext(4)] */
1281 uint32_t change_log_entry_size;/* [value(ndr_size_netr_ChangeLogEntry(&change_log_entry,ndr->flags))] */
1282 struct netr_Authenticator *return_authenticator;/* [ref] */
1286 struct netr_DELTA_ENUM_ARRAY **delta_enum_array;/* [ref] */
1287 struct netr_Authenticator *return_authenticator;/* [ref] */
1294 struct netr_LogonControl2Ex {
1296 const char *logon_server;/* [unique,charset(UTF16)] */
1297 uint32_t function_code;
1299 union netr_CONTROL_DATA_INFORMATION data;/* [switch_is(function_code)] */
1303 union netr_CONTROL_QUERY_INFORMATION *query;/* [ref,switch_is(level)] */
1310 struct netr_NetrEnumerateTrustedDomains {
1312 const char *server_name;/* [unique,charset(UTF16)] */
1316 struct netr_Blob *trusted_domains_blob;/* [ref] */
1323 struct netr_DsRGetDCName {
1325 const char *server_unc;/* [unique,charset(UTF16)] */
1326 const char *domain_name;/* [unique,charset(UTF16)] */
1327 struct GUID *domain_guid;/* [unique] */
1328 struct GUID *site_guid;/* [unique] */
1333 struct netr_DsRGetDCNameInfo **info;/* [ref] */
1340 struct netr_NETRLOGONDUMMYROUTINE1 {
1348 struct netr_NETRLOGONSETSERVICEBITS {
1356 struct netr_LogonGetTrustRid {
1358 const char *server_name;/* [unique,charset(UTF16)] */
1359 const char *domain_name;/* [unique,charset(UTF16)] */
1363 uint32_t *rid;/* [ref] */
1370 struct netr_NETRLOGONCOMPUTESERVERDIGEST {
1378 struct netr_NETRLOGONCOMPUTECLIENTDIGEST {
1386 struct netr_ServerAuthenticate3 {
1388 const char *server_name;/* [unique,charset(UTF16)] */
1389 const char *account_name;/* [charset(UTF16)] */
1390 enum netr_SchannelType secure_channel_type;
1391 const char *computer_name;/* [charset(UTF16)] */
1392 struct netr_Credential *credentials;/* [ref] */
1393 uint32_t *negotiate_flags;/* [ref] */
1397 struct netr_Credential *return_credentials;/* [ref] */
1398 uint32_t *rid;/* [ref] */
1399 uint32_t *negotiate_flags;/* [ref] */
1406 struct netr_DsRGetDCNameEx {
1408 const char *server_unc;/* [unique,charset(UTF16)] */
1409 const char *domain_name;/* [unique,charset(UTF16)] */
1410 struct GUID *domain_guid;/* [unique] */
1411 const char *site_name;/* [unique,charset(UTF16)] */
1416 struct netr_DsRGetDCNameInfo **info;/* [ref] */
1423 struct netr_DsRGetSiteName {
1425 const char *computer_name;/* [unique,charset(UTF16)] */
1429 const char **site;/* [ref,charset(UTF16)] */
1436 struct netr_LogonGetDomainInfo {
1438 const char *server_name;/* [charset(UTF16)] */
1439 const char *computer_name;/* [unique,charset(UTF16)] */
1440 struct netr_Authenticator *credential;/* [ref] */
1442 union netr_DomainQuery query;/* [switch_is(level)] */
1443 struct netr_Authenticator *return_authenticator;/* [ref] */
1447 union netr_DomainInfo *info;/* [ref,switch_is(level)] */
1448 struct netr_Authenticator *return_authenticator;/* [ref] */
1455 struct netr_ServerPasswordSet2 {
1457 const char *server_name;/* [unique,charset(UTF16)] */
1458 const char *account_name;/* [charset(UTF16)] */
1459 enum netr_SchannelType secure_channel_type;
1460 const char *computer_name;/* [charset(UTF16)] */
1461 struct netr_Authenticator *credential;/* [ref] */
1462 struct netr_CryptPassword *new_password;/* [ref] */
1466 struct netr_Authenticator *return_authenticator;/* [ref] */
1473 struct netr_ServerPasswordGet {
1475 const char *server_name;/* [unique,charset(UTF16)] */
1476 const char *account_name;/* [charset(UTF16)] */
1477 enum netr_SchannelType secure_channel_type;
1478 const char *computer_name;/* [charset(UTF16)] */
1479 struct netr_Authenticator *credential;/* [ref] */
1483 struct netr_Authenticator *return_authenticator;/* [ref] */
1484 struct samr_Password *password;/* [ref] */
1491 struct netr_NETRLOGONSENDTOSAM {
1499 struct netr_DsRAddressToSitenamesW {
1501 const char *server_name;/* [unique,charset(UTF16)] */
1502 uint32_t count;/* [range(0,32000)] */
1503 struct netr_DsRAddress *addresses;/* [ref,size_is(count)] */
1507 struct netr_DsRAddressToSitenamesWCtr **ctr;/* [ref] */
1514 struct netr_DsRGetDCNameEx2 {
1516 const char *server_unc;/* [unique,charset(UTF16)] */
1517 const char *client_account;/* [unique,charset(UTF16)] */
1519 const char *domain_name;/* [unique,charset(UTF16)] */
1520 struct GUID *domain_guid;/* [unique] */
1521 const char *site_name;/* [unique,charset(UTF16)] */
1526 struct netr_DsRGetDCNameInfo **info;/* [ref] */
1533 struct netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN {
1541 struct netr_NetrEnumerateTrustedDomainsEx {
1543 const char *server_name;/* [unique,charset(UTF16)] */
1547 struct netr_DomainTrustList *dom_trust_list;/* [ref] */
1554 struct netr_DsRAddressToSitenamesExW {
1556 const char *server_name;/* [unique,charset(UTF16)] */
1557 uint32_t count;/* [range(0,32000)] */
1558 struct netr_DsRAddress *addresses;/* [ref,size_is(count)] */
1562 struct netr_DsRAddressToSitenamesExWCtr **ctr;/* [ref] */
1569 struct netr_DsrGetDcSiteCoverageW {
1571 const char *server_name;/* [unique,charset(UTF16)] */
1575 struct DcSitesCtr **ctr;/* [ref] */
1582 struct netr_LogonSamLogonEx {
1584 const char *server_name;/* [unique,charset(UTF16)] */
1585 const char *computer_name;/* [unique,charset(UTF16)] */
1586 enum netr_LogonInfoClass logon_level;
1587 union netr_LogonLevel *logon;/* [ref,switch_is(logon_level)] */
1588 uint16_t validation_level;
1589 uint32_t *flags;/* [ref] */
1593 union netr_Validation *validation;/* [ref,switch_is(validation_level)] */
1594 uint8_t *authoritative;/* [ref] */
1595 uint32_t *flags;/* [ref] */
1602 struct netr_DsrEnumerateDomainTrusts {
1604 const char *server_name;/* [unique,charset(UTF16)] */
1605 uint32_t trust_flags;
1609 struct netr_DomainTrustList *trusts;/* [ref] */
1616 struct netr_DsrDeregisterDNSHostRecords {
1618 const char *server_name;/* [unique,charset(UTF16)] */
1619 const char *domain;/* [unique,charset(UTF16)] */
1620 struct GUID *domain_guid;/* [unique] */
1621 struct GUID *dsa_guid;/* [unique] */
1622 const char *dns_host;/* [ref,charset(UTF16)] */
1632 struct netr_ServerTrustPasswordsGet {
1634 const char *server_name;/* [unique,charset(UTF16)] */
1635 const char *account_name;/* [charset(UTF16)] */
1636 enum netr_SchannelType secure_channel_type;
1637 const char *computer_name;/* [charset(UTF16)] */
1638 struct netr_Authenticator *credential;/* [ref] */
1642 struct netr_Authenticator *return_authenticator;/* [ref] */
1643 struct samr_Password *password;/* [ref] */
1644 struct samr_Password *password2;/* [ref] */
1651 struct netr_DsRGetForestTrustInformation {
1653 const char *server_name;/* [unique,charset(UTF16)] */
1654 const char *trusted_domain_name;/* [unique,charset(UTF16)] */
1659 struct lsa_ForestTrustInformation **forest_trust_info;/* [ref] */
1666 struct netr_GetForestTrustInformation {
1668 const char *server_name;/* [unique,charset(UTF16)] */
1669 const char *trusted_domain_name;/* [ref,charset(UTF16)] */
1670 struct netr_Authenticator *credential;/* [ref] */
1675 struct netr_Authenticator *return_authenticator;/* [ref] */
1676 struct lsa_ForestTrustInformation **forest_trust_info;/* [ref] */
1683 struct netr_LogonSamLogonWithFlags {
1685 const char *server_name;/* [unique,charset(UTF16)] */
1686 const char *computer_name;/* [unique,charset(UTF16)] */
1687 struct netr_Authenticator *credential;/* [unique] */
1688 enum netr_LogonInfoClass logon_level;
1689 union netr_LogonLevel *logon;/* [ref,switch_is(logon_level)] */
1690 uint16_t validation_level;
1691 struct netr_Authenticator *return_authenticator;/* [unique] */
1692 uint32_t *flags;/* [ref] */
1696 union netr_Validation *validation;/* [ref,switch_is(validation_level)] */
1697 uint8_t *authoritative;/* [ref] */
1698 struct netr_Authenticator *return_authenticator;/* [unique] */
1699 uint32_t *flags;/* [ref] */
1706 struct netr_NETRSERVERGETTRUSTINFO {
1713 #endif /* _HEADER_netlogon */