Add samba3 [out,ref] pointer massage to samr&netlogon idl.
authorGünther Deschner <gd@samba.org>
Thu, 17 Jan 2008 08:49:10 +0000 (09:49 +0100)
committerGünther Deschner <gd@samba.org>
Thu, 17 Jan 2008 15:54:44 +0000 (16:54 +0100)
Guenther
(This used to be commit 8a895a37a0a0d155fddf0a6a124f161e3ace5e0b)

source3/librpc/idl/netlogon.idl
source3/librpc/idl/samr.idl

index dcbb647ba01ce55aba1ee28f8af3cf7b2525f5f5..c5d97c0d0f366a255e1c8acda04f2316536e48f2 100644 (file)
@@ -4,7 +4,7 @@
   who contributed!
 */
 
-import "lsa.idl", "samr.idl", "security.idl", "nbt.idl";
+import "lsa.idl", "samr.idl", "security.idl";
 
 #include "idl_types.h"
 
@@ -46,7 +46,7 @@ interface netlogon
                [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
                );
 
 
@@ -62,7 +62,7 @@ interface netlogon
                [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
                );
 
 
@@ -246,8 +246,8 @@ interface netlogon
                [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
                );
 
 
@@ -268,7 +268,7 @@ interface netlogon
        /*****************/
        /* 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
@@ -299,7 +299,7 @@ interface netlogon
                [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
                );
 
 
@@ -680,11 +680,11 @@ interface netlogon
                [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
                );
 
 
@@ -695,11 +695,11 @@ interface netlogon
                [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
                );
 
 
@@ -722,15 +722,15 @@ interface netlogon
                [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
                );
 
 
@@ -741,25 +741,25 @@ interface netlogon
                [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
                );
 
        /*****************/
@@ -805,7 +805,7 @@ interface netlogon
                [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
                );
 
 
@@ -815,7 +815,7 @@ interface netlogon
        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
                );
 
 
@@ -834,7 +834,7 @@ interface netlogon
                [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
                );
 
 
@@ -865,12 +865,12 @@ interface netlogon
                [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
                );
 
 
@@ -883,10 +883,10 @@ interface netlogon
                [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
                );
 
 
@@ -898,7 +898,7 @@ interface netlogon
                [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
                );
 
        /*****************/
@@ -978,7 +978,7 @@ interface netlogon
                [in] GUID *domain_guid,
                [in] GUID *site_guid,
                [in] netr_DsRGetDCName_flags flags,
-               [out] netr_DsRGetDCNameInfo *info
+               [out,ref] netr_DsRGetDCNameInfo *info
                );
 
        /*****************/
@@ -1003,7 +1003,7 @@ interface netlogon
 
        /****************/
        /* 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,
@@ -1022,14 +1022,14 @@ interface netlogon
                [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
                );
 
        /****************/
@@ -1090,7 +1090,7 @@ interface netlogon
                [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 {
@@ -1107,7 +1107,7 @@ interface netlogon
                [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
                );
 
        /****************/
@@ -1155,7 +1155,7 @@ interface netlogon
                [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
                );
 
        /****************/
@@ -1236,7 +1236,7 @@ interface netlogon
 
        WERROR netr_DsrGetDcSiteCoverageW(
                [in] [string,charset(UTF16)] uint16 *server_name,
-               [out] DcSitesCtr *ctr
+               [out,ref] DcSitesCtr *ctr
                );
 
        /****************/
@@ -1247,9 +1247,9 @@ interface netlogon
                [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
                );
 
        /****************/
@@ -1258,8 +1258,7 @@ interface netlogon
        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
                );
 
 
@@ -1315,9 +1314,9 @@ interface netlogon
                [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
                );
 
        /****************/
index b6d2b9f941e173280161b98fbdb255836e24f7ef..baf61c6df3fb4778523297255bf7b2cc8b4c0e19 100644 (file)
@@ -125,7 +125,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        NTSTATUS samr_QuerySecurity (
                [in,ref]          policy_handle *handle,
                [in]              security_secinfo sec_info,
-               [out]             sec_desc_buf *sdbuf
+               [out,ref]         sec_desc_buf *sdbuf
                );
 
        /******************/
@@ -143,7 +143,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        NTSTATUS samr_LookupDomain (
                [in,ref]  policy_handle *connect_handle,                
                [in,ref]  lsa_String *domain_name,
-               [out]     dom_sid2 *sid
+               [out,ref] dom_sid2 *sid
                );
 
 
@@ -164,8 +164,8 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
 
@@ -288,7 +288,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        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
                );
 
        /************************/
@@ -321,8 +321,8 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
        /************************/
@@ -349,8 +349,8 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
        /************************/
@@ -369,8 +369,8 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
        /************************/
@@ -394,8 +394,8 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
 
@@ -405,8 +405,8 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
        /************************/
@@ -466,7 +466,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        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
                );
 
        /************************/
@@ -509,7 +509,7 @@ import "misc.idl", "lsa.idl", "security.idl";
 
        NTSTATUS samr_QueryGroupMember(
                [in,ref]  policy_handle *group_handle,
-               [out]     samr_RidTypeArray *rids
+               [out,ref] samr_RidTypeArray *rids
                );
 
 
@@ -563,7 +563,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        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
                );
 
        /************************/
@@ -862,7 +862,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        [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
                );
 
 
@@ -913,7 +913,7 @@ import "misc.idl", "lsa.idl", "security.idl";
 
        NTSTATUS samr_GetGroupsForUser(
                [in,ref]   policy_handle *user_handle,
-               [out]      samr_RidWithAttributeArray  *rids
+               [out,ref]  samr_RidWithAttributeArray  *rids
                );
 
        /************************/
@@ -983,9 +983,9 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
 
@@ -1005,7 +1005,7 @@ import "misc.idl", "lsa.idl", "security.idl";
                [in,ref]    policy_handle *domain_handle,
                [in]        uint16 level,
                [in]        lsa_String name,
-               [out]       uint32 idx
+               [out,ref]   uint32 *idx
                );
 
 
@@ -1042,7 +1042,7 @@ import "misc.idl", "lsa.idl", "security.idl";
 
        [public] NTSTATUS samr_GetUserPwInfo(
                [in,ref]    policy_handle *user_handle,
-               [out]       samr_PwInfo info
+               [out,ref]   samr_PwInfo *info
                );
 
        /************************/
@@ -1061,7 +1061,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        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
                );
 
        /************************/
@@ -1073,7 +1073,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        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
                );
 
        /************************/
@@ -1088,9 +1088,9 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
        /************************/
@@ -1103,7 +1103,7 @@ import "misc.idl", "lsa.idl", "security.idl";
                [in,ref]    policy_handle *domain_handle,
                [in]        uint16 level,
                [in]        lsa_String name,
-               [out]       uint32 idx
+               [out,ref]   uint32 *idx
                );
 
 
@@ -1132,9 +1132,9 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
        /************************/
@@ -1177,7 +1177,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        /* Function    0x38     */
        NTSTATUS samr_GetDomPwInfo(
                [in]        lsa_String *domain_name,
-               [out]       samr_PwInfo info
+               [out,ref]   samr_PwInfo *info
                );
 
        /************************/
@@ -1215,7 +1215,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        /* Function    0x3c     */
        NTSTATUS samr_GetBootKeyInformation(
                [in,ref]   policy_handle *domain_handle,
-               [out]      uint32 unknown
+               [out,ref]  uint32 *unknown
                );
 
        /************************/
@@ -1257,8 +1257,8 @@ import "misc.idl", "lsa.idl", "security.idl";
                [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
                );
 
        /************************/
@@ -1276,8 +1276,10 @@ import "misc.idl", "lsa.idl", "security.idl";
        [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
                );
 
@@ -1286,7 +1288,7 @@ import "misc.idl", "lsa.idl", "security.idl";
        NTSTATUS samr_RidToSid(
                [in,ref]    policy_handle *domain_handle,
                [in]        uint32        rid,
-               [out]       dom_sid2      *sid
+               [out,ref]   dom_sid2      *sid
                );
 
 
@@ -1401,6 +1403,6 @@ import "misc.idl", "lsa.idl", "security.idl";
        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
                );
 }