diff options
Diffstat (limited to 'source3/librpc/gen_ndr/netlogon.h')
-rw-r--r-- | source3/librpc/gen_ndr/netlogon.h | 1352 |
1 files changed, 1352 insertions, 0 deletions
diff --git a/source3/librpc/gen_ndr/netlogon.h b/source3/librpc/gen_ndr/netlogon.h new file mode 100644 index 0000000000..cfb2df3c8d --- /dev/null +++ b/source3/librpc/gen_ndr/netlogon.h @@ -0,0 +1,1352 @@ +/* header auto-generated by pidl */ + +#ifndef _HEADER_netlogon +#define _HEADER_netlogon + +#include "librpc/gen_ndr/lsa.h" +#include "librpc/gen_ndr/samr.h" +#include "librpc/gen_ndr/security.h" +#define MSV1_0_CLEARTEXT_PASSWORD_ALLOWED ( 0x002 ) +#define MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT ( 0x020 ) +#define MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT ( 0x800 ) +#define NETLOGON_NEG_ARCFOUR ( 0x00000004 ) +#define NETLOGON_NEG_128BIT ( 0x00004000 ) +#define NETLOGON_NEG_SCHANNEL ( 0x40000000 ) +struct netr_UasInfo { + const char *account_name;/* [unique,keepref,charset(UTF16)] */ + uint32_t priv;/* [keepref] */ + uint32_t auth_flags;/* [keepref] */ + uint32_t logon_count;/* [keepref] */ + uint32_t bad_pw_count;/* [keepref] */ + time_t last_logon;/* [keepref] */ + time_t last_logoff;/* [keepref] */ + time_t logoff_time;/* [keepref] */ + time_t kickoff_time;/* [keepref] */ + uint32_t password_age;/* [keepref] */ + time_t pw_can_change;/* [keepref] */ + time_t pw_must_change;/* [keepref] */ + const char *computer;/* [unique,keepref,charset(UTF16)] */ + const char *domain;/* [unique,keepref,charset(UTF16)] */ + const char *script_path;/* [unique,keepref,charset(UTF16)] */ + uint32_t unknown;/* [keepref] */ +}; + +struct netr_UasLogoffInfo { + uint32_t duration;/* [keepref] */ + uint16_t logon_count;/* [keepref] */ +}; + +struct netr_AcctLockStr { + uint16_t size;/* [keepref] */ + uint16_t length;/* [keepref] */ + uint16_t *bindata;/* [unique,keepref,length_is(length/2),size_is(size/2)] */ +}; + +struct netr_IdentityInfo { + struct lsa_String domain_name;/* [keepref] */ + uint32_t parameter_control;/* [keepref] */ + uint32_t logon_id_low;/* [keepref] */ + uint32_t logon_id_high;/* [keepref] */ + struct lsa_String account_name;/* [keepref] */ + struct lsa_String workstation;/* [keepref] */ +}; + +struct netr_PasswordInfo { + struct netr_IdentityInfo identity_info;/* [keepref] */ + struct samr_Password lmpassword;/* [keepref] */ + struct samr_Password ntpassword;/* [keepref] */ +}; + +struct netr_ChallengeResponse { + uint16_t length;/* [keepref] */ + uint16_t size;/* [keepref,value(length)] */ + uint8_t *data;/* [unique,keepref,length_is(length),size_is(length)] */ +}/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */; + +struct netr_NetworkInfo { + struct netr_IdentityInfo identity_info;/* [keepref] */ + uint8_t challenge[8];/* [keepref] */ + struct netr_ChallengeResponse nt;/* [keepref] */ + struct netr_ChallengeResponse lm;/* [keepref] */ +}/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */; + +union netr_LogonLevel { + struct netr_PasswordInfo *password;/* [unique,keepref,case] */ + struct netr_NetworkInfo *network;/* [unique,keepref,case(2)] */ +}/* [public,switch_type(uint16)] */; + +struct netr_GroupMembership { + uint32_t rid;/* [keepref] */ + uint32_t attributes;/* [keepref] */ +}/* [public] */; + +struct netr_UserSessionKey { + uint8_t key[16];/* [keepref] */ +}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */; + +struct netr_LMSessionKey { + uint8_t key[8];/* [keepref] */ +}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */; + +/* bitmap netr_UserFlags */ +#define NETLOGON_GUEST ( 0x0001 ) +#define NETLOGON_NOENCRYPTION ( 0x0002 ) +#define NETLOGON_CACHED_ACCOUNT ( 0x0004 ) +#define NETLOGON_USED_LM_PASSWORD ( 0x0008 ) +#define NETLOGON_EXTRA_SIDS ( 0x0020 ) +#define NETLOGON_SUBAUTH_SESSION_KEY ( 0x0040 ) +#define NETLOGON_SERVER_TRUST_ACCOUNT ( 0x0080 ) +#define NETLOGON_NTLMV2_ENABLED ( 0x0100 ) +#define NETLOGON_RESOURCE_GROUPS ( 0x0200 ) +#define NETLOGON_PROFILE_PATH_RETURNED ( 0x0400 ) + +struct netr_SamBaseInfo { + NTTIME last_logon;/* [keepref] */ + NTTIME last_logoff;/* [keepref] */ + NTTIME acct_expiry;/* [keepref] */ + NTTIME last_password_change;/* [keepref] */ + NTTIME allow_password_change;/* [keepref] */ + NTTIME force_password_change;/* [keepref] */ + struct lsa_String account_name;/* [keepref] */ + struct lsa_String full_name;/* [keepref] */ + struct lsa_String logon_script;/* [keepref] */ + struct lsa_String profile_path;/* [keepref] */ + struct lsa_String home_directory;/* [keepref] */ + struct lsa_String home_drive;/* [keepref] */ + uint16_t logon_count;/* [keepref] */ + uint16_t bad_password_count;/* [keepref] */ + uint32_t rid;/* [keepref] */ + uint32_t primary_gid;/* [keepref] */ + struct samr_RidWithAttributeArray groups;/* [keepref] */ + uint32_t user_flags;/* [keepref] */ + struct netr_UserSessionKey key;/* [keepref] */ + struct lsa_StringLarge logon_server;/* [keepref] */ + struct lsa_StringLarge domain;/* [keepref] */ + struct dom_sid2 *domain_sid;/* [unique,keepref] */ + struct netr_LMSessionKey LMSessKey;/* [keepref] */ + uint32_t acct_flags;/* [keepref] */ + uint32_t unknown[7];/* [keepref] */ +}; + +struct netr_SamInfo2 { + struct netr_SamBaseInfo base;/* [keepref] */ +}; + +struct netr_SidAttr { + struct dom_sid2 *sid;/* [unique,keepref] */ + uint32_t attribute;/* [keepref] */ +}; + +struct netr_SamInfo3 { + struct netr_SamBaseInfo base;/* [keepref] */ + uint32_t sidcount;/* [keepref] */ + struct netr_SidAttr *sids;/* [unique,keepref,size_is(sidcount)] */ +}/* [public] */; + +struct netr_SamInfo6 { + struct netr_SamBaseInfo base;/* [keepref] */ + uint32_t sidcount;/* [keepref] */ + struct netr_SidAttr *sids;/* [unique,keepref,size_is(sidcount)] */ + struct lsa_String forest;/* [keepref] */ + struct lsa_String principle;/* [keepref] */ + uint32_t unknown4[20];/* [keepref] */ +}; + +struct netr_PacInfo { + uint32_t pac_size;/* [keepref] */ + uint8_t *pac;/* [unique,keepref,size_is(pac_size)] */ + struct lsa_String logon_domain;/* [keepref] */ + struct lsa_String logon_server;/* [keepref] */ + struct lsa_String principal_name;/* [keepref] */ + uint32_t auth_size;/* [keepref] */ + uint8_t *auth;/* [unique,keepref,size_is(auth_size)] */ + struct netr_UserSessionKey user_session_key;/* [keepref] */ + uint32_t expansionroom[10];/* [keepref] */ + struct lsa_String unknown1;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ +}; + +union netr_Validation { + struct netr_SamInfo2 *sam2;/* [unique,keepref,case(2)] */ + struct netr_SamInfo3 *sam3;/* [unique,keepref,case(3)] */ + struct netr_PacInfo *pac;/* [unique,keepref,case(4)] */ + struct netr_SamInfo6 *sam6;/* [unique,keepref,case(6)] */ +}/* [public,switch_type(uint16)] */; + +struct netr_Credential { + uint8_t data[8];/* [keepref] */ +}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */; + +struct netr_Authenticator { + struct netr_Credential cred;/* [keepref] */ + time_t timestamp;/* [keepref] */ +}/* [public] */; + +struct netr_DELTA_DELETE_USER { + const char *account_name;/* [unique,keepref,charset(UTF16)] */ + struct lsa_String unknown1;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_USER_KEY16 { + uint16_t length;/* [keepref] */ + uint16_t size;/* [keepref,value(length)] */ + uint32_t flags;/* [keepref] */ + struct samr_Password pwd;/* [keepref] */ +}; + +struct netr_PasswordHistory { + uint16_t nt_length;/* [keepref] */ + uint16_t nt_size;/* [keepref] */ + uint32_t nt_flags;/* [keepref] */ + uint16_t lm_length;/* [keepref] */ + uint16_t lm_size;/* [keepref] */ + uint32_t lm_flags;/* [keepref] */ + uint8_t *nt_history;/* [keepref] */ + uint8_t *lm_history;/* [keepref] */ +}; + +struct netr_USER_KEYS2 { + struct netr_USER_KEY16 lmpassword;/* [keepref] */ + struct netr_USER_KEY16 ntpassword;/* [keepref] */ + struct netr_PasswordHistory lmhistory;/* [keepref] */ +}; + +struct netr_USER_KEY_UNION { + struct netr_USER_KEYS2 keys2;/* [keepref] */ +}; + +struct netr_USER_KEYS { + uint32_t version;/* [keepref] */ + struct netr_USER_KEY_UNION keys;/* [keepref] */ +}/* [public] */; + +struct netr_USER_PRIVATE_INFO { + uint8_t SensitiveDataFlag;/* [keepref] */ + uint32_t DataLength;/* [keepref] */ + uint8_t *SensitiveData;/* [unique,keepref,flag(LIBNDR_PRINT_ARRAY_HEX),size_is(DataLength)] */ +}; + +struct netr_DELTA_USER { + struct lsa_String account_name;/* [keepref] */ + struct lsa_String full_name;/* [keepref] */ + uint32_t rid;/* [keepref] */ + uint32_t primary_gid;/* [keepref] */ + struct lsa_String home_directory;/* [keepref] */ + struct lsa_String home_drive;/* [keepref] */ + struct lsa_String logon_script;/* [keepref] */ + struct lsa_String description;/* [keepref] */ + struct lsa_String workstations;/* [keepref] */ + NTTIME last_logon;/* [keepref] */ + NTTIME last_logoff;/* [keepref] */ + struct samr_LogonHours logon_hours;/* [keepref] */ + uint16_t bad_password_count;/* [keepref] */ + uint16_t logon_count;/* [keepref] */ + NTTIME last_password_change;/* [keepref] */ + NTTIME acct_expiry;/* [keepref] */ + uint32_t acct_flags;/* [keepref] */ + struct samr_Password lmpassword;/* [keepref] */ + struct samr_Password ntpassword;/* [keepref] */ + uint8_t nt_password_present;/* [keepref] */ + uint8_t lm_password_present;/* [keepref] */ + uint8_t password_expired;/* [keepref] */ + struct lsa_String comment;/* [keepref] */ + struct lsa_String parameters;/* [keepref] */ + uint16_t country_code;/* [keepref] */ + uint16_t code_page;/* [keepref] */ + struct netr_USER_PRIVATE_INFO user_private_info;/* [keepref] */ + uint32_t SecurityInformation;/* [keepref] */ + struct sec_desc_buf sdbuf;/* [keepref] */ + struct lsa_String profile_path;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_DELTA_DOMAIN { + struct lsa_String domain_name;/* [keepref] */ + struct lsa_String comment;/* [keepref] */ + int64_t force_logoff_time;/* [keepref] */ + uint16_t min_password_length;/* [keepref] */ + uint16_t password_history_length;/* [keepref] */ + int64_t max_password_age;/* [keepref] */ + int64_t min_password_age;/* [keepref] */ + uint64_t sequence_num;/* [keepref] */ + NTTIME domain_create_time;/* [keepref] */ + uint32_t SecurityInformation;/* [keepref] */ + struct sec_desc_buf sdbuf;/* [keepref] */ + struct netr_AcctLockStr account_lockout;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t logon_to_chgpass;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_DELTA_GROUP { + struct lsa_String group_name;/* [keepref] */ + uint32_t rid;/* [keepref] */ + uint32_t attributes;/* [keepref] */ + struct lsa_String description;/* [keepref] */ + uint32_t SecurityInformation;/* [keepref] */ + struct sec_desc_buf sdbuf;/* [keepref] */ + struct lsa_String unknown1;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_DELTA_RENAME { + struct lsa_String OldName;/* [keepref] */ + struct lsa_String NewName;/* [keepref] */ + struct lsa_String unknown1;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_DELTA_GROUP_MEMBER { + uint32_t *rids;/* [unique,keepref,size_is(num_rids)] */ + uint32_t *attribs;/* [unique,keepref,size_is(num_rids)] */ + uint32_t num_rids;/* [keepref] */ + uint32_t unknown1;/* [keepref] */ + uint32_t unknown2;/* [keepref] */ + uint32_t unknown3;/* [keepref] */ + uint32_t unknown4;/* [keepref] */ +}; + +struct netr_DELTA_ALIAS { + struct lsa_String alias_name;/* [keepref] */ + uint32_t rid;/* [keepref] */ + uint32_t SecurityInformation;/* [keepref] */ + struct sec_desc_buf sdbuf;/* [keepref] */ + struct lsa_String description;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_DELTA_ALIAS_MEMBER { + struct lsa_SidArray sids;/* [keepref] */ + uint32_t unknown1;/* [keepref] */ + uint32_t unknown2;/* [keepref] */ + uint32_t unknown3;/* [keepref] */ + uint32_t unknown4;/* [keepref] */ +}; + +struct netr_QUOTA_LIMITS { + uint32_t pagedpoollimit;/* [keepref] */ + uint32_t nonpagedpoollimit;/* [keepref] */ + uint32_t minimumworkingsetsize;/* [keepref] */ + uint32_t maximumworkingsetsize;/* [keepref] */ + uint32_t pagefilelimit;/* [keepref] */ + NTTIME timelimit;/* [keepref] */ +}; + +struct netr_DELTA_POLICY { + uint32_t maxlogsize;/* [keepref] */ + NTTIME auditretentionperiod;/* [keepref] */ + uint8_t auditingmode;/* [keepref] */ + uint32_t maxauditeventcount;/* [keepref] */ + uint32_t *eventauditoptions;/* [unique,keepref,size_is(maxauditeventcount+1)] */ + struct lsa_String primary_domain_name;/* [keepref] */ + struct dom_sid2 *sid;/* [unique,keepref] */ + struct netr_QUOTA_LIMITS quota_limits;/* [keepref] */ + uint64_t sequence_num;/* [keepref] */ + NTTIME db_create_time;/* [keepref] */ + uint32_t SecurityInformation;/* [keepref] */ + struct sec_desc_buf sdbuf;/* [keepref] */ + struct lsa_String unknown1;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_DELTA_TRUSTED_DOMAIN { + struct lsa_String domain_name;/* [keepref] */ + uint32_t num_controllers;/* [keepref] */ + struct lsa_String *controller_names;/* [unique,keepref,size_is(num_controllers)] */ + uint32_t SecurityInformation;/* [keepref] */ + struct sec_desc_buf sdbuf;/* [keepref] */ + struct lsa_String unknown1;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t posix_offset;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_DELTA_DELETE_TRUST { + uint16_t unknown;/* [keepref] */ +}; + +struct netr_DELTA_ACCOUNT { + uint32_t privilege_entries;/* [keepref] */ + uint32_t privilege_control;/* [keepref] */ + uint32_t *privilege_attrib;/* [unique,keepref,size_is(privilege_entries)] */ + struct lsa_String *privilege_name;/* [unique,keepref,size_is(privilege_entries)] */ + struct netr_QUOTA_LIMITS quotalimits;/* [keepref] */ + uint32_t system_flags;/* [keepref] */ + uint32_t SecurityInformation;/* [keepref] */ + struct sec_desc_buf sdbuf;/* [keepref] */ + struct lsa_String unknown1;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +struct netr_DELTA_DELETE_ACCOUNT { + uint16_t unknown;/* [keepref] */ +}; + +struct netr_DELTA_DELETE_SECRET { + uint16_t unknown;/* [keepref] */ +}; + +struct netr_CIPHER_VALUE { + uint32_t len;/* [keepref] */ + uint32_t maxlen;/* [keepref] */ + uint8_t *cipher_data;/* [unique,keepref,length_is(len),size_is(maxlen)] */ +}; + +struct netr_DELTA_SECRET { + struct netr_CIPHER_VALUE current_cipher;/* [keepref] */ + NTTIME current_cipher_set_time;/* [keepref] */ + struct netr_CIPHER_VALUE old_cipher;/* [keepref] */ + NTTIME old_cipher_set_time;/* [keepref] */ + uint32_t SecurityInformation;/* [keepref] */ + struct sec_desc_buf sdbuf;/* [keepref] */ + struct lsa_String unknown1;/* [keepref] */ + struct lsa_String unknown2;/* [keepref] */ + struct lsa_String unknown3;/* [keepref] */ + struct lsa_String unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ + uint32_t unknown6;/* [keepref] */ + uint32_t unknown7;/* [keepref] */ + uint32_t unknown8;/* [keepref] */ +}; + +enum netr_DeltaEnum { + NETR_DELTA_DOMAIN=1, + NETR_DELTA_GROUP=2, + NETR_DELTA_DELETE_GROUP=3, + NETR_DELTA_RENAME_GROUP=4, + NETR_DELTA_USER=5, + NETR_DELTA_DELETE_USER=6, + NETR_DELTA_RENAME_USER=7, + NETR_DELTA_GROUP_MEMBER=8, + NETR_DELTA_ALIAS=9, + NETR_DELTA_DELETE_ALIAS=10, + NETR_DELTA_RENAME_ALIAS=11, + NETR_DELTA_ALIAS_MEMBER=12, + NETR_DELTA_POLICY=13, + NETR_DELTA_TRUSTED_DOMAIN=14, + NETR_DELTA_DELETE_TRUST=15, + NETR_DELTA_ACCOUNT=16, + NETR_DELTA_DELETE_ACCOUNT=17, + NETR_DELTA_SECRET=18, + NETR_DELTA_DELETE_SECRET=19, + NETR_DELTA_DELETE_GROUP2=20, + NETR_DELTA_DELETE_USER2=21, + NETR_DELTA_MODIFY_COUNT=22 +}; + +union netr_DELTA_UNION { + struct netr_DELTA_DOMAIN *domain;/* [unique,keepref,case(NETR_DELTA_DOMAIN)] */ + struct netr_DELTA_GROUP *group;/* [unique,keepref,case(NETR_DELTA_GROUP)] */ + struct netr_DELTA_RENAME *rename_group;/* [unique,keepref,case(NETR_DELTA_RENAME_GROUP)] */ + struct netr_DELTA_USER *user;/* [unique,keepref,case(NETR_DELTA_USER)] */ + struct netr_DELTA_RENAME *rename_user;/* [unique,keepref,case(NETR_DELTA_RENAME_USER)] */ + struct netr_DELTA_GROUP_MEMBER *group_member;/* [unique,keepref,case(NETR_DELTA_GROUP_MEMBER)] */ + struct netr_DELTA_ALIAS *alias;/* [unique,keepref,case(NETR_DELTA_ALIAS)] */ + struct netr_DELTA_RENAME *rename_alias;/* [unique,keepref,case(NETR_DELTA_RENAME_ALIAS)] */ + struct netr_DELTA_ALIAS_MEMBER *alias_member;/* [unique,keepref,case(NETR_DELTA_ALIAS_MEMBER)] */ + struct netr_DELTA_POLICY *policy;/* [unique,keepref,case(NETR_DELTA_POLICY)] */ + struct netr_DELTA_TRUSTED_DOMAIN *trusted_domain;/* [unique,keepref,case(NETR_DELTA_TRUSTED_DOMAIN)] */ + struct netr_DELTA_DELETE_TRUST delete_trust;/* [keepref,case(NETR_DELTA_DELETE_TRUST)] */ + struct netr_DELTA_ACCOUNT *account;/* [unique,keepref,case(NETR_DELTA_ACCOUNT)] */ + struct netr_DELTA_DELETE_ACCOUNT delete_account;/* [keepref,case(NETR_DELTA_DELETE_ACCOUNT)] */ + struct netr_DELTA_SECRET *secret;/* [unique,keepref,case(NETR_DELTA_SECRET)] */ + struct netr_DELTA_DELETE_SECRET delete_secret;/* [keepref,case(NETR_DELTA_DELETE_SECRET)] */ + struct netr_DELTA_DELETE_USER *delete_group;/* [unique,keepref,case(NETR_DELTA_DELETE_GROUP2)] */ + struct netr_DELTA_DELETE_USER *delete_user;/* [unique,keepref,case(NETR_DELTA_DELETE_USER2)] */ + uint64_t *modified_count;/* [unique,keepref,case(NETR_DELTA_MODIFY_COUNT)] */ +}/* [switch_type(netr_DeltaEnum)] */; + +union netr_DELTA_ID_UNION { + uint32_t rid;/* [keepref,case(NETR_DELTA_DOMAIN)] */ + struct dom_sid2 *sid;/* [unique,keepref,case(NETR_DELTA_POLICY)] */ + const char *name;/* [unique,keepref,charset(UTF16),case(NETR_DELTA_SECRET)] */ +}/* [switch_type(netr_DeltaEnum)] */; + +struct netr_DELTA_ENUM { + enum netr_DeltaEnum delta_type;/* [keepref] */ + union netr_DELTA_ID_UNION delta_id_union;/* [keepref,switch_is(delta_type)] */ + union netr_DELTA_UNION delta_union;/* [keepref,switch_is(delta_type)] */ +}; + +struct netr_DELTA_ENUM_ARRAY { + uint32_t num_deltas;/* [keepref] */ + struct netr_DELTA_ENUM *delta_enum;/* [unique,keepref,size_is(num_deltas)] */ +}; + +struct netr_UAS_INFO_0 { + uint8_t computer_name[16];/* [keepref] */ + uint32_t timecreated;/* [keepref] */ + uint32_t serial_number;/* [keepref] */ +}/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */; + +struct netr_AccountBuffer { + DATA_BLOB blob;/* [keepref,flag(LIBNDR_FLAG_REMAINING)] */ +}; + +struct netr_NETLOGON_INFO_1 { + uint32_t flags;/* [keepref] */ + uint32_t pdc_connection_status;/* [keepref] */ +}; + +struct netr_NETLOGON_INFO_2 { + uint32_t flags;/* [keepref] */ + uint32_t pdc_connection_status;/* [keepref] */ + const char *trusted_dc_name;/* [keepref,charset(UTF16)] */ + uint32_t tc_connection_status;/* [keepref] */ +}; + +struct netr_NETLOGON_INFO_3 { + uint32_t flags;/* [keepref] */ + uint32_t logon_attempts;/* [keepref] */ + uint32_t unknown1;/* [keepref] */ + uint32_t unknown2;/* [keepref] */ + uint32_t unknown3;/* [keepref] */ + uint32_t unknown4;/* [keepref] */ + uint32_t unknown5;/* [keepref] */ +}; + +union netr_CONTROL_QUERY_INFORMATION { + struct netr_NETLOGON_INFO_1 *info1;/* [unique,keepref,case] */ + struct netr_NETLOGON_INFO_2 *info2;/* [unique,keepref,case(2)] */ + struct netr_NETLOGON_INFO_3 *info3;/* [unique,keepref,case(3)] */ +}; + +enum netr_LogonControlCode { + NETLOGON_CONTROL_REDISCOVER=5, + NETLOGON_CONTROL_TC_QUERY=6, + NETLOGON_CONTROL_TRANSPORT_NOTIFY=7, + NETLOGON_CONTROL_SET_DBFLAG=65534 +}; + +union netr_CONTROL_DATA_INFORMATION { + const char *domain;/* [unique,keepref,charset(UTF16),case(NETLOGON_CONTROL_REDISCOVER)] */ + uint32_t debug_level;/* [keepref,case(NETLOGON_CONTROL_SET_DBFLAG)] */ +}; + +struct netr_DsRGetDCNameInfo { + const char *dc_unc;/* [unique,keepref,charset(UTF16)] */ + const char *dc_address;/* [unique,keepref,charset(UTF16)] */ + int32_t dc_address_type;/* [keepref] */ + struct GUID domain_guid;/* [keepref] */ + const char *domain_name;/* [unique,keepref,charset(UTF16)] */ + const char *forest_name;/* [unique,keepref,charset(UTF16)] */ + uint32_t dc_flags;/* [keepref] */ + const char *dc_site_name;/* [unique,keepref,charset(UTF16)] */ + const char *client_site_name;/* [unique,keepref,charset(UTF16)] */ +}; + +struct netr_Blob { + uint32_t length;/* [keepref] */ + uint8_t *data;/* [unique,keepref,size_is(length)] */ +}; + +struct netr_BinaryString { + uint16_t length;/* [keepref] */ + uint16_t size;/* [keepref] */ + uint16_t *data;/* [unique,keepref,length_is(length/2),size_is(size/2)] */ +}/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */; + +struct netr_DomainQuery1 { + struct netr_Blob blob;/* [keepref] */ + const char *workstation_domain;/* [unique,keepref,charset(UTF16)] */ + const char *workstation_site;/* [unique,keepref,charset(UTF16)] */ + const char *unknown1;/* [unique,keepref,charset(UTF16)] */ + const char *unknown2;/* [unique,keepref,charset(UTF16)] */ + const char *unknown3;/* [unique,keepref,charset(UTF16)] */ + const char *unknown4;/* [unique,keepref,charset(UTF16)] */ + struct netr_BinaryString blob2;/* [keepref] */ + struct lsa_String product;/* [keepref] */ + struct lsa_String unknown5;/* [keepref] */ + struct lsa_String unknown6;/* [keepref] */ + uint32_t unknown7[4];/* [keepref] */ +}; + +union netr_DomainQuery { + struct netr_DomainQuery1 *query1;/* [unique,keepref,case] */ +}; + +struct netr_DomainTrustInfo { + struct lsa_String domainname;/* [keepref] */ + struct lsa_String fulldomainname;/* [keepref] */ + struct lsa_String forest;/* [keepref] */ + struct GUID guid;/* [keepref] */ + struct dom_sid2 *sid;/* [unique,keepref] */ + struct netr_BinaryString unknown1[4];/* [keepref] */ + uint32_t unknown[4];/* [keepref] */ +}; + +struct netr_DomainInfo1 { + struct netr_DomainTrustInfo domaininfo;/* [keepref] */ + uint32_t num_trusts;/* [keepref] */ + struct netr_DomainTrustInfo *trusts;/* [unique,keepref,size_is(num_trusts)] */ + uint32_t unknown[14];/* [keepref] */ +}; + +union netr_DomainInfo { + struct netr_DomainInfo1 *info1;/* [unique,keepref,case] */ +}; + +struct netr_CryptPassword { + uint8_t data[512];/* [keepref] */ + uint32_t length;/* [keepref] */ +}/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */; + +/* bitmap netr_TrustFlags */ +#define NETR_TRUST_FLAG_IN_FOREST ( 0x00000001 ) +#define NETR_TRUST_FLAG_OUTBOUND ( 0x00000002 ) +#define NETR_TRUST_FLAG_TREEROOT ( 0x00000004 ) +#define NETR_TRUST_FLAG_PRIMARY ( 0x00000008 ) +#define NETR_TRUST_FLAG_NATIVE ( 0x00000010 ) +#define NETR_TRUST_FLAG_INBOUND ( 0x00000020 ) + +enum netr_TrustType { + NETR_TRUST_TYPE_DOWNLEVEL=1, + NETR_TRUST_TYPE_UPLEVEL=2, + NETR_TRUST_TYPE_MIT=3, + NETR_TRUST_TYPE_DCE=4 +}; + +/* bitmap netr_TrustAttributes */ +#define NETR_TRUST_ATTRIBUTE_NON_TRANSITIVE ( 0x00000001 ) +#define NETR_TRUST_ATTRIBUTE_UPLEVEL_ONLY ( 0x00000002 ) +#define NETR_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN ( 0x00000004 ) +#define NETR_TRUST_ATTRIBUTE_FOREST_TRANSITIVE ( 0x00000008 ) +#define NETR_TRUST_ATTRIBUTE_CROSS_ORGANIZATION ( 0x00000010 ) +#define NETR_TRUST_ATTRIBUTE_WITHIN_FOREST ( 0x00000020 ) +#define NETR_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL ( 0x00000040 ) + +struct netr_DomainTrust { + const char *netbios_name;/* [unique,keepref,charset(UTF16)] */ + const char *dns_name;/* [unique,keepref,charset(UTF16)] */ + uint32_t trust_flags;/* [keepref] */ + uint32_t parent_index;/* [keepref] */ + enum netr_TrustType trust_type;/* [keepref] */ + uint32_t trust_attributes;/* [keepref] */ + struct dom_sid2 *sid;/* [unique,keepref] */ + struct GUID guid;/* [keepref] */ +}; + + +struct netr_LogonUasLogon { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *account_name;/* [keepref,charset(UTF16)] */ + const char *workstation;/* [keepref,charset(UTF16)] */ + } in; + + struct { + struct netr_UasInfo *info;/* [unique,keepref] */ + WERROR result; + } out; + +}; + + +struct netr_LogonUasLogoff { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *account_name;/* [keepref,charset(UTF16)] */ + const char *workstation;/* [keepref,charset(UTF16)] */ + } in; + + struct { + struct netr_UasLogoffInfo *info;/* [keepref,ref] */ + WERROR result; + } out; + +}; + + +struct netr_LogonSamLogon { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *computer_name;/* [unique,keepref,charset(UTF16)] */ + struct netr_Authenticator *credential;/* [unique,keepref] */ + struct netr_Authenticator *return_authenticator;/* [unique,keepref] */ + uint16_t logon_level;/* [keepref] */ + union netr_LogonLevel logon;/* [keepref,switch_is(logon_level)] */ + uint16_t validation_level;/* [keepref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [unique,keepref] */ + union netr_Validation *validation;/* [keepref,ref,switch_is(validation_level)] */ + uint8_t *authoritative;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_LogonSamLogoff { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *computer_name;/* [unique,keepref,charset(UTF16)] */ + struct netr_Authenticator *credential;/* [unique,keepref] */ + struct netr_Authenticator *return_authenticator;/* [unique,keepref] */ + uint16_t logon_level;/* [keepref] */ + union netr_LogonLevel logon;/* [keepref,switch_is(logon_level)] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [unique,keepref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_ServerReqChallenge { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *computer_name;/* [keepref,charset(UTF16)] */ + struct netr_Credential *credentials;/* [keepref,ref] */ + } in; + + struct { + struct netr_Credential *credentials;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_ServerAuthenticate { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *account_name;/* [keepref,charset(UTF16)] */ + enum netr_SchannelType secure_channel_type;/* [keepref] */ + const char *computer_name;/* [keepref,charset(UTF16)] */ + struct netr_Credential *credentials;/* [keepref,ref] */ + } in; + + struct { + struct netr_Credential *credentials;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_ServerPasswordSet { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *account_name;/* [keepref,charset(UTF16)] */ + enum netr_SchannelType secure_channel_type;/* [keepref] */ + const char *computer_name;/* [keepref,charset(UTF16)] */ + struct netr_Authenticator credential;/* [keepref] */ + struct samr_Password new_password;/* [keepref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_DatabaseDeltas { + struct { + const char *logon_server;/* [keepref,charset(UTF16)] */ + const char *computername;/* [keepref,charset(UTF16)] */ + struct netr_Authenticator credential;/* [keepref] */ + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + enum netr_SamDatabaseID database_id;/* [keepref] */ + uint64_t *sequence_num;/* [keepref,ref] */ + uint32_t preferredmaximumlength;/* [keepref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + uint64_t *sequence_num;/* [keepref,ref] */ + struct netr_DELTA_ENUM_ARRAY *delta_enum_array;/* [unique,keepref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_DatabaseSync { + struct { + const char *logon_server;/* [keepref,charset(UTF16)] */ + const char *computername;/* [keepref,charset(UTF16)] */ + struct netr_Authenticator credential;/* [keepref] */ + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + enum netr_SamDatabaseID database_id;/* [keepref] */ + uint32_t *sync_context;/* [keepref,ref] */ + uint32_t preferredmaximumlength;/* [keepref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + uint32_t *sync_context;/* [keepref,ref] */ + struct netr_DELTA_ENUM_ARRAY *delta_enum_array;/* [unique,keepref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_AccountDeltas { + struct { + const char *logon_server;/* [unique,keepref,charset(UTF16)] */ + const char *computername;/* [keepref,charset(UTF16)] */ + struct netr_Authenticator credential;/* [keepref] */ + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + struct netr_UAS_INFO_0 uas;/* [keepref] */ + uint32_t count;/* [keepref] */ + uint32_t level;/* [keepref] */ + uint32_t buffersize;/* [keepref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + struct netr_AccountBuffer *buffer;/* [keepref,ref,subcontext(4)] */ + uint32_t *count_returned;/* [keepref,ref] */ + uint32_t *total_entries;/* [keepref,ref] */ + struct netr_UAS_INFO_0 *recordid;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_AccountSync { + struct { + const char *logon_server;/* [unique,keepref,charset(UTF16)] */ + const char *computername;/* [keepref,charset(UTF16)] */ + struct netr_Authenticator credential;/* [keepref] */ + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + uint32_t reference;/* [keepref] */ + uint32_t level;/* [keepref] */ + uint32_t buffersize;/* [keepref] */ + struct netr_UAS_INFO_0 *recordid;/* [keepref,ref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + struct netr_AccountBuffer *buffer;/* [keepref,ref,subcontext(4)] */ + uint32_t *count_returned;/* [keepref,ref] */ + uint32_t *total_entries;/* [keepref,ref] */ + uint32_t *next_reference;/* [keepref,ref] */ + struct netr_UAS_INFO_0 *recordid;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_GetDcName { + struct { + const char *logon_server;/* [keepref,charset(UTF16)] */ + const char *domainname;/* [unique,keepref,charset(UTF16)] */ + } in; + + struct { + const char **dcname;/* [keepref,ref,charset(UTF16)] */ + NTSTATUS result; + } out; + +}; + + +struct netr_LogonControl { + struct { + const char *logon_server;/* [unique,keepref,charset(UTF16)] */ + enum netr_LogonControlCode function_code;/* [keepref] */ + uint32_t level;/* [keepref] */ + } in; + + struct { + union netr_CONTROL_QUERY_INFORMATION *info;/* [keepref,ref,switch_is(level)] */ + WERROR result; + } out; + +}; + + +struct netr_GetAnyDCName { + struct { + const char *logon_server;/* [unique,keepref,charset(UTF16)] */ + const char *domainname;/* [unique,keepref,charset(UTF16)] */ + } in; + + struct { + const char **dcname;/* [keepref,ref,charset(UTF16)] */ + WERROR result; + } out; + +}; + + +struct netr_LogonControl2 { + struct { + const char *logon_server;/* [unique,keepref,charset(UTF16)] */ + uint32_t function_code;/* [keepref] */ + uint32_t level;/* [keepref] */ + union netr_CONTROL_DATA_INFORMATION data;/* [keepref,switch_is(function_code)] */ + } in; + + struct { + union netr_CONTROL_QUERY_INFORMATION *query;/* [keepref,ref,switch_is(level)] */ + WERROR result; + } out; + +}; + + +struct netr_ServerAuthenticate2 { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *account_name;/* [keepref,charset(UTF16)] */ + enum netr_SchannelType secure_channel_type;/* [keepref] */ + const char *computer_name;/* [keepref,charset(UTF16)] */ + struct netr_Credential *credentials;/* [keepref,ref] */ + uint32_t *negotiate_flags;/* [keepref,ref] */ + } in; + + struct { + struct netr_Credential *credentials;/* [keepref,ref] */ + uint32_t *negotiate_flags;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_DatabaseSync2 { + struct { + const char *logon_server;/* [keepref,charset(UTF16)] */ + const char *computername;/* [keepref,charset(UTF16)] */ + struct netr_Authenticator credential;/* [keepref] */ + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + enum netr_SamDatabaseID database_id;/* [keepref] */ + uint16_t restart_state;/* [keepref] */ + uint32_t *sync_context;/* [keepref,ref] */ + uint32_t preferredmaximumlength;/* [keepref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + uint32_t *sync_context;/* [keepref,ref] */ + struct netr_DELTA_ENUM_ARRAY *delta_enum_array;/* [unique,keepref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_DatabaseRedo { + struct { + const char *logon_server;/* [keepref,charset(UTF16)] */ + const char *computername;/* [keepref,charset(UTF16)] */ + struct netr_Authenticator credential;/* [keepref] */ + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + uint8_t *change_log_entry;/* [unique,keepref,size_is(change_log_entry_size)] */ + uint32_t change_log_entry_size;/* [keepref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + struct netr_DELTA_ENUM_ARRAY *delta_enum_array;/* [unique,keepref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_LogonControl2Ex { + struct { + const char *logon_server;/* [unique,keepref,charset(UTF16)] */ + uint32_t function_code;/* [keepref] */ + uint32_t level;/* [keepref] */ + union netr_CONTROL_DATA_INFORMATION data;/* [keepref,switch_is(function_code)] */ + } in; + + struct { + union netr_CONTROL_QUERY_INFORMATION *query;/* [keepref,ref,switch_is(level)] */ + WERROR result; + } out; + +}; + + +struct netr_NETRENUMERATETRUSTEDDOMAINS { + struct { + WERROR result; + } out; + +}; + + +struct netr_DsRGetDCName { + struct { + const char *server_unc;/* [unique,keepref,charset(UTF16)] */ + const char *domain_name;/* [unique,keepref,charset(UTF16)] */ + struct GUID *domain_guid;/* [unique,keepref] */ + struct GUID *site_guid;/* [unique,keepref] */ + uint32_t flags;/* [keepref] */ + } in; + + struct { + struct netr_DsRGetDCNameInfo *info;/* [unique,keepref] */ + WERROR result; + } out; + +}; + + +struct netr_NETRLOGONDUMMYROUTINE1 { + struct { + WERROR result; + } out; + +}; + + +struct netr_NETRLOGONSETSERVICEBITS { + struct { + WERROR result; + } out; + +}; + + +struct netr_NETRLOGONGETTRUSTRID { + struct { + WERROR result; + } out; + +}; + + +struct netr_NETRLOGONCOMPUTESERVERDIGEST { + struct { + WERROR result; + } out; + +}; + + +struct netr_NETRLOGONCOMPUTECLIENTDIGEST { + struct { + WERROR result; + } out; + +}; + + +struct netr_ServerAuthenticate3 { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *account_name;/* [keepref,charset(UTF16)] */ + enum netr_SchannelType secure_channel_type;/* [keepref] */ + const char *computer_name;/* [keepref,charset(UTF16)] */ + struct netr_Credential *credentials;/* [keepref,ref] */ + uint32_t *negotiate_flags;/* [keepref,ref] */ + } in; + + struct { + struct netr_Credential *credentials;/* [keepref,ref] */ + uint32_t *negotiate_flags;/* [keepref,ref] */ + uint32_t *rid;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_DsRGetDCNameEx { + struct { + const char *server_unc;/* [unique,keepref,charset(UTF16)] */ + const char *domain_name;/* [unique,keepref,charset(UTF16)] */ + struct GUID *domain_guid;/* [unique,keepref] */ + const char *site_name;/* [unique,keepref,charset(UTF16)] */ + uint32_t flags;/* [keepref] */ + } in; + + struct { + struct netr_DsRGetDCNameInfo *info;/* [unique,keepref] */ + WERROR result; + } out; + +}; + + +struct netr_DsRGetSiteName { + struct { + const char *computer_name;/* [unique,keepref,charset(UTF16)] */ + } in; + + struct { + const char **site;/* [keepref,ref,charset(UTF16)] */ + WERROR result; + } out; + +}; + + +struct netr_LogonGetDomainInfo { + struct { + const char *server_name;/* [keepref,charset(UTF16)] */ + const char *computer_name;/* [unique,keepref,charset(UTF16)] */ + struct netr_Authenticator *credential;/* [keepref,ref] */ + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + uint32_t level;/* [keepref] */ + union netr_DomainQuery query;/* [keepref,switch_is(level)] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + union netr_DomainInfo *info;/* [keepref,ref,switch_is(level)] */ + NTSTATUS result; + } out; + +}; + + +struct netr_ServerPasswordSet2 { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *account_name;/* [keepref,charset(UTF16)] */ + enum netr_SchannelType secure_channel_type;/* [keepref] */ + const char *computer_name;/* [keepref,charset(UTF16)] */ + struct netr_Authenticator credential;/* [keepref] */ + struct netr_CryptPassword new_password;/* [keepref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_NETRSERVERPASSWORDGET { + struct { + WERROR result; + } out; + +}; + + +struct netr_NETRLOGONSENDTOSAM { + struct { + WERROR result; + } out; + +}; + + +struct netr_DSRADDRESSTOSITENAMESW { + struct { + WERROR result; + } out; + +}; + + +struct netr_DsRGetDCNameEx2 { + struct { + const char *server_unc;/* [unique,keepref,charset(UTF16)] */ + const char *client_account;/* [unique,keepref,charset(UTF16)] */ + uint32_t mask;/* [keepref] */ + const char *domain_name;/* [unique,keepref,charset(UTF16)] */ + struct GUID *domain_guid;/* [unique,keepref] */ + const char *site_name;/* [unique,keepref,charset(UTF16)] */ + uint32_t flags;/* [keepref] */ + } in; + + struct { + struct netr_DsRGetDCNameInfo *info;/* [unique,keepref] */ + WERROR result; + } out; + +}; + + +struct netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN { + struct { + WERROR result; + } out; + +}; + + +struct netr_NETRENUMERATETRUSTEDDOMAINSEX { + struct { + WERROR result; + } out; + +}; + + +struct netr_DSRADDRESSTOSITENAMESEXW { + struct { + WERROR result; + } out; + +}; + + +struct netr_DSRGETDCSITECOVERAGEW { + struct { + WERROR result; + } out; + +}; + + +struct netr_LogonSamLogonEx { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *computer_name;/* [unique,keepref,charset(UTF16)] */ + uint16_t logon_level;/* [keepref] */ + union netr_LogonLevel logon;/* [keepref,switch_is(logon_level)] */ + uint16_t validation_level;/* [keepref] */ + uint32_t *flags;/* [keepref,ref] */ + } in; + + struct { + union netr_Validation *validation;/* [keepref,ref,switch_is(validation_level)] */ + uint8_t *authoritative;/* [keepref,ref] */ + uint32_t *flags;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_DsrEnumerateDomainTrusts { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + uint32_t trust_flags;/* [keepref] */ + } in; + + struct { + uint32_t *count;/* [keepref,ref] */ + struct netr_DomainTrust **trusts;/* [keepref,ref,size_is(count)] */ + WERROR result; + } out; + +}; + + +struct netr_DSRDEREGISTERDNSHOSTRECORDS { + struct { + WERROR result; + } out; + +}; + + +struct netr_NETRSERVERTRUSTPASSWORDSGET { + struct { + WERROR result; + } out; + +}; + + +struct netr_DSRGETFORESTTRUSTINFORMATION { + struct { + WERROR result; + } out; + +}; + + +struct netr_NETRGETFORESTTRUSTINFORMATION { + struct { + WERROR result; + } out; + +}; + + +struct netr_LogonSamLogonWithFlags { + struct { + const char *server_name;/* [unique,keepref,charset(UTF16)] */ + const char *computer_name;/* [unique,keepref,charset(UTF16)] */ + struct netr_Authenticator *credential;/* [unique,keepref] */ + struct netr_Authenticator *return_authenticator;/* [unique,keepref] */ + uint16_t logon_level;/* [keepref] */ + union netr_LogonLevel logon;/* [keepref,switch_is(logon_level)] */ + uint16_t validation_level;/* [keepref] */ + uint32_t *flags;/* [keepref,ref] */ + } in; + + struct { + struct netr_Authenticator *return_authenticator;/* [unique,keepref] */ + union netr_Validation *validation;/* [keepref,ref,switch_is(validation_level)] */ + uint8_t *authoritative;/* [keepref,ref] */ + uint32_t *flags;/* [keepref,ref] */ + NTSTATUS result; + } out; + +}; + + +struct netr_NETRSERVERGETTRUSTINFO { + struct { + WERROR result; + } out; + +}; + +#endif /* _HEADER_netlogon */ |