#include "idl_types.h"
+cpp_quote("#define netr_DeltaEnum8Bit netr_DeltaEnum")
+cpp_quote("#define netr_SamDatabaseID8Bit netr_SamDatabaseID")
+
[
uuid("12345678-1234-abcd-ef00-01234567cffb"),
version(1.0),
endpoint("ncacn_np:[\\pipe\\netlogon]","ncacn_ip_tcp:","ncalrpc:"),
+ helper("../librpc/ndr/ndr_netlogon.h"),
pointer_default(unique)
]
{
typedef bitmap samr_AcctFlags samr_AcctFlags;
typedef bitmap samr_GroupAttrs samr_GroupAttrs;
+ typedef enum netr_DeltaEnum8Bit netr_DeltaEnum8Bit;
+ typedef enum netr_SamDatabaseID8Bit netr_SamDatabaseID8Bit;
/*****************/
/* Function 0x00 */
boolean8 lm_password_present;
boolean8 password_expired;
lsa_String comment;
- lsa_String parameters;
+ lsa_BinaryString parameters;
uint16 country_code;
uint16 code_page;
netr_USER_PRIVATE_INFO user_private_info;
[default];
} netr_ChangeLogObject;
- typedef [public] struct {
+ typedef [public,gensize] struct {
uint32 serial_number1;
uint32 serial_number2;
uint32 object_rid;
netr_ChangeLogFlags flags;
- uint8 db_index;
- uint8 delta_type;
+ netr_SamDatabaseID8Bit db_index;
+ netr_DeltaEnum8Bit delta_type;
[switch_is(flags & (NETR_CHANGELOG_SID_INCLUDED|NETR_CHANGELOG_NAME_INCLUDED))] netr_ChangeLogObject object;
} netr_ChangeLogEntry;
[in] [string,charset(UTF16)] uint16 computername[],
[in] netr_Authenticator *credential,
[in,out,ref] netr_Authenticator *return_authenticator,
- [in,ref][size_is(change_log_entry_size)] uint8 *change_log_entry,
- [in] uint32 change_log_entry_size,
+ [in] [subcontext(4),subcontext_size(change_log_entry_size)] netr_ChangeLogEntry change_log_entry,
+ [in] [value(ndr_size_netr_ChangeLogEntry(&change_log_entry, ndr->flags))] uint32 change_log_entry_size,
[out,ref] netr_DELTA_ENUM_ARRAY **delta_enum_array
);
/****************/
/* Function 0x2e */
- [todo] WERROR netr_NETRSERVERGETTRUSTINFO();
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] uint32 *data;
+ uint32 entry_count;
+ [size_is(count)] lsa_String *entries;
+ } netr_TrustInfo;
+
+ NTSTATUS netr_ServerGetTrustInfo(
+ [in,unique] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *account_name,
+ [in] netr_SchannelType secure_channel_type,
+ [in,ref] [string,charset(UTF16)] uint16 *computer_name,
+ [in,ref] netr_Authenticator *credential,
+ [out,ref] netr_Authenticator *return_authenticator,
+ [out,ref] samr_Password *new_owf_password,
+ [out,ref] samr_Password *old_owf_password,
+ [out,ref] netr_TrustInfo **trust_info
+ );
}