#ifndef _HEADER_netlogon
#define _HEADER_netlogon
-#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 )
#define DS_GFTI_UPDATE_TDO ( 0x1 )
-;
-
struct netr_UasInfo {
const char *account_name;/* [unique,charset(UTF16)] */
uint32_t priv;
uint16_t *bindata;/* [unique,length_is(length/2),size_is(size/2)] */
};
+/* bitmap netr_LogonParameterControl */
+#define MSV1_0_CLEARTEXT_PASSWORD_ALLOWED ( 0x00000002 )
+#define MSV1_0_UPDATE_LOGON_STATISTICS ( 0x00000004 )
+#define MSV1_0_RETURN_USER_PARAMETERS ( 0x00000008 )
+#define MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT ( 0x00000020 )
+#define MSV1_0_RETURN_PROFILE_PATH ( 0x00000200 )
+#define MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT ( 0x00000800 )
+
struct netr_IdentityInfo {
struct lsa_String domain_name;
uint32_t parameter_control;
struct netr_NetworkInfo *network;/* [unique,case(2)] */
}/* [public,switch_type(uint16)] */;
-struct netr_GroupMembership {
- uint32_t rid;
- uint32_t attributes;
-}/* [public] */;
-
struct netr_UserSessionKey {
uint8_t key[16];
}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
#define NETLOGON_PROFILE_PATH_RETURNED ( 0x00000400 )
#define NETLOGON_GRACE_LOGON ( 0x01000000 )
-;
-
struct netr_SamBaseInfo {
NTTIME last_logon;
NTTIME last_logoff;
struct netr_SidAttr {
struct dom_sid2 *sid;/* [unique] */
- uint32_t attribute;
+ uint32_t attributes;
};
struct netr_SamInfo3 {
struct netr_NETLOGON_INFO_2 {
uint32_t flags;
uint32_t pdc_connection_status;
- const char *trusted_dc_name;/* [charset(UTF16)] */
+ const char *trusted_dc_name;/* [unique,charset(UTF16)] */
uint32_t tc_connection_status;
};
enum netr_LogonControlCode
#ifndef USE_UINT_ENUMS
{
+ NETLOGON_CONTROL_SYNC=2,
NETLOGON_CONTROL_REDISCOVER=5,
NETLOGON_CONTROL_TC_QUERY=6,
NETLOGON_CONTROL_TRANSPORT_NOTIFY=7,
}
#else
{ __donnot_use_enum_netr_LogonControlCode=0x7FFFFFFF}
+#define NETLOGON_CONTROL_SYNC ( 2 )
#define NETLOGON_CONTROL_REDISCOVER ( 5 )
#define NETLOGON_CONTROL_TC_QUERY ( 6 )
#define NETLOGON_CONTROL_TRANSPORT_NOTIFY ( 7 )
#define DS_ONLY_LDAP_NEEDED ( 0x00008000 )
#define DS_IS_FLAT_NAME ( 0x00010000 )
#define DS_IS_DNS_NAME ( 0x00020000 )
+#define DS_TRY_NEXTCLOSEST_SITE ( 0x00040000 )
+#define DS_DIRECTORY_SERVICE_6_REQUIRED ( 0x00080000 )
#define DS_RETURN_DNS_NAME ( 0x40000000 )
#define DS_RETURN_FLAT_NAME ( 0x80000000 )
-;
-
enum netr_DsRGetDCNameInfo_AddressType
#ifndef USE_UINT_ENUMS
{
#define DS_SERVER_WRITABLE ( 0x00000100 )
#define DS_SERVER_GOOD_TIMESERV ( 0x00000200 )
#define DS_SERVER_NDNC ( 0x00000400 )
+#define DS_SERVER_SELECT_SECRET_DOMAIN_6 ( 0x00000800 )
+#define DS_SERVER_FULL_SECRET_DOMAIN_6 ( 0x00001000 )
#define DS_DNS_CONTROLLER ( 0x20000000 )
#define DS_DNS_DOMAIN ( 0x40000000 )
#define DS_DNS_FOREST ( 0x80000000 )
-;
-
struct netr_DsRGetDCNameInfo {
const char *dc_unc;/* [unique,charset(UTF16)] */
const char *dc_address;/* [unique,charset(UTF16)] */
#define NETR_TRUST_FLAG_NATIVE ( 0x00000010 )
#define NETR_TRUST_FLAG_INBOUND ( 0x00000020 )
-;
-
enum netr_TrustType
#ifndef USE_UINT_ENUMS
{
#define NETR_TRUST_ATTRIBUTE_WITHIN_FOREST ( 0x00000020 )
#define NETR_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL ( 0x00000040 )
-;
-
struct netr_DomainTrust {
const char *netbios_name;/* [unique,charset(UTF16)] */
const char *dns_name;/* [unique,charset(UTF16)] */
const char *computer_name;/* [unique,charset(UTF16)] */
struct netr_Authenticator *credential;/* [unique] */
uint16_t logon_level;
- union netr_LogonLevel logon;/* [switch_is(logon_level)] */
+ union netr_LogonLevel *logon;/* [ref,switch_is(logon_level)] */
uint16_t validation_level;
struct netr_Authenticator *return_authenticator;/* [unique] */
} in;
} in;
struct {
- struct netr_Credential *credentials;/* [ref] */
+ struct netr_Credential *return_credentials;/* [ref] */
NTSTATUS result;
} out;
} in;
struct {
- struct netr_Credential *credentials;/* [ref] */
+ struct netr_Credential *return_credentials;/* [ref] */
NTSTATUS result;
} out;
const char *account_name;/* [charset(UTF16)] */
enum netr_SchannelType secure_channel_type;
const char *computer_name;/* [charset(UTF16)] */
- struct netr_Authenticator credential;
- struct samr_Password new_password;
+ struct netr_Authenticator *credential;/* [ref] */
+ struct samr_Password *new_password;/* [ref] */
} in;
struct {
struct {
const char *logon_server;/* [charset(UTF16)] */
const char *computername;/* [charset(UTF16)] */
- struct netr_Authenticator credential;
+ struct netr_Authenticator *credential;/* [ref] */
enum netr_SamDatabaseID database_id;
uint32_t preferredmaximumlength;
struct netr_Authenticator *return_authenticator;/* [ref] */
} in;
struct {
- struct netr_DELTA_ENUM_ARRAY *delta_enum_array;/* [ref] */
+ struct netr_DELTA_ENUM_ARRAY **delta_enum_array;/* [ref] */
struct netr_Authenticator *return_authenticator;/* [ref] */
uint64_t *sequence_num;/* [ref] */
NTSTATUS result;
struct {
const char **dcname;/* [ref,charset(UTF16)] */
- NTSTATUS result;
+ WERROR result;
} out;
};
const char *logon_server;/* [unique,charset(UTF16)] */
uint32_t function_code;
uint32_t level;
- union netr_CONTROL_DATA_INFORMATION data;/* [switch_is(function_code)] */
+ union netr_CONTROL_DATA_INFORMATION *data;/* [ref,switch_is(function_code)] */
} in;
struct {
} in;
struct {
- struct netr_Credential *credentials;/* [ref] */
+ struct netr_Credential *return_credentials;/* [ref] */
uint32_t *negotiate_flags;/* [ref] */
NTSTATUS result;
} out;
struct {
const char *logon_server;/* [charset(UTF16)] */
const char *computername;/* [charset(UTF16)] */
- struct netr_Authenticator credential;
+ struct netr_Authenticator *credential;/* [ref] */
enum netr_SamDatabaseID database_id;
uint16_t restart_state;
uint32_t preferredmaximumlength;
} in;
struct {
- struct netr_DELTA_ENUM_ARRAY *delta_enum_array;/* [ref] */
+ struct netr_DELTA_ENUM_ARRAY **delta_enum_array;/* [ref] */
struct netr_Authenticator *return_authenticator;/* [ref] */
uint32_t *sync_context;/* [ref] */
NTSTATUS result;
} in;
struct {
- struct netr_DsRGetDCNameInfo *info;/* [ref] */
+ struct netr_DsRGetDCNameInfo **info;/* [ref] */
WERROR result;
} out;
};
-struct netr_NETRLOGONGETTRUSTRID {
+struct netr_LogonGetTrustRid {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *domain_name;/* [unique,charset(UTF16)] */
+ } in;
+
struct {
+ uint32_t *rid;/* [ref] */
WERROR result;
} out;
} in;
struct {
- struct netr_DsRGetDCNameInfo *info;/* [ref] */
+ struct netr_DsRGetDCNameInfo **info;/* [ref] */
WERROR result;
} out;
struct netr_DsRAddressToSitenamesW {
struct {
const char *server_name;/* [unique,charset(UTF16)] */
- uint32_t count;/* [range(0 32000)] */
+ uint32_t count;/* [range(0,32000)] */
struct netr_DsRAddress *addresses;/* [ref,size_is(count)] */
} in;
} in;
struct {
- struct netr_DsRGetDCNameInfo *info;/* [ref] */
+ struct netr_DsRGetDCNameInfo **info;/* [ref] */
WERROR result;
} out;
struct netr_DsRAddressToSitenamesExW {
struct {
const char *server_name;/* [unique,charset(UTF16)] */
- uint32_t count;/* [range(0 32000)] */
+ uint32_t count;/* [range(0,32000)] */
struct netr_DsRAddress *addresses;/* [ref,size_is(count)] */
} in;
const char *server_name;/* [unique,charset(UTF16)] */
const char *computer_name;/* [unique,charset(UTF16)] */
uint16_t logon_level;
- union netr_LogonLevel logon;/* [switch_is(logon_level)] */
+ union netr_LogonLevel *logon;/* [ref,switch_is(logon_level)] */
uint16_t validation_level;
uint32_t *flags;/* [ref] */
} in;
} in;
struct {
- struct netr_DomainTrustList **trusts;/* [ref] */
+ struct netr_DomainTrustList *trusts;/* [ref] */
WERROR result;
} out;
};
-struct netr_DSRDEREGISTERDNSHOSTRECORDS {
+struct netr_DsrDeregisterDNSHostRecords {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *domain;/* [unique,charset(UTF16)] */
+ struct GUID *domain_guid;/* [unique] */
+ struct GUID *dsa_guid;/* [unique] */
+ const char *dns_host;/* [ref,charset(UTF16)] */
+ } in;
+
struct {
WERROR result;
} out;