who contributed!
*/
-import "lsa.idl", "samr.idl", "security.idl", "nbt.idl";
+import "lsa.idl", "samr.idl", "security.idl";
#include "idl_types.h"
[in] [string,charset(UTF16)] uint16 *server_name,
[in] [string,charset(UTF16)] uint16 account_name[],
[in] [string,charset(UTF16)] uint16 workstation[],
- [out] netr_UasInfo *info
+ [out,ref] netr_UasInfo *info
);
[in] [string,charset(UTF16)] uint16 *server_name,
[in] [string,charset(UTF16)] uint16 account_name[],
[in] [string,charset(UTF16)] uint16 workstation[],
- [out] netr_UasLogoffInfo info
+ [out,ref] netr_UasLogoffInfo *info
);
[in] uint16 logon_level,
[in] [switch_is(logon_level)] netr_LogonLevel logon,
[in] uint16 validation_level,
- [out] [switch_is(validation_level)] netr_Validation validation,
- [out] uint8 authoritative
+ [out,ref] [switch_is(validation_level)] netr_Validation *validation,
+ [out,ref] uint8 *authoritative
);
/*****************/
/* Function 0x04 */
- [public] NTSTATUS netr_ServerReqChallenge(
+ NTSTATUS netr_ServerReqChallenge(
[in,string,charset(UTF16)] uint16 *server_name,
[in,string,charset(UTF16)] uint16 computer_name[],
[in,out,ref] netr_Credential *credentials
[in] [string,charset(UTF16)] uint16 computer_name[],
[in] netr_Authenticator credential,
[in] samr_Password new_password,
- [out] netr_Authenticator return_authenticator
+ [out,ref] netr_Authenticator *return_authenticator
);
[in] [string,charset(UTF16)] uint16 logon_server[],
[in] [string,charset(UTF16)] uint16 computername[],
[in] netr_Authenticator credential,
- [in,out] netr_Authenticator return_authenticator,
+ [in,out,ref] netr_Authenticator *return_authenticator,
[in] netr_SamDatabaseID database_id,
- [in,out] udlong sequence_num,
+ [in,out,ref] udlong *sequence_num,
[in] uint32 preferredmaximumlength,
- [out] netr_DELTA_ENUM_ARRAY *delta_enum_array
+ [out,ref] netr_DELTA_ENUM_ARRAY *delta_enum_array
);
[in] [string,charset(UTF16)] uint16 logon_server[],
[in] [string,charset(UTF16)] uint16 computername[],
[in] netr_Authenticator credential,
- [in,out] netr_Authenticator return_authenticator,
+ [in,out,ref] netr_Authenticator *return_authenticator,
[in] netr_SamDatabaseID database_id,
- [in,out] uint32 sync_context,
+ [in,out,ref] uint32 *sync_context,
[in] uint32 preferredmaximumlength,
- [out] netr_DELTA_ENUM_ARRAY *delta_enum_array
+ [out,ref] netr_DELTA_ENUM_ARRAY *delta_enum_array
);
[in] [string,charset(UTF16)] uint16 *logon_server,
[in] [string,charset(UTF16)] uint16 computername[],
[in] netr_Authenticator credential,
- [in,out] netr_Authenticator return_authenticator,
+ [in,out,ref] netr_Authenticator *return_authenticator,
[in] netr_UAS_INFO_0 uas,
[in] uint32 count,
[in] uint32 level,
[in] uint32 buffersize,
- [out,subcontext(4)] netr_AccountBuffer buffer,
- [out] uint32 count_returned,
- [out] uint32 total_entries,
- [out] netr_UAS_INFO_0 recordid
+ [out,ref,subcontext(4)] netr_AccountBuffer *buffer,
+ [out,ref] uint32 *count_returned,
+ [out,ref] uint32 *total_entries,
+ [out,ref] netr_UAS_INFO_0 *recordid
);
[in] [string,charset(UTF16)] uint16 *logon_server,
[in] [string,charset(UTF16)] uint16 computername[],
[in] netr_Authenticator credential,
- [in,out] netr_Authenticator return_authenticator,
+ [in,out,ref] netr_Authenticator *return_authenticator,
[in] uint32 reference,
[in] uint32 level,
[in] uint32 buffersize,
- [out,subcontext(4)] netr_AccountBuffer buffer,
- [out] uint32 count_returned,
- [out] uint32 total_entries,
- [out] uint32 next_reference,
- [in,out] netr_UAS_INFO_0 recordid
+ [out,ref,subcontext(4)] netr_AccountBuffer *buffer,
+ [out,ref] uint32 *count_returned,
+ [out,ref] uint32 *total_entries,
+ [out,ref] uint32 *next_reference,
+ [in,out,ref] netr_UAS_INFO_0 *recordid
);
/*****************/
/* Function 0x0B */
- WERROR netr_GetDcName(
+ NTSTATUS netr_GetDcName(
[in] [string,charset(UTF16)] uint16 logon_server[],
[in] [string,charset(UTF16)] uint16 *domainname,
- [out] [string,charset(UTF16)] uint16 *dcname
+ [out,ref] [string,charset(UTF16)] uint16 **dcname
);
/*****************/
[in] [string,charset(UTF16)] uint16 *logon_server,
[in] netr_LogonControlCode function_code,
[in] uint32 level,
- [out,switch_is(level)] netr_CONTROL_QUERY_INFORMATION info
+ [out,ref,switch_is(level)] netr_CONTROL_QUERY_INFORMATION *info
);
WERROR netr_GetAnyDCName(
[in] [string,charset(UTF16)] uint16 *logon_server,
[in] [string,charset(UTF16)] uint16 *domainname,
- [out] [string,charset(UTF16)] uint16 *dcname
+ [out,ref] [string,charset(UTF16)] uint16 **dcname
);
[in] uint32 function_code,
[in] uint32 level,
[in][switch_is(function_code)] netr_CONTROL_DATA_INFORMATION data,
- [out][switch_is(level)] netr_CONTROL_QUERY_INFORMATION query
+ [out,ref][switch_is(level)] netr_CONTROL_QUERY_INFORMATION *query
);
[in] [string,charset(UTF16)] uint16 logon_server[],
[in] [string,charset(UTF16)] uint16 computername[],
[in] netr_Authenticator credential,
- [in,out] netr_Authenticator return_authenticator,
+ [in,out,ref] netr_Authenticator *return_authenticator,
[in] netr_SamDatabaseID database_id,
[in] uint16 restart_state,
- [in,out] uint32 sync_context,
+ [in,out,ref] uint32 *sync_context,
[in] uint32 preferredmaximumlength,
- [out] netr_DELTA_ENUM_ARRAY *delta_enum_array
+ [out,ref] netr_DELTA_ENUM_ARRAY *delta_enum_array
);
[in] [string,charset(UTF16)] uint16 logon_server[],
[in] [string,charset(UTF16)] uint16 computername[],
[in] netr_Authenticator credential,
- [in,out] netr_Authenticator return_authenticator,
+ [in,out,ref] netr_Authenticator *return_authenticator,
[in][size_is(change_log_entry_size)] uint8 *change_log_entry,
[in] uint32 change_log_entry_size,
- [out] netr_DELTA_ENUM_ARRAY *delta_enum_array
+ [out,ref] netr_DELTA_ENUM_ARRAY *delta_enum_array
);
[in] uint32 function_code,
[in] uint32 level,
[in][switch_is(function_code)] netr_CONTROL_DATA_INFORMATION data,
- [out][switch_is(level)] netr_CONTROL_QUERY_INFORMATION query
+ [out,ref][switch_is(level)] netr_CONTROL_QUERY_INFORMATION *query
);
/*****************/
[in] GUID *domain_guid,
[in] GUID *site_guid,
[in] netr_DsRGetDCName_flags flags,
- [out] netr_DsRGetDCNameInfo *info
+ [out,ref] netr_DsRGetDCNameInfo *info
);
/*****************/
/****************/
/* Function 0x1a */
- [public] NTSTATUS netr_ServerAuthenticate3(
+ NTSTATUS netr_ServerAuthenticate3(
[in] [string,charset(UTF16)] uint16 *server_name,
[in] [string,charset(UTF16)] uint16 account_name[],
[in] netr_SchannelType secure_channel_type,
[in] GUID *domain_guid,
[in] [string,charset(UTF16)] uint16 *site_name,
[in] netr_DsRGetDCName_flags flags,
- [out] netr_DsRGetDCNameInfo *info
+ [out,ref] netr_DsRGetDCNameInfo *info
);
/****************/
/* Function 0x1c */
WERROR netr_DsRGetSiteName(
[in] [string,charset(UTF16)] uint16 *computer_name,
- [out] [string,charset(UTF16)] uint16 *site
+ [out,ref] [string,charset(UTF16)] uint16 **site
);
/****************/
[in,out,ref] netr_Authenticator *return_authenticator,
[in] uint32 level,
[in,switch_is(level)] netr_DomainQuery query,
- [out,switch_is(level)] netr_DomainInfo info
+ [out,ref,switch_is(level)] netr_DomainInfo *info
);
typedef [flag(NDR_PAHEX)] struct {
[in] [string,charset(UTF16)] uint16 computer_name[],
[in] netr_Authenticator credential,
[in] netr_CryptPassword new_password,
- [out] netr_Authenticator return_authenticator
+ [out,ref] netr_Authenticator *return_authenticator
);
/****************/
[in] GUID *domain_guid,
[in] [string,charset(UTF16)] uint16 *site_name,
[in] netr_DsRGetDCName_flags flags,
- [out] netr_DsRGetDCNameInfo *info
+ [out,ref] netr_DsRGetDCNameInfo *info
);
/****************/
WERROR netr_DsrGetDcSiteCoverageW(
[in] [string,charset(UTF16)] uint16 *server_name,
- [out] DcSitesCtr *ctr
+ [out,ref] DcSitesCtr *ctr
);
/****************/
[in] uint16 logon_level,
[in] [switch_is(logon_level)] netr_LogonLevel logon,
[in] uint16 validation_level,
- [out] [switch_is(validation_level)] netr_Validation validation,
- [out] uint8 authoritative,
- [in,out] uint32 flags
+ [out,ref] [switch_is(validation_level)] netr_Validation *validation,
+ [out,ref] uint8 *authoritative,
+ [in,out,ref] uint32 *flags
);
/****************/
WERROR netr_DsrEnumerateDomainTrusts(
[in] [string,charset(UTF16)] uint16 *server_name,
[in] netr_TrustFlags trust_flags,
- [out] uint32 count,
- [out,size_is(count)] netr_DomainTrust *trusts
+ [out,ref] netr_DomainTrustList **trusts
);
[in] uint16 logon_level,
[in] [switch_is(logon_level)] netr_LogonLevel logon,
[in] uint16 validation_level,
- [out] [switch_is(validation_level)] netr_Validation validation,
- [out] uint8 authoritative,
- [in,out] uint32 flags
+ [out,ref] [switch_is(validation_level)] netr_Validation *validation,
+ [out,ref] uint8 *authoritative,
+ [in,out,ref] uint32 *flags
);
/****************/
NTSTATUS samr_QuerySecurity (
[in,ref] policy_handle *handle,
[in] security_secinfo sec_info,
- [out] sec_desc_buf *sdbuf
+ [out,ref] sec_desc_buf *sdbuf
);
/******************/
NTSTATUS samr_LookupDomain (
[in,ref] policy_handle *connect_handle,
[in,ref] lsa_String *domain_name,
- [out] dom_sid2 *sid
+ [out,ref] dom_sid2 *sid
);
[in,ref] policy_handle *connect_handle,
[in,out,ref] uint32 *resume_handle,
[in] uint32 buf_size,
- [out] samr_SamArray *sam,
- [out] uint32 num_entries
+ [out,ref] samr_SamArray *sam,
+ [out,ref] uint32 *num_entries
);
NTSTATUS samr_QueryDomainInfo(
[in,ref] policy_handle *domain_handle,
[in] uint16 level,
- [out,switch_is(level)] samr_DomainInfo *info
+ [out,ref,switch_is(level)] samr_DomainInfo *info
);
/************************/
[in,ref] policy_handle *domain_handle,
[in,out,ref] uint32 *resume_handle,
[in] uint32 max_size,
- [out] samr_SamArray *sam,
- [out] uint32 num_entries
+ [out,ref] samr_SamArray *sam,
+ [out,ref] uint32 *num_entries
);
/************************/
[in,out,ref] uint32 *resume_handle,
[in] samr_AcctFlags acct_flags,
[in] uint32 max_size,
- [out] samr_SamArray *sam,
- [out] uint32 num_entries
+ [out,ref] samr_SamArray *sam,
+ [out,ref] uint32 *num_entries
);
/************************/
[in,ref] policy_handle *domain_handle,
[in,out,ref] uint32 *resume_handle,
[in] samr_AcctFlags acct_flags,
- [out] samr_SamArray *sam,
- [out] uint32 num_entries
+ [out,ref] samr_SamArray *sam,
+ [out,ref] uint32 *num_entries
);
/************************/
[in,ref] policy_handle *domain_handle,
[in,range(0,1000)] uint32 num_names,
[in,size_is(1000),length_is(num_names)] lsa_String names[],
- [out] samr_Ids rids,
- [out] samr_Ids types
+ [out,ref] samr_Ids *rids,
+ [out,ref] samr_Ids *types
);
[in,ref] policy_handle *domain_handle,
[in,range(0,1000)] uint32 num_rids,
[in,size_is(1000),length_is(num_rids)] uint32 rids[],
- [out] lsa_Strings names,
- [out] samr_Ids types
+ [out,ref] lsa_Strings *names,
+ [out,ref] samr_Ids *types
);
/************************/
NTSTATUS samr_QueryGroupInfo(
[in,ref] policy_handle *group_handle,
[in] samr_GroupInfoEnum level,
- [out,switch_is(level)] samr_GroupInfo *info
+ [out,ref,switch_is(level)] samr_GroupInfo *info
);
/************************/
NTSTATUS samr_QueryGroupMember(
[in,ref] policy_handle *group_handle,
- [out] samr_RidTypeArray *rids
+ [out,ref] samr_RidTypeArray *rids
);
NTSTATUS samr_QueryAliasInfo(
[in,ref] policy_handle *alias_handle,
[in] samr_AliasInfoEnum level,
- [out,switch_is(level)] samr_AliasInfo *info
+ [out,ref,switch_is(level)] samr_AliasInfo *info
);
/************************/
[public] NTSTATUS samr_QueryUserInfo(
[in,ref] policy_handle *user_handle,
[in] uint16 level,
- [out,switch_is(level)] samr_UserInfo *info
+ [out,ref,switch_is(level)] samr_UserInfo *info
);
NTSTATUS samr_GetGroupsForUser(
[in,ref] policy_handle *user_handle,
- [out] samr_RidWithAttributeArray *rids
+ [out,ref] samr_RidWithAttributeArray *rids
);
/************************/
[in] uint32 start_idx,
[in] uint32 max_entries,
[in] uint32 buf_size,
- [out] uint32 total_size,
- [out] uint32 returned_size,
- [out,switch_is(level)] samr_DispInfo info
+ [out,ref] uint32 *total_size,
+ [out,ref] uint32 *returned_size,
+ [out,ref,switch_is(level)] samr_DispInfo *info
);
[in,ref] policy_handle *domain_handle,
[in] uint16 level,
[in] lsa_String name,
- [out] uint32 idx
+ [out,ref] uint32 *idx
);
[public] NTSTATUS samr_GetUserPwInfo(
[in,ref] policy_handle *user_handle,
- [out] samr_PwInfo info
+ [out,ref] samr_PwInfo *info
);
/************************/
NTSTATUS samr_QueryDomainInfo2(
[in,ref] policy_handle *domain_handle,
[in] uint16 level,
- [out,switch_is(level)] samr_DomainInfo *info
+ [out,ref,switch_is(level)] samr_DomainInfo *info
);
/************************/
NTSTATUS samr_QueryUserInfo2(
[in,ref] policy_handle *user_handle,
[in] uint16 level,
- [out,switch_is(level)] samr_UserInfo *info
+ [out,ref,switch_is(level)] samr_UserInfo *info
);
/************************/
[in] uint32 start_idx,
[in] uint32 max_entries,
[in] uint32 buf_size,
- [out] uint32 total_size,
- [out] uint32 returned_size,
- [out,switch_is(level)] samr_DispInfo info
+ [out,ref] uint32 *total_size,
+ [out,ref] uint32 *returned_size,
+ [out,ref,switch_is(level)] samr_DispInfo *info
);
/************************/
[in,ref] policy_handle *domain_handle,
[in] uint16 level,
[in] lsa_String name,
- [out] uint32 idx
+ [out,ref] uint32 *idx
);
[in] uint32 start_idx,
[in] uint32 max_entries,
[in] uint32 buf_size,
- [out] uint32 total_size,
- [out] uint32 returned_size,
- [out,switch_is(level)] samr_DispInfo info
+ [out,ref] uint32 *total_size,
+ [out,ref] uint32 *returned_size,
+ [out,ref,switch_is(level)] samr_DispInfo *info
);
/************************/
/* Function 0x38 */
NTSTATUS samr_GetDomPwInfo(
[in] lsa_String *domain_name,
- [out] samr_PwInfo info
+ [out,ref] samr_PwInfo *info
);
/************************/
/* Function 0x3c */
NTSTATUS samr_GetBootKeyInformation(
[in,ref] policy_handle *domain_handle,
- [out] uint32 unknown
+ [out,ref] uint32 *unknown
);
/************************/
[in] samr_CryptPassword *lm_password,
[in] samr_Password *lm_verifier,
[in] samr_CryptPassword *password3,
- [out] samr_DomInfo1 *dominfo,
- [out] samr_ChangeReject *reject
+ [out,ref] samr_DomInfo1 *dominfo,
+ [out,ref] samr_ChangeReject *reject
);
/************************/
[public] NTSTATUS samr_Connect5(
[in,string,charset(UTF16)] uint16 *system_name,
[in] samr_ConnectAccessMask access_mask,
- [in,out] uint32 level,
- [in,out,switch_is(level),ref] samr_ConnectInfo *info,
+ [in] uint32 level_in,
+ [in,ref,switch_is(level_in)] samr_ConnectInfo *info_in,
+ [out,ref] uint32 *level_out,
+ [out,ref,switch_is(*level_out)] samr_ConnectInfo *info_out,
[out,ref] policy_handle *connect_handle
);
NTSTATUS samr_RidToSid(
[in,ref] policy_handle *domain_handle,
[in] uint32 rid,
- [out] dom_sid2 *sid
+ [out,ref] dom_sid2 *sid
);
NTSTATUS samr_ValidatePassword(
[in] samr_ValidatePasswordLevel level,
[in,switch_is(level)] samr_ValidatePasswordReq req,
- [out,switch_is(level)] samr_ValidatePasswordRep *rep
+ [out,ref,switch_is(level)] samr_ValidatePasswordRep *rep
);
}