/* [<][>][^][v][top][bottom][index][help] */
DEFINITIONS
This source file includes following definitions.
- ndr_push_lsa_String
- ndr_pull_lsa_String
- ndr_print_lsa_String
- ndr_push_lsa_StringLarge
- ndr_pull_lsa_StringLarge
- ndr_print_lsa_StringLarge
- ndr_push_lsa_Strings
- ndr_pull_lsa_Strings
- ndr_print_lsa_Strings
- ndr_push_lsa_AsciiString
- ndr_pull_lsa_AsciiString
- ndr_print_lsa_AsciiString
- ndr_push_lsa_AsciiStringLarge
- ndr_pull_lsa_AsciiStringLarge
- ndr_print_lsa_AsciiStringLarge
- ndr_push_lsa_BinaryString
- ndr_pull_lsa_BinaryString
- ndr_print_lsa_BinaryString
- ndr_push_lsa_LUID
- ndr_pull_lsa_LUID
- ndr_print_lsa_LUID
- ndr_push_lsa_PrivEntry
- ndr_pull_lsa_PrivEntry
- ndr_print_lsa_PrivEntry
- ndr_push_lsa_PrivArray
- ndr_pull_lsa_PrivArray
- ndr_print_lsa_PrivArray
- ndr_push_lsa_QosInfo
- ndr_pull_lsa_QosInfo
- ndr_print_lsa_QosInfo
- ndr_push_lsa_ObjectAttribute
- ndr_pull_lsa_ObjectAttribute
- ndr_print_lsa_ObjectAttribute
- ndr_push_lsa_PolicyAccessMask
- ndr_pull_lsa_PolicyAccessMask
- ndr_print_lsa_PolicyAccessMask
- ndr_push_lsa_AccountAccessMask
- ndr_pull_lsa_AccountAccessMask
- ndr_print_lsa_AccountAccessMask
- ndr_push_lsa_SecretAccessMask
- ndr_pull_lsa_SecretAccessMask
- ndr_print_lsa_SecretAccessMask
- ndr_push_lsa_TrustedAccessMask
- ndr_pull_lsa_TrustedAccessMask
- ndr_print_lsa_TrustedAccessMask
- ndr_push_lsa_AuditLogInfo
- ndr_pull_lsa_AuditLogInfo
- ndr_print_lsa_AuditLogInfo
- ndr_push_lsa_PolicyAuditPolicy
- ndr_pull_lsa_PolicyAuditPolicy
- ndr_print_lsa_PolicyAuditPolicy
- ndr_push_lsa_AuditEventsInfo
- ndr_pull_lsa_AuditEventsInfo
- ndr_print_lsa_AuditEventsInfo
- ndr_push_lsa_DomainInfo
- ndr_pull_lsa_DomainInfo
- ndr_print_lsa_DomainInfo
- ndr_push_lsa_PDAccountInfo
- ndr_pull_lsa_PDAccountInfo
- ndr_print_lsa_PDAccountInfo
- ndr_push_lsa_Role
- ndr_pull_lsa_Role
- ndr_print_lsa_Role
- ndr_push_lsa_ServerRole
- ndr_pull_lsa_ServerRole
- ndr_print_lsa_ServerRole
- ndr_push_lsa_ReplicaSourceInfo
- ndr_pull_lsa_ReplicaSourceInfo
- ndr_print_lsa_ReplicaSourceInfo
- ndr_push_lsa_DefaultQuotaInfo
- ndr_pull_lsa_DefaultQuotaInfo
- ndr_print_lsa_DefaultQuotaInfo
- ndr_push_lsa_ModificationInfo
- ndr_pull_lsa_ModificationInfo
- ndr_print_lsa_ModificationInfo
- ndr_push_lsa_AuditFullSetInfo
- ndr_pull_lsa_AuditFullSetInfo
- ndr_print_lsa_AuditFullSetInfo
- ndr_push_lsa_AuditFullQueryInfo
- ndr_pull_lsa_AuditFullQueryInfo
- ndr_print_lsa_AuditFullQueryInfo
- ndr_push_lsa_DnsDomainInfo
- ndr_pull_lsa_DnsDomainInfo
- ndr_print_lsa_DnsDomainInfo
- ndr_push_lsa_PolicyInfo
- ndr_pull_lsa_PolicyInfo
- ndr_print_lsa_PolicyInfo
- ndr_push_lsa_PolicyInformation
- ndr_pull_lsa_PolicyInformation
- ndr_print_lsa_PolicyInformation
- ndr_push_lsa_SidPtr
- ndr_pull_lsa_SidPtr
- ndr_print_lsa_SidPtr
- ndr_push_lsa_SidArray
- ndr_pull_lsa_SidArray
- ndr_print_lsa_SidArray
- ndr_push_lsa_DomainList
- ndr_pull_lsa_DomainList
- ndr_print_lsa_DomainList
- ndr_push_lsa_SidType
- ndr_pull_lsa_SidType
- ndr_print_lsa_SidType
- ndr_push_lsa_TranslatedSid
- ndr_pull_lsa_TranslatedSid
- ndr_print_lsa_TranslatedSid
- ndr_push_lsa_TransSidArray
- ndr_pull_lsa_TransSidArray
- ndr_print_lsa_TransSidArray
- ndr_push_lsa_RefDomainList
- ndr_pull_lsa_RefDomainList
- ndr_print_lsa_RefDomainList
- ndr_push_lsa_LookupNamesLevel
- ndr_pull_lsa_LookupNamesLevel
- ndr_print_lsa_LookupNamesLevel
- ndr_push_lsa_TranslatedName
- ndr_pull_lsa_TranslatedName
- ndr_print_lsa_TranslatedName
- ndr_push_lsa_TransNameArray
- ndr_pull_lsa_TransNameArray
- ndr_print_lsa_TransNameArray
- ndr_push_lsa_LUIDAttribute
- ndr_pull_lsa_LUIDAttribute
- ndr_print_lsa_LUIDAttribute
- ndr_push_lsa_PrivilegeSet
- ndr_pull_lsa_PrivilegeSet
- ndr_print_lsa_PrivilegeSet
- ndr_push_lsa_DATA_BUF
- ndr_pull_lsa_DATA_BUF
- ndr_print_lsa_DATA_BUF
- ndr_push_lsa_DATA_BUF2
- ndr_pull_lsa_DATA_BUF2
- ndr_print_lsa_DATA_BUF2
- ndr_push_lsa_TrustDomInfoEnum
- ndr_pull_lsa_TrustDomInfoEnum
- ndr_print_lsa_TrustDomInfoEnum
- ndr_push_lsa_TrustDirection
- ndr_pull_lsa_TrustDirection
- ndr_print_lsa_TrustDirection
- ndr_push_lsa_TrustType
- ndr_pull_lsa_TrustType
- ndr_print_lsa_TrustType
- ndr_push_lsa_TrustAttributes
- ndr_pull_lsa_TrustAttributes
- ndr_print_lsa_TrustAttributes
- ndr_push_lsa_TrustDomainInfoName
- ndr_pull_lsa_TrustDomainInfoName
- ndr_print_lsa_TrustDomainInfoName
- ndr_push_lsa_TrustDomainInfoControllers
- ndr_pull_lsa_TrustDomainInfoControllers
- ndr_print_lsa_TrustDomainInfoControllers
- ndr_push_lsa_TrustDomainInfoPosixOffset
- ndr_pull_lsa_TrustDomainInfoPosixOffset
- ndr_print_lsa_TrustDomainInfoPosixOffset
- ndr_push_lsa_TrustDomainInfoPassword
- ndr_pull_lsa_TrustDomainInfoPassword
- ndr_print_lsa_TrustDomainInfoPassword
- ndr_push_lsa_TrustDomainInfoBasic
- ndr_pull_lsa_TrustDomainInfoBasic
- ndr_print_lsa_TrustDomainInfoBasic
- ndr_push_lsa_TrustDomainInfoInfoEx
- ndr_pull_lsa_TrustDomainInfoInfoEx
- ndr_print_lsa_TrustDomainInfoInfoEx
- ndr_push_lsa_TrustAuthType
- ndr_pull_lsa_TrustAuthType
- ndr_print_lsa_TrustAuthType
- ndr_push_lsa_TrustDomainInfoBuffer
- ndr_pull_lsa_TrustDomainInfoBuffer
- ndr_print_lsa_TrustDomainInfoBuffer
- ndr_push_lsa_TrustDomainInfoAuthInfo
- ndr_pull_lsa_TrustDomainInfoAuthInfo
- ndr_print_lsa_TrustDomainInfoAuthInfo
- ndr_push_lsa_TrustDomainInfoFullInfo
- ndr_pull_lsa_TrustDomainInfoFullInfo
- ndr_print_lsa_TrustDomainInfoFullInfo
- ndr_push_lsa_TrustDomainInfoAuthInfoInternal
- ndr_pull_lsa_TrustDomainInfoAuthInfoInternal
- ndr_print_lsa_TrustDomainInfoAuthInfoInternal
- ndr_push_lsa_TrustDomainInfoFullInfoInternal
- ndr_pull_lsa_TrustDomainInfoFullInfoInternal
- ndr_print_lsa_TrustDomainInfoFullInfoInternal
- ndr_push_lsa_TrustDomainInfoInfoEx2Internal
- ndr_pull_lsa_TrustDomainInfoInfoEx2Internal
- ndr_print_lsa_TrustDomainInfoInfoEx2Internal
- ndr_push_lsa_TrustDomainInfoFullInfo2Internal
- ndr_pull_lsa_TrustDomainInfoFullInfo2Internal
- ndr_print_lsa_TrustDomainInfoFullInfo2Internal
- ndr_push_lsa_TrustDomainInfoSupportedEncTypes
- ndr_pull_lsa_TrustDomainInfoSupportedEncTypes
- ndr_print_lsa_TrustDomainInfoSupportedEncTypes
- ndr_push_lsa_TrustedDomainInfo
- ndr_pull_lsa_TrustedDomainInfo
- ndr_print_lsa_TrustedDomainInfo
- ndr_push_lsa_DATA_BUF_PTR
- ndr_pull_lsa_DATA_BUF_PTR
- ndr_print_lsa_DATA_BUF_PTR
- ndr_push_lsa_RightSet
- ndr_pull_lsa_RightSet
- ndr_print_lsa_RightSet
- ndr_push_lsa_DomainListEx
- ndr_pull_lsa_DomainListEx
- ndr_print_lsa_DomainListEx
- ndr_push_lsa_DomainInfoKerberos
- ndr_pull_lsa_DomainInfoKerberos
- ndr_print_lsa_DomainInfoKerberos
- ndr_push_lsa_DomainInfoEfs
- ndr_pull_lsa_DomainInfoEfs
- ndr_print_lsa_DomainInfoEfs
- ndr_push_lsa_DomainInformationPolicy
- ndr_pull_lsa_DomainInformationPolicy
- ndr_print_lsa_DomainInformationPolicy
- ndr_push_lsa_TranslatedName2
- ndr_pull_lsa_TranslatedName2
- ndr_print_lsa_TranslatedName2
- ndr_push_lsa_TransNameArray2
- ndr_pull_lsa_TransNameArray2
- ndr_print_lsa_TransNameArray2
- ndr_push_lsa_TranslatedSid2
- ndr_pull_lsa_TranslatedSid2
- ndr_print_lsa_TranslatedSid2
- ndr_push_lsa_TransSidArray2
- ndr_pull_lsa_TransSidArray2
- ndr_print_lsa_TransSidArray2
- ndr_push_lsa_TranslatedSid3
- ndr_pull_lsa_TranslatedSid3
- ndr_print_lsa_TranslatedSid3
- ndr_push_lsa_TransSidArray3
- ndr_pull_lsa_TransSidArray3
- ndr_print_lsa_TransSidArray3
- ndr_push_lsa_ForestTrustBinaryData
- ndr_pull_lsa_ForestTrustBinaryData
- ndr_print_lsa_ForestTrustBinaryData
- ndr_push_lsa_ForestTrustDomainInfo
- ndr_pull_lsa_ForestTrustDomainInfo
- ndr_print_lsa_ForestTrustDomainInfo
- ndr_push_lsa_ForestTrustData
- ndr_pull_lsa_ForestTrustData
- ndr_print_lsa_ForestTrustData
- ndr_push_lsa_ForestTrustRecordType
- ndr_pull_lsa_ForestTrustRecordType
- ndr_print_lsa_ForestTrustRecordType
- ndr_push_lsa_ForestTrustRecord
- ndr_pull_lsa_ForestTrustRecord
- ndr_print_lsa_ForestTrustRecord
- ndr_push_lsa_ForestTrustInformation
- ndr_pull_lsa_ForestTrustInformation
- ndr_print_lsa_ForestTrustInformation
- ndr_push_lsa_Close
- ndr_pull_lsa_Close
- ndr_print_lsa_Close
- ndr_push_lsa_Delete
- ndr_pull_lsa_Delete
- ndr_print_lsa_Delete
- ndr_push_lsa_EnumPrivs
- ndr_pull_lsa_EnumPrivs
- ndr_print_lsa_EnumPrivs
- ndr_push_lsa_QuerySecurity
- ndr_pull_lsa_QuerySecurity
- ndr_print_lsa_QuerySecurity
- ndr_push_lsa_SetSecObj
- ndr_pull_lsa_SetSecObj
- ndr_print_lsa_SetSecObj
- ndr_push_lsa_ChangePassword
- ndr_pull_lsa_ChangePassword
- ndr_print_lsa_ChangePassword
- ndr_push_lsa_OpenPolicy
- ndr_pull_lsa_OpenPolicy
- ndr_print_lsa_OpenPolicy
- ndr_push_lsa_QueryInfoPolicy
- ndr_pull_lsa_QueryInfoPolicy
- ndr_print_lsa_QueryInfoPolicy
- ndr_push_lsa_SetInfoPolicy
- ndr_pull_lsa_SetInfoPolicy
- ndr_print_lsa_SetInfoPolicy
- ndr_push_lsa_ClearAuditLog
- ndr_pull_lsa_ClearAuditLog
- ndr_print_lsa_ClearAuditLog
- ndr_push_lsa_CreateAccount
- ndr_pull_lsa_CreateAccount
- ndr_print_lsa_CreateAccount
- ndr_push_lsa_EnumAccounts
- ndr_pull_lsa_EnumAccounts
- ndr_print_lsa_EnumAccounts
- ndr_push_lsa_CreateTrustedDomain
- ndr_pull_lsa_CreateTrustedDomain
- ndr_print_lsa_CreateTrustedDomain
- ndr_push_lsa_EnumTrustDom
- ndr_pull_lsa_EnumTrustDom
- ndr_print_lsa_EnumTrustDom
- ndr_push_lsa_LookupNames
- ndr_pull_lsa_LookupNames
- ndr_print_lsa_LookupNames
- ndr_push_lsa_LookupSids
- ndr_pull_lsa_LookupSids
- ndr_print_lsa_LookupSids
- ndr_push_lsa_CreateSecret
- ndr_pull_lsa_CreateSecret
- ndr_print_lsa_CreateSecret
- ndr_push_lsa_OpenAccount
- ndr_pull_lsa_OpenAccount
- ndr_print_lsa_OpenAccount
- ndr_push_lsa_EnumPrivsAccount
- ndr_pull_lsa_EnumPrivsAccount
- ndr_print_lsa_EnumPrivsAccount
- ndr_push_lsa_AddPrivilegesToAccount
- ndr_pull_lsa_AddPrivilegesToAccount
- ndr_print_lsa_AddPrivilegesToAccount
- ndr_push_lsa_RemovePrivilegesFromAccount
- ndr_pull_lsa_RemovePrivilegesFromAccount
- ndr_print_lsa_RemovePrivilegesFromAccount
- ndr_push_lsa_GetQuotasForAccount
- ndr_pull_lsa_GetQuotasForAccount
- ndr_print_lsa_GetQuotasForAccount
- ndr_push_lsa_SetQuotasForAccount
- ndr_pull_lsa_SetQuotasForAccount
- ndr_print_lsa_SetQuotasForAccount
- ndr_push_lsa_GetSystemAccessAccount
- ndr_pull_lsa_GetSystemAccessAccount
- ndr_print_lsa_GetSystemAccessAccount
- ndr_push_lsa_SetSystemAccessAccount
- ndr_pull_lsa_SetSystemAccessAccount
- ndr_print_lsa_SetSystemAccessAccount
- ndr_push_lsa_OpenTrustedDomain
- ndr_pull_lsa_OpenTrustedDomain
- ndr_print_lsa_OpenTrustedDomain
- ndr_push_lsa_QueryTrustedDomainInfo
- ndr_pull_lsa_QueryTrustedDomainInfo
- ndr_print_lsa_QueryTrustedDomainInfo
- ndr_push_lsa_SetInformationTrustedDomain
- ndr_pull_lsa_SetInformationTrustedDomain
- ndr_print_lsa_SetInformationTrustedDomain
- ndr_push_lsa_OpenSecret
- ndr_pull_lsa_OpenSecret
- ndr_print_lsa_OpenSecret
- ndr_push_lsa_SetSecret
- ndr_pull_lsa_SetSecret
- ndr_print_lsa_SetSecret
- ndr_push_lsa_QuerySecret
- ndr_pull_lsa_QuerySecret
- ndr_print_lsa_QuerySecret
- ndr_push_lsa_LookupPrivValue
- ndr_pull_lsa_LookupPrivValue
- ndr_print_lsa_LookupPrivValue
- ndr_push_lsa_LookupPrivName
- ndr_pull_lsa_LookupPrivName
- ndr_print_lsa_LookupPrivName
- ndr_push_lsa_LookupPrivDisplayName
- ndr_pull_lsa_LookupPrivDisplayName
- ndr_print_lsa_LookupPrivDisplayName
- ndr_push_lsa_DeleteObject
- ndr_pull_lsa_DeleteObject
- ndr_print_lsa_DeleteObject
- ndr_push_lsa_EnumAccountsWithUserRight
- ndr_pull_lsa_EnumAccountsWithUserRight
- ndr_print_lsa_EnumAccountsWithUserRight
- ndr_push_lsa_EnumAccountRights
- ndr_pull_lsa_EnumAccountRights
- ndr_print_lsa_EnumAccountRights
- ndr_push_lsa_AddAccountRights
- ndr_pull_lsa_AddAccountRights
- ndr_print_lsa_AddAccountRights
- ndr_push_lsa_RemoveAccountRights
- ndr_pull_lsa_RemoveAccountRights
- ndr_print_lsa_RemoveAccountRights
- ndr_push_lsa_QueryTrustedDomainInfoBySid
- ndr_pull_lsa_QueryTrustedDomainInfoBySid
- ndr_print_lsa_QueryTrustedDomainInfoBySid
- ndr_push_lsa_SetTrustedDomainInfo
- ndr_pull_lsa_SetTrustedDomainInfo
- ndr_print_lsa_SetTrustedDomainInfo
- ndr_push_lsa_DeleteTrustedDomain
- ndr_pull_lsa_DeleteTrustedDomain
- ndr_print_lsa_DeleteTrustedDomain
- ndr_push_lsa_StorePrivateData
- ndr_pull_lsa_StorePrivateData
- ndr_print_lsa_StorePrivateData
- ndr_push_lsa_RetrievePrivateData
- ndr_pull_lsa_RetrievePrivateData
- ndr_print_lsa_RetrievePrivateData
- ndr_push_lsa_OpenPolicy2
- ndr_pull_lsa_OpenPolicy2
- ndr_print_lsa_OpenPolicy2
- ndr_push_lsa_GetUserName
- ndr_pull_lsa_GetUserName
- ndr_print_lsa_GetUserName
- ndr_push_lsa_QueryInfoPolicy2
- ndr_pull_lsa_QueryInfoPolicy2
- ndr_print_lsa_QueryInfoPolicy2
- ndr_push_lsa_SetInfoPolicy2
- ndr_pull_lsa_SetInfoPolicy2
- ndr_print_lsa_SetInfoPolicy2
- ndr_push_lsa_QueryTrustedDomainInfoByName
- ndr_pull_lsa_QueryTrustedDomainInfoByName
- ndr_print_lsa_QueryTrustedDomainInfoByName
- ndr_push_lsa_SetTrustedDomainInfoByName
- ndr_pull_lsa_SetTrustedDomainInfoByName
- ndr_print_lsa_SetTrustedDomainInfoByName
- ndr_push_lsa_EnumTrustedDomainsEx
- ndr_pull_lsa_EnumTrustedDomainsEx
- ndr_print_lsa_EnumTrustedDomainsEx
- ndr_push_lsa_CreateTrustedDomainEx
- ndr_pull_lsa_CreateTrustedDomainEx
- ndr_print_lsa_CreateTrustedDomainEx
- ndr_push_lsa_CloseTrustedDomainEx
- ndr_pull_lsa_CloseTrustedDomainEx
- ndr_print_lsa_CloseTrustedDomainEx
- ndr_push_lsa_QueryDomainInformationPolicy
- ndr_pull_lsa_QueryDomainInformationPolicy
- ndr_print_lsa_QueryDomainInformationPolicy
- ndr_push_lsa_SetDomainInformationPolicy
- ndr_pull_lsa_SetDomainInformationPolicy
- ndr_print_lsa_SetDomainInformationPolicy
- ndr_push_lsa_OpenTrustedDomainByName
- ndr_pull_lsa_OpenTrustedDomainByName
- ndr_print_lsa_OpenTrustedDomainByName
- ndr_push_lsa_TestCall
- ndr_pull_lsa_TestCall
- ndr_print_lsa_TestCall
- ndr_push_lsa_LookupSids2
- ndr_pull_lsa_LookupSids2
- ndr_print_lsa_LookupSids2
- ndr_push_lsa_LookupNames2
- ndr_pull_lsa_LookupNames2
- ndr_print_lsa_LookupNames2
- ndr_push_lsa_CreateTrustedDomainEx2
- ndr_pull_lsa_CreateTrustedDomainEx2
- ndr_print_lsa_CreateTrustedDomainEx2
- ndr_push_lsa_CREDRWRITE
- ndr_pull_lsa_CREDRWRITE
- ndr_print_lsa_CREDRWRITE
- ndr_push_lsa_CREDRREAD
- ndr_pull_lsa_CREDRREAD
- ndr_print_lsa_CREDRREAD
- ndr_push_lsa_CREDRENUMERATE
- ndr_pull_lsa_CREDRENUMERATE
- ndr_print_lsa_CREDRENUMERATE
- ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS
- ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS
- ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS
- ndr_push_lsa_CREDRREADDOMAINCREDENTIALS
- ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS
- ndr_print_lsa_CREDRREADDOMAINCREDENTIALS
- ndr_push_lsa_CREDRDELETE
- ndr_pull_lsa_CREDRDELETE
- ndr_print_lsa_CREDRDELETE
- ndr_push_lsa_CREDRGETTARGETINFO
- ndr_pull_lsa_CREDRGETTARGETINFO
- ndr_print_lsa_CREDRGETTARGETINFO
- ndr_push_lsa_CREDRPROFILELOADED
- ndr_pull_lsa_CREDRPROFILELOADED
- ndr_print_lsa_CREDRPROFILELOADED
- ndr_push_lsa_LookupNames3
- ndr_pull_lsa_LookupNames3
- ndr_print_lsa_LookupNames3
- ndr_push_lsa_CREDRGETSESSIONTYPES
- ndr_pull_lsa_CREDRGETSESSIONTYPES
- ndr_print_lsa_CREDRGETSESSIONTYPES
- ndr_push_lsa_LSARREGISTERAUDITEVENT
- ndr_pull_lsa_LSARREGISTERAUDITEVENT
- ndr_print_lsa_LSARREGISTERAUDITEVENT
- ndr_push_lsa_LSARGENAUDITEVENT
- ndr_pull_lsa_LSARGENAUDITEVENT
- ndr_print_lsa_LSARGENAUDITEVENT
- ndr_push_lsa_LSARUNREGISTERAUDITEVENT
- ndr_pull_lsa_LSARUNREGISTERAUDITEVENT
- ndr_print_lsa_LSARUNREGISTERAUDITEVENT
- ndr_push_lsa_lsaRQueryForestTrustInformation
- ndr_pull_lsa_lsaRQueryForestTrustInformation
- ndr_print_lsa_lsaRQueryForestTrustInformation
- ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION
- ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION
- ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION
- ndr_push_lsa_CREDRRENAME
- ndr_pull_lsa_CREDRRENAME
- ndr_print_lsa_CREDRRENAME
- ndr_push_lsa_LookupSids3
- ndr_pull_lsa_LookupSids3
- ndr_print_lsa_LookupSids3
- ndr_push_lsa_LookupNames4
- ndr_pull_lsa_LookupNames4
- ndr_print_lsa_LookupNames4
- ndr_push_lsa_LSAROPENPOLICYSCE
- ndr_pull_lsa_LSAROPENPOLICYSCE
- ndr_print_lsa_LSAROPENPOLICYSCE
- ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE
- ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE
- ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE
- ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
- ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
- ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
- ndr_push_lsa_LSARADTREPORTSECURITYEVENT
- ndr_pull_lsa_LSARADTREPORTSECURITYEVENT
- ndr_print_lsa_LSARADTREPORTSECURITYEVENT
1 /* parser auto-generated by pidl */
2
3 #include "includes.h"
4 #include "../librpc/gen_ndr/ndr_lsa.h"
5
6 #include "librpc/gen_ndr/ndr_misc.h"
7 #include "librpc/gen_ndr/ndr_security.h"
8 _PUBLIC_ enum ndr_err_code ndr_push_lsa_String(struct ndr_push *ndr, int ndr_flags, const struct lsa_String *r)
/* [<][>][^][v][top][bottom][index][help] */
9 {
10 if (ndr_flags & NDR_SCALARS) {
11 NDR_CHECK(ndr_push_align(ndr, 4));
12 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->string)));
13 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->string)));
14 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
15 }
16 if (ndr_flags & NDR_BUFFERS) {
17 if (r->string) {
18 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m(r->string) / 2));
19 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
20 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m(r->string) / 2));
21 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->string, 2 * strlen_m(r->string) / 2, sizeof(uint16_t), CH_UTF16));
22 }
23 }
24 return NDR_ERR_SUCCESS;
25 }
26
27 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_String(struct ndr_pull *ndr, int ndr_flags, struct lsa_String *r)
/* [<][>][^][v][top][bottom][index][help] */
28 {
29 uint32_t _ptr_string;
30 TALLOC_CTX *_mem_save_string_0;
31 if (ndr_flags & NDR_SCALARS) {
32 NDR_CHECK(ndr_pull_align(ndr, 4));
33 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
34 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
35 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
36 if (_ptr_string) {
37 NDR_PULL_ALLOC(ndr, r->string);
38 } else {
39 r->string = NULL;
40 }
41 }
42 if (ndr_flags & NDR_BUFFERS) {
43 if (r->string) {
44 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
45 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
46 NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
47 NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
48 if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
49 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
50 }
51 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint16_t), CH_UTF16));
52 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
53 }
54 if (r->string) {
55 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->string, r->size / 2));
56 }
57 if (r->string) {
58 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->string, r->length / 2));
59 }
60 }
61 return NDR_ERR_SUCCESS;
62 }
63
64 _PUBLIC_ void ndr_print_lsa_String(struct ndr_print *ndr, const char *name, const struct lsa_String *r)
/* [<][>][^][v][top][bottom][index][help] */
65 {
66 ndr_print_struct(ndr, name, "lsa_String");
67 ndr->depth++;
68 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->string):r->length);
69 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->string):r->size);
70 ndr_print_ptr(ndr, "string", r->string);
71 ndr->depth++;
72 if (r->string) {
73 ndr_print_string(ndr, "string", r->string);
74 }
75 ndr->depth--;
76 ndr->depth--;
77 }
78
79 _PUBLIC_ enum ndr_err_code ndr_push_lsa_StringLarge(struct ndr_push *ndr, int ndr_flags, const struct lsa_StringLarge *r)
/* [<][>][^][v][top][bottom][index][help] */
80 {
81 if (ndr_flags & NDR_SCALARS) {
82 NDR_CHECK(ndr_push_align(ndr, 4));
83 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->string)));
84 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m_term(r->string)));
85 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
86 }
87 if (ndr_flags & NDR_BUFFERS) {
88 if (r->string) {
89 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m_term(r->string) / 2));
90 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
91 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m(r->string) / 2));
92 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->string, 2 * strlen_m(r->string) / 2, sizeof(uint16_t), CH_UTF16));
93 }
94 }
95 return NDR_ERR_SUCCESS;
96 }
97
98 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_StringLarge(struct ndr_pull *ndr, int ndr_flags, struct lsa_StringLarge *r)
/* [<][>][^][v][top][bottom][index][help] */
99 {
100 uint32_t _ptr_string;
101 TALLOC_CTX *_mem_save_string_0;
102 if (ndr_flags & NDR_SCALARS) {
103 NDR_CHECK(ndr_pull_align(ndr, 4));
104 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
105 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
106 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
107 if (_ptr_string) {
108 NDR_PULL_ALLOC(ndr, r->string);
109 } else {
110 r->string = NULL;
111 }
112 }
113 if (ndr_flags & NDR_BUFFERS) {
114 if (r->string) {
115 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
116 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
117 NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
118 NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
119 if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
120 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
121 }
122 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint16_t), CH_UTF16));
123 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
124 }
125 if (r->string) {
126 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->string, r->size / 2));
127 }
128 if (r->string) {
129 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->string, r->length / 2));
130 }
131 }
132 return NDR_ERR_SUCCESS;
133 }
134
135 _PUBLIC_ void ndr_print_lsa_StringLarge(struct ndr_print *ndr, const char *name, const struct lsa_StringLarge *r)
/* [<][>][^][v][top][bottom][index][help] */
136 {
137 ndr_print_struct(ndr, name, "lsa_StringLarge");
138 ndr->depth++;
139 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->string):r->length);
140 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m_term(r->string):r->size);
141 ndr_print_ptr(ndr, "string", r->string);
142 ndr->depth++;
143 if (r->string) {
144 ndr_print_string(ndr, "string", r->string);
145 }
146 ndr->depth--;
147 ndr->depth--;
148 }
149
150 _PUBLIC_ enum ndr_err_code ndr_push_lsa_Strings(struct ndr_push *ndr, int ndr_flags, const struct lsa_Strings *r)
/* [<][>][^][v][top][bottom][index][help] */
151 {
152 uint32_t cntr_names_1;
153 if (ndr_flags & NDR_SCALARS) {
154 NDR_CHECK(ndr_push_align(ndr, 4));
155 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
156 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
157 }
158 if (ndr_flags & NDR_BUFFERS) {
159 if (r->names) {
160 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
161 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
162 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
163 }
164 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
165 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
166 }
167 }
168 }
169 return NDR_ERR_SUCCESS;
170 }
171
172 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_Strings(struct ndr_pull *ndr, int ndr_flags, struct lsa_Strings *r)
/* [<][>][^][v][top][bottom][index][help] */
173 {
174 uint32_t _ptr_names;
175 uint32_t cntr_names_1;
176 TALLOC_CTX *_mem_save_names_0;
177 TALLOC_CTX *_mem_save_names_1;
178 if (ndr_flags & NDR_SCALARS) {
179 NDR_CHECK(ndr_pull_align(ndr, 4));
180 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
181 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
182 if (_ptr_names) {
183 NDR_PULL_ALLOC(ndr, r->names);
184 } else {
185 r->names = NULL;
186 }
187 }
188 if (ndr_flags & NDR_BUFFERS) {
189 if (r->names) {
190 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
191 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
192 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
193 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
194 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
195 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
196 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
197 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
198 }
199 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
200 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
201 }
202 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
203 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
204 }
205 if (r->names) {
206 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
207 }
208 }
209 return NDR_ERR_SUCCESS;
210 }
211
212 _PUBLIC_ void ndr_print_lsa_Strings(struct ndr_print *ndr, const char *name, const struct lsa_Strings *r)
/* [<][>][^][v][top][bottom][index][help] */
213 {
214 uint32_t cntr_names_1;
215 ndr_print_struct(ndr, name, "lsa_Strings");
216 ndr->depth++;
217 ndr_print_uint32(ndr, "count", r->count);
218 ndr_print_ptr(ndr, "names", r->names);
219 ndr->depth++;
220 if (r->names) {
221 ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->count);
222 ndr->depth++;
223 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
224 char *idx_1=NULL;
225 if (asprintf(&idx_1, "[%d]", cntr_names_1) != -1) {
226 ndr_print_lsa_String(ndr, "names", &r->names[cntr_names_1]);
227 free(idx_1);
228 }
229 }
230 ndr->depth--;
231 }
232 ndr->depth--;
233 ndr->depth--;
234 }
235
236 _PUBLIC_ enum ndr_err_code ndr_push_lsa_AsciiString(struct ndr_push *ndr, int ndr_flags, const struct lsa_AsciiString *r)
/* [<][>][^][v][top][bottom][index][help] */
237 {
238 if (ndr_flags & NDR_SCALARS) {
239 NDR_CHECK(ndr_push_align(ndr, 4));
240 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m(r->string)));
241 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m(r->string)));
242 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
243 }
244 if (ndr_flags & NDR_BUFFERS) {
245 if (r->string) {
246 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen_m(r->string)));
247 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
248 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen_m(r->string)));
249 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->string, strlen_m(r->string), sizeof(uint8_t), CH_DOS));
250 }
251 }
252 return NDR_ERR_SUCCESS;
253 }
254
255 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiString(struct ndr_pull *ndr, int ndr_flags, struct lsa_AsciiString *r)
/* [<][>][^][v][top][bottom][index][help] */
256 {
257 uint32_t _ptr_string;
258 TALLOC_CTX *_mem_save_string_0;
259 if (ndr_flags & NDR_SCALARS) {
260 NDR_CHECK(ndr_pull_align(ndr, 4));
261 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
262 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
263 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
264 if (_ptr_string) {
265 NDR_PULL_ALLOC(ndr, r->string);
266 } else {
267 r->string = NULL;
268 }
269 }
270 if (ndr_flags & NDR_BUFFERS) {
271 if (r->string) {
272 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
273 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
274 NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
275 NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
276 if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
277 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
278 }
279 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint8_t), CH_DOS));
280 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
281 }
282 if (r->string) {
283 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->string, r->size));
284 }
285 if (r->string) {
286 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->string, r->length));
287 }
288 }
289 return NDR_ERR_SUCCESS;
290 }
291
292 _PUBLIC_ void ndr_print_lsa_AsciiString(struct ndr_print *ndr, const char *name, const struct lsa_AsciiString *r)
/* [<][>][^][v][top][bottom][index][help] */
293 {
294 ndr_print_struct(ndr, name, "lsa_AsciiString");
295 ndr->depth++;
296 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m(r->string):r->length);
297 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m(r->string):r->size);
298 ndr_print_ptr(ndr, "string", r->string);
299 ndr->depth++;
300 if (r->string) {
301 ndr_print_string(ndr, "string", r->string);
302 }
303 ndr->depth--;
304 ndr->depth--;
305 }
306
307 _PUBLIC_ enum ndr_err_code ndr_push_lsa_AsciiStringLarge(struct ndr_push *ndr, int ndr_flags, const struct lsa_AsciiStringLarge *r)
/* [<][>][^][v][top][bottom][index][help] */
308 {
309 if (ndr_flags & NDR_SCALARS) {
310 NDR_CHECK(ndr_push_align(ndr, 4));
311 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m(r->string)));
312 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m_term(r->string)));
313 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
314 }
315 if (ndr_flags & NDR_BUFFERS) {
316 if (r->string) {
317 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen_m_term(r->string)));
318 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
319 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen_m(r->string)));
320 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->string, strlen_m(r->string), sizeof(uint8_t), CH_DOS));
321 }
322 }
323 return NDR_ERR_SUCCESS;
324 }
325
326 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiStringLarge(struct ndr_pull *ndr, int ndr_flags, struct lsa_AsciiStringLarge *r)
/* [<][>][^][v][top][bottom][index][help] */
327 {
328 uint32_t _ptr_string;
329 TALLOC_CTX *_mem_save_string_0;
330 if (ndr_flags & NDR_SCALARS) {
331 NDR_CHECK(ndr_pull_align(ndr, 4));
332 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
333 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
334 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
335 if (_ptr_string) {
336 NDR_PULL_ALLOC(ndr, r->string);
337 } else {
338 r->string = NULL;
339 }
340 }
341 if (ndr_flags & NDR_BUFFERS) {
342 if (r->string) {
343 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
344 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
345 NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
346 NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
347 if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
348 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
349 }
350 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint8_t), CH_DOS));
351 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
352 }
353 if (r->string) {
354 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->string, r->size));
355 }
356 if (r->string) {
357 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->string, r->length));
358 }
359 }
360 return NDR_ERR_SUCCESS;
361 }
362
363 _PUBLIC_ void ndr_print_lsa_AsciiStringLarge(struct ndr_print *ndr, const char *name, const struct lsa_AsciiStringLarge *r)
/* [<][>][^][v][top][bottom][index][help] */
364 {
365 ndr_print_struct(ndr, name, "lsa_AsciiStringLarge");
366 ndr->depth++;
367 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m(r->string):r->length);
368 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m_term(r->string):r->size);
369 ndr_print_ptr(ndr, "string", r->string);
370 ndr->depth++;
371 if (r->string) {
372 ndr_print_string(ndr, "string", r->string);
373 }
374 ndr->depth--;
375 ndr->depth--;
376 }
377
378 _PUBLIC_ enum ndr_err_code ndr_push_lsa_BinaryString(struct ndr_push *ndr, int ndr_flags, const struct lsa_BinaryString *r)
/* [<][>][^][v][top][bottom][index][help] */
379 {
380 uint32_t cntr_array_1;
381 if (ndr_flags & NDR_SCALARS) {
382 NDR_CHECK(ndr_push_align(ndr, 4));
383 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->length));
384 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->size));
385 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
386 }
387 if (ndr_flags & NDR_BUFFERS) {
388 if (r->array) {
389 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size / 2));
390 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
391 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length / 2));
392 for (cntr_array_1 = 0; cntr_array_1 < r->length / 2; cntr_array_1++) {
393 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->array[cntr_array_1]));
394 }
395 }
396 }
397 return NDR_ERR_SUCCESS;
398 }
399
400 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_BinaryString(struct ndr_pull *ndr, int ndr_flags, struct lsa_BinaryString *r)
/* [<][>][^][v][top][bottom][index][help] */
401 {
402 uint32_t _ptr_array;
403 uint32_t cntr_array_1;
404 TALLOC_CTX *_mem_save_array_0;
405 TALLOC_CTX *_mem_save_array_1;
406 if (ndr_flags & NDR_SCALARS) {
407 NDR_CHECK(ndr_pull_align(ndr, 4));
408 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
409 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
410 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
411 if (_ptr_array) {
412 NDR_PULL_ALLOC(ndr, r->array);
413 } else {
414 r->array = NULL;
415 }
416 }
417 if (ndr_flags & NDR_BUFFERS) {
418 if (r->array) {
419 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
420 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
421 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
422 NDR_CHECK(ndr_pull_array_length(ndr, &r->array));
423 if (ndr_get_array_length(ndr, &r->array) > ndr_get_array_size(ndr, &r->array)) {
424 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->array), ndr_get_array_length(ndr, &r->array));
425 }
426 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
427 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
428 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
429 for (cntr_array_1 = 0; cntr_array_1 < r->length / 2; cntr_array_1++) {
430 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
431 }
432 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
433 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
434 }
435 if (r->array) {
436 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->size / 2));
437 }
438 if (r->array) {
439 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->array, r->length / 2));
440 }
441 }
442 return NDR_ERR_SUCCESS;
443 }
444
445 _PUBLIC_ void ndr_print_lsa_BinaryString(struct ndr_print *ndr, const char *name, const struct lsa_BinaryString *r)
/* [<][>][^][v][top][bottom][index][help] */
446 {
447 uint32_t cntr_array_1;
448 ndr_print_struct(ndr, name, "lsa_BinaryString");
449 ndr->depth++;
450 ndr_print_uint16(ndr, "length", r->length);
451 ndr_print_uint16(ndr, "size", r->size);
452 ndr_print_ptr(ndr, "array", r->array);
453 ndr->depth++;
454 if (r->array) {
455 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->length / 2);
456 ndr->depth++;
457 for (cntr_array_1=0;cntr_array_1<r->length / 2;cntr_array_1++) {
458 char *idx_1=NULL;
459 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
460 ndr_print_uint16(ndr, "array", r->array[cntr_array_1]);
461 free(idx_1);
462 }
463 }
464 ndr->depth--;
465 }
466 ndr->depth--;
467 ndr->depth--;
468 }
469
470 static enum ndr_err_code ndr_push_lsa_LUID(struct ndr_push *ndr, int ndr_flags, const struct lsa_LUID *r)
/* [<][>][^][v][top][bottom][index][help] */
471 {
472 if (ndr_flags & NDR_SCALARS) {
473 NDR_CHECK(ndr_push_align(ndr, 4));
474 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->low));
475 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->high));
476 }
477 if (ndr_flags & NDR_BUFFERS) {
478 }
479 return NDR_ERR_SUCCESS;
480 }
481
482 static enum ndr_err_code ndr_pull_lsa_LUID(struct ndr_pull *ndr, int ndr_flags, struct lsa_LUID *r)
/* [<][>][^][v][top][bottom][index][help] */
483 {
484 if (ndr_flags & NDR_SCALARS) {
485 NDR_CHECK(ndr_pull_align(ndr, 4));
486 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->low));
487 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->high));
488 }
489 if (ndr_flags & NDR_BUFFERS) {
490 }
491 return NDR_ERR_SUCCESS;
492 }
493
494 _PUBLIC_ void ndr_print_lsa_LUID(struct ndr_print *ndr, const char *name, const struct lsa_LUID *r)
/* [<][>][^][v][top][bottom][index][help] */
495 {
496 ndr_print_struct(ndr, name, "lsa_LUID");
497 ndr->depth++;
498 ndr_print_uint32(ndr, "low", r->low);
499 ndr_print_uint32(ndr, "high", r->high);
500 ndr->depth--;
501 }
502
503 static enum ndr_err_code ndr_push_lsa_PrivEntry(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivEntry *r)
/* [<][>][^][v][top][bottom][index][help] */
504 {
505 if (ndr_flags & NDR_SCALARS) {
506 NDR_CHECK(ndr_push_align(ndr, 4));
507 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
508 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
509 }
510 if (ndr_flags & NDR_BUFFERS) {
511 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
512 }
513 return NDR_ERR_SUCCESS;
514 }
515
516 static enum ndr_err_code ndr_pull_lsa_PrivEntry(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivEntry *r)
/* [<][>][^][v][top][bottom][index][help] */
517 {
518 if (ndr_flags & NDR_SCALARS) {
519 NDR_CHECK(ndr_pull_align(ndr, 4));
520 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
521 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
522 }
523 if (ndr_flags & NDR_BUFFERS) {
524 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
525 }
526 return NDR_ERR_SUCCESS;
527 }
528
529 _PUBLIC_ void ndr_print_lsa_PrivEntry(struct ndr_print *ndr, const char *name, const struct lsa_PrivEntry *r)
/* [<][>][^][v][top][bottom][index][help] */
530 {
531 ndr_print_struct(ndr, name, "lsa_PrivEntry");
532 ndr->depth++;
533 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
534 ndr_print_lsa_LUID(ndr, "luid", &r->luid);
535 ndr->depth--;
536 }
537
538 static enum ndr_err_code ndr_push_lsa_PrivArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivArray *r)
/* [<][>][^][v][top][bottom][index][help] */
539 {
540 uint32_t cntr_privs_1;
541 if (ndr_flags & NDR_SCALARS) {
542 NDR_CHECK(ndr_push_align(ndr, 4));
543 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
544 NDR_CHECK(ndr_push_unique_ptr(ndr, r->privs));
545 }
546 if (ndr_flags & NDR_BUFFERS) {
547 if (r->privs) {
548 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
549 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
550 NDR_CHECK(ndr_push_lsa_PrivEntry(ndr, NDR_SCALARS, &r->privs[cntr_privs_1]));
551 }
552 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
553 NDR_CHECK(ndr_push_lsa_PrivEntry(ndr, NDR_BUFFERS, &r->privs[cntr_privs_1]));
554 }
555 }
556 }
557 return NDR_ERR_SUCCESS;
558 }
559
560 static enum ndr_err_code ndr_pull_lsa_PrivArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivArray *r)
/* [<][>][^][v][top][bottom][index][help] */
561 {
562 uint32_t _ptr_privs;
563 uint32_t cntr_privs_1;
564 TALLOC_CTX *_mem_save_privs_0;
565 TALLOC_CTX *_mem_save_privs_1;
566 if (ndr_flags & NDR_SCALARS) {
567 NDR_CHECK(ndr_pull_align(ndr, 4));
568 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
569 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
570 if (_ptr_privs) {
571 NDR_PULL_ALLOC(ndr, r->privs);
572 } else {
573 r->privs = NULL;
574 }
575 }
576 if (ndr_flags & NDR_BUFFERS) {
577 if (r->privs) {
578 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
579 NDR_PULL_SET_MEM_CTX(ndr, r->privs, 0);
580 NDR_CHECK(ndr_pull_array_size(ndr, &r->privs));
581 NDR_PULL_ALLOC_N(ndr, r->privs, ndr_get_array_size(ndr, &r->privs));
582 _mem_save_privs_1 = NDR_PULL_GET_MEM_CTX(ndr);
583 NDR_PULL_SET_MEM_CTX(ndr, r->privs, 0);
584 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
585 NDR_CHECK(ndr_pull_lsa_PrivEntry(ndr, NDR_SCALARS, &r->privs[cntr_privs_1]));
586 }
587 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
588 NDR_CHECK(ndr_pull_lsa_PrivEntry(ndr, NDR_BUFFERS, &r->privs[cntr_privs_1]));
589 }
590 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_1, 0);
591 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, 0);
592 }
593 if (r->privs) {
594 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->privs, r->count));
595 }
596 }
597 return NDR_ERR_SUCCESS;
598 }
599
600 _PUBLIC_ void ndr_print_lsa_PrivArray(struct ndr_print *ndr, const char *name, const struct lsa_PrivArray *r)
/* [<][>][^][v][top][bottom][index][help] */
601 {
602 uint32_t cntr_privs_1;
603 ndr_print_struct(ndr, name, "lsa_PrivArray");
604 ndr->depth++;
605 ndr_print_uint32(ndr, "count", r->count);
606 ndr_print_ptr(ndr, "privs", r->privs);
607 ndr->depth++;
608 if (r->privs) {
609 ndr->print(ndr, "%s: ARRAY(%d)", "privs", (int)r->count);
610 ndr->depth++;
611 for (cntr_privs_1=0;cntr_privs_1<r->count;cntr_privs_1++) {
612 char *idx_1=NULL;
613 if (asprintf(&idx_1, "[%d]", cntr_privs_1) != -1) {
614 ndr_print_lsa_PrivEntry(ndr, "privs", &r->privs[cntr_privs_1]);
615 free(idx_1);
616 }
617 }
618 ndr->depth--;
619 }
620 ndr->depth--;
621 ndr->depth--;
622 }
623
624 static enum ndr_err_code ndr_push_lsa_QosInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_QosInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
625 {
626 if (ndr_flags & NDR_SCALARS) {
627 NDR_CHECK(ndr_push_align(ndr, 4));
628 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->len));
629 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->impersonation_level));
630 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->context_mode));
631 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->effective_only));
632 }
633 if (ndr_flags & NDR_BUFFERS) {
634 }
635 return NDR_ERR_SUCCESS;
636 }
637
638 static enum ndr_err_code ndr_pull_lsa_QosInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_QosInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
639 {
640 if (ndr_flags & NDR_SCALARS) {
641 NDR_CHECK(ndr_pull_align(ndr, 4));
642 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->len));
643 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->impersonation_level));
644 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->context_mode));
645 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->effective_only));
646 }
647 if (ndr_flags & NDR_BUFFERS) {
648 }
649 return NDR_ERR_SUCCESS;
650 }
651
652 _PUBLIC_ void ndr_print_lsa_QosInfo(struct ndr_print *ndr, const char *name, const struct lsa_QosInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
653 {
654 ndr_print_struct(ndr, name, "lsa_QosInfo");
655 ndr->depth++;
656 ndr_print_uint32(ndr, "len", r->len);
657 ndr_print_uint16(ndr, "impersonation_level", r->impersonation_level);
658 ndr_print_uint8(ndr, "context_mode", r->context_mode);
659 ndr_print_uint8(ndr, "effective_only", r->effective_only);
660 ndr->depth--;
661 }
662
663 static enum ndr_err_code ndr_push_lsa_ObjectAttribute(struct ndr_push *ndr, int ndr_flags, const struct lsa_ObjectAttribute *r)
/* [<][>][^][v][top][bottom][index][help] */
664 {
665 if (ndr_flags & NDR_SCALARS) {
666 NDR_CHECK(ndr_push_align(ndr, 4));
667 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->len));
668 NDR_CHECK(ndr_push_unique_ptr(ndr, r->root_dir));
669 NDR_CHECK(ndr_push_unique_ptr(ndr, r->object_name));
670 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->attributes));
671 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sec_desc));
672 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sec_qos));
673 }
674 if (ndr_flags & NDR_BUFFERS) {
675 if (r->root_dir) {
676 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->root_dir));
677 }
678 if (r->object_name) {
679 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->object_name, CH_UTF16)));
680 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
681 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->object_name, CH_UTF16)));
682 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->object_name, ndr_charset_length(r->object_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
683 }
684 if (r->sec_desc) {
685 NDR_CHECK(ndr_push_security_descriptor(ndr, NDR_SCALARS|NDR_BUFFERS, r->sec_desc));
686 }
687 if (r->sec_qos) {
688 NDR_CHECK(ndr_push_lsa_QosInfo(ndr, NDR_SCALARS, r->sec_qos));
689 }
690 }
691 return NDR_ERR_SUCCESS;
692 }
693
694 static enum ndr_err_code ndr_pull_lsa_ObjectAttribute(struct ndr_pull *ndr, int ndr_flags, struct lsa_ObjectAttribute *r)
/* [<][>][^][v][top][bottom][index][help] */
695 {
696 uint32_t _ptr_root_dir;
697 TALLOC_CTX *_mem_save_root_dir_0;
698 uint32_t _ptr_object_name;
699 TALLOC_CTX *_mem_save_object_name_0;
700 uint32_t _ptr_sec_desc;
701 TALLOC_CTX *_mem_save_sec_desc_0;
702 uint32_t _ptr_sec_qos;
703 TALLOC_CTX *_mem_save_sec_qos_0;
704 if (ndr_flags & NDR_SCALARS) {
705 NDR_CHECK(ndr_pull_align(ndr, 4));
706 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->len));
707 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_root_dir));
708 if (_ptr_root_dir) {
709 NDR_PULL_ALLOC(ndr, r->root_dir);
710 } else {
711 r->root_dir = NULL;
712 }
713 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object_name));
714 if (_ptr_object_name) {
715 NDR_PULL_ALLOC(ndr, r->object_name);
716 } else {
717 r->object_name = NULL;
718 }
719 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->attributes));
720 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sec_desc));
721 if (_ptr_sec_desc) {
722 NDR_PULL_ALLOC(ndr, r->sec_desc);
723 } else {
724 r->sec_desc = NULL;
725 }
726 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sec_qos));
727 if (_ptr_sec_qos) {
728 NDR_PULL_ALLOC(ndr, r->sec_qos);
729 } else {
730 r->sec_qos = NULL;
731 }
732 }
733 if (ndr_flags & NDR_BUFFERS) {
734 if (r->root_dir) {
735 _mem_save_root_dir_0 = NDR_PULL_GET_MEM_CTX(ndr);
736 NDR_PULL_SET_MEM_CTX(ndr, r->root_dir, 0);
737 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->root_dir));
738 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_root_dir_0, 0);
739 }
740 if (r->object_name) {
741 _mem_save_object_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
742 NDR_PULL_SET_MEM_CTX(ndr, r->object_name, 0);
743 NDR_CHECK(ndr_pull_array_size(ndr, &r->object_name));
744 NDR_CHECK(ndr_pull_array_length(ndr, &r->object_name));
745 if (ndr_get_array_length(ndr, &r->object_name) > ndr_get_array_size(ndr, &r->object_name)) {
746 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->object_name), ndr_get_array_length(ndr, &r->object_name));
747 }
748 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->object_name), sizeof(uint16_t)));
749 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->object_name, ndr_get_array_length(ndr, &r->object_name), sizeof(uint16_t), CH_UTF16));
750 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_name_0, 0);
751 }
752 if (r->sec_desc) {
753 _mem_save_sec_desc_0 = NDR_PULL_GET_MEM_CTX(ndr);
754 NDR_PULL_SET_MEM_CTX(ndr, r->sec_desc, 0);
755 NDR_CHECK(ndr_pull_security_descriptor(ndr, NDR_SCALARS|NDR_BUFFERS, r->sec_desc));
756 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_desc_0, 0);
757 }
758 if (r->sec_qos) {
759 _mem_save_sec_qos_0 = NDR_PULL_GET_MEM_CTX(ndr);
760 NDR_PULL_SET_MEM_CTX(ndr, r->sec_qos, 0);
761 NDR_CHECK(ndr_pull_lsa_QosInfo(ndr, NDR_SCALARS, r->sec_qos));
762 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_qos_0, 0);
763 }
764 }
765 return NDR_ERR_SUCCESS;
766 }
767
768 _PUBLIC_ void ndr_print_lsa_ObjectAttribute(struct ndr_print *ndr, const char *name, const struct lsa_ObjectAttribute *r)
/* [<][>][^][v][top][bottom][index][help] */
769 {
770 ndr_print_struct(ndr, name, "lsa_ObjectAttribute");
771 ndr->depth++;
772 ndr_print_uint32(ndr, "len", r->len);
773 ndr_print_ptr(ndr, "root_dir", r->root_dir);
774 ndr->depth++;
775 if (r->root_dir) {
776 ndr_print_uint8(ndr, "root_dir", *r->root_dir);
777 }
778 ndr->depth--;
779 ndr_print_ptr(ndr, "object_name", r->object_name);
780 ndr->depth++;
781 if (r->object_name) {
782 ndr_print_string(ndr, "object_name", r->object_name);
783 }
784 ndr->depth--;
785 ndr_print_uint32(ndr, "attributes", r->attributes);
786 ndr_print_ptr(ndr, "sec_desc", r->sec_desc);
787 ndr->depth++;
788 if (r->sec_desc) {
789 ndr_print_security_descriptor(ndr, "sec_desc", r->sec_desc);
790 }
791 ndr->depth--;
792 ndr_print_ptr(ndr, "sec_qos", r->sec_qos);
793 ndr->depth++;
794 if (r->sec_qos) {
795 ndr_print_lsa_QosInfo(ndr, "sec_qos", r->sec_qos);
796 }
797 ndr->depth--;
798 ndr->depth--;
799 }
800
801 _PUBLIC_ enum ndr_err_code ndr_push_lsa_PolicyAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
802 {
803 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
804 return NDR_ERR_SUCCESS;
805 }
806
807 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_PolicyAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
/* [<][>][^][v][top][bottom][index][help] */
808 {
809 uint32_t v;
810 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
811 *r = v;
812 return NDR_ERR_SUCCESS;
813 }
814
815 _PUBLIC_ void ndr_print_lsa_PolicyAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
816 {
817 ndr_print_uint32(ndr, name, r);
818 ndr->depth++;
819 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_VIEW_LOCAL_INFORMATION", LSA_POLICY_VIEW_LOCAL_INFORMATION, r);
820 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_VIEW_AUDIT_INFORMATION", LSA_POLICY_VIEW_AUDIT_INFORMATION, r);
821 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_GET_PRIVATE_INFORMATION", LSA_POLICY_GET_PRIVATE_INFORMATION, r);
822 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_TRUST_ADMIN", LSA_POLICY_TRUST_ADMIN, r);
823 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_CREATE_ACCOUNT", LSA_POLICY_CREATE_ACCOUNT, r);
824 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_CREATE_SECRET", LSA_POLICY_CREATE_SECRET, r);
825 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_CREATE_PRIVILEGE", LSA_POLICY_CREATE_PRIVILEGE, r);
826 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS", LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS, r);
827 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_SET_AUDIT_REQUIREMENTS", LSA_POLICY_SET_AUDIT_REQUIREMENTS, r);
828 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_AUDIT_LOG_ADMIN", LSA_POLICY_AUDIT_LOG_ADMIN, r);
829 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_SERVER_ADMIN", LSA_POLICY_SERVER_ADMIN, r);
830 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_LOOKUP_NAMES", LSA_POLICY_LOOKUP_NAMES, r);
831 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_NOTIFICATION", LSA_POLICY_NOTIFICATION, r);
832 ndr->depth--;
833 }
834
835 _PUBLIC_ enum ndr_err_code ndr_push_lsa_AccountAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
836 {
837 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
838 return NDR_ERR_SUCCESS;
839 }
840
841 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_AccountAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
/* [<][>][^][v][top][bottom][index][help] */
842 {
843 uint32_t v;
844 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
845 *r = v;
846 return NDR_ERR_SUCCESS;
847 }
848
849 _PUBLIC_ void ndr_print_lsa_AccountAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
850 {
851 ndr_print_uint32(ndr, name, r);
852 ndr->depth++;
853 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_ACCOUNT_VIEW", LSA_ACCOUNT_VIEW, r);
854 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_ACCOUNT_ADJUST_PRIVILEGES", LSA_ACCOUNT_ADJUST_PRIVILEGES, r);
855 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_ACCOUNT_ADJUST_QUOTAS", LSA_ACCOUNT_ADJUST_QUOTAS, r);
856 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS", LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS, r);
857 ndr->depth--;
858 }
859
860 _PUBLIC_ enum ndr_err_code ndr_push_lsa_SecretAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
861 {
862 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
863 return NDR_ERR_SUCCESS;
864 }
865
866 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SecretAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
/* [<][>][^][v][top][bottom][index][help] */
867 {
868 uint32_t v;
869 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
870 *r = v;
871 return NDR_ERR_SUCCESS;
872 }
873
874 _PUBLIC_ void ndr_print_lsa_SecretAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
875 {
876 ndr_print_uint32(ndr, name, r);
877 ndr->depth++;
878 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_SECRET_SET_VALUE", LSA_SECRET_SET_VALUE, r);
879 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_SECRET_QUERY_VALUE", LSA_SECRET_QUERY_VALUE, r);
880 ndr->depth--;
881 }
882
883 _PUBLIC_ enum ndr_err_code ndr_push_lsa_TrustedAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
884 {
885 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
886 return NDR_ERR_SUCCESS;
887 }
888
889 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_TrustedAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
/* [<][>][^][v][top][bottom][index][help] */
890 {
891 uint32_t v;
892 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
893 *r = v;
894 return NDR_ERR_SUCCESS;
895 }
896
897 _PUBLIC_ void ndr_print_lsa_TrustedAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
898 {
899 ndr_print_uint32(ndr, name, r);
900 ndr->depth++;
901 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUSTED_QUERY_DOMAIN_NAME", LSA_TRUSTED_QUERY_DOMAIN_NAME, r);
902 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUSTED_QUERY_CONTROLLERS", LSA_TRUSTED_QUERY_CONTROLLERS, r);
903 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUSTED_SET_CONTROLLERS", LSA_TRUSTED_SET_CONTROLLERS, r);
904 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUSTED_QUERY_POSIX", LSA_TRUSTED_QUERY_POSIX, r);
905 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUSTED_SET_POSIX", LSA_TRUSTED_SET_POSIX, r);
906 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUSTED_SET_AUTH", LSA_TRUSTED_SET_AUTH, r);
907 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUSTED_QUERY_AUTH", LSA_TRUSTED_QUERY_AUTH, r);
908 ndr->depth--;
909 }
910
911 static enum ndr_err_code ndr_push_lsa_AuditLogInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditLogInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
912 {
913 if (ndr_flags & NDR_SCALARS) {
914 NDR_CHECK(ndr_push_align(ndr, 8));
915 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->percent_full));
916 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maximum_log_size));
917 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->retention_time));
918 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_in_progress));
919 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->time_to_shutdown));
920 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->next_audit_record));
921 }
922 if (ndr_flags & NDR_BUFFERS) {
923 }
924 return NDR_ERR_SUCCESS;
925 }
926
927 static enum ndr_err_code ndr_pull_lsa_AuditLogInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditLogInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
928 {
929 if (ndr_flags & NDR_SCALARS) {
930 NDR_CHECK(ndr_pull_align(ndr, 8));
931 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->percent_full));
932 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maximum_log_size));
933 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->retention_time));
934 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_in_progress));
935 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->time_to_shutdown));
936 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->next_audit_record));
937 }
938 if (ndr_flags & NDR_BUFFERS) {
939 }
940 return NDR_ERR_SUCCESS;
941 }
942
943 _PUBLIC_ void ndr_print_lsa_AuditLogInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditLogInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
944 {
945 ndr_print_struct(ndr, name, "lsa_AuditLogInfo");
946 ndr->depth++;
947 ndr_print_uint32(ndr, "percent_full", r->percent_full);
948 ndr_print_uint32(ndr, "maximum_log_size", r->maximum_log_size);
949 ndr_print_hyper(ndr, "retention_time", r->retention_time);
950 ndr_print_uint8(ndr, "shutdown_in_progress", r->shutdown_in_progress);
951 ndr_print_hyper(ndr, "time_to_shutdown", r->time_to_shutdown);
952 ndr_print_uint32(ndr, "next_audit_record", r->next_audit_record);
953 ndr->depth--;
954 }
955
956 static enum ndr_err_code ndr_push_lsa_PolicyAuditPolicy(struct ndr_push *ndr, int ndr_flags, enum lsa_PolicyAuditPolicy r)
/* [<][>][^][v][top][bottom][index][help] */
957 {
958 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
959 return NDR_ERR_SUCCESS;
960 }
961
962 static enum ndr_err_code ndr_pull_lsa_PolicyAuditPolicy(struct ndr_pull *ndr, int ndr_flags, enum lsa_PolicyAuditPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
963 {
964 uint32_t v;
965 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
966 *r = v;
967 return NDR_ERR_SUCCESS;
968 }
969
970 _PUBLIC_ void ndr_print_lsa_PolicyAuditPolicy(struct ndr_print *ndr, const char *name, enum lsa_PolicyAuditPolicy r)
/* [<][>][^][v][top][bottom][index][help] */
971 {
972 const char *val = NULL;
973
974 switch (r) {
975 case LSA_AUDIT_POLICY_NONE: val = "LSA_AUDIT_POLICY_NONE"; break;
976 case LSA_AUDIT_POLICY_SUCCESS: val = "LSA_AUDIT_POLICY_SUCCESS"; break;
977 case LSA_AUDIT_POLICY_FAILURE: val = "LSA_AUDIT_POLICY_FAILURE"; break;
978 case LSA_AUDIT_POLICY_ALL: val = "LSA_AUDIT_POLICY_ALL"; break;
979 case LSA_AUDIT_POLICY_CLEAR: val = "LSA_AUDIT_POLICY_CLEAR"; break;
980 }
981 ndr_print_enum(ndr, name, "ENUM", val, r);
982 }
983
984 static enum ndr_err_code ndr_push_lsa_AuditEventsInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditEventsInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
985 {
986 uint32_t cntr_settings_1;
987 if (ndr_flags & NDR_SCALARS) {
988 NDR_CHECK(ndr_push_align(ndr, 4));
989 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->auditing_mode));
990 NDR_CHECK(ndr_push_unique_ptr(ndr, r->settings));
991 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
992 }
993 if (ndr_flags & NDR_BUFFERS) {
994 if (r->settings) {
995 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
996 for (cntr_settings_1 = 0; cntr_settings_1 < r->count; cntr_settings_1++) {
997 NDR_CHECK(ndr_push_lsa_PolicyAuditPolicy(ndr, NDR_SCALARS, r->settings[cntr_settings_1]));
998 }
999 }
1000 }
1001 return NDR_ERR_SUCCESS;
1002 }
1003
1004 static enum ndr_err_code ndr_pull_lsa_AuditEventsInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditEventsInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1005 {
1006 uint32_t _ptr_settings;
1007 uint32_t cntr_settings_1;
1008 TALLOC_CTX *_mem_save_settings_0;
1009 TALLOC_CTX *_mem_save_settings_1;
1010 if (ndr_flags & NDR_SCALARS) {
1011 NDR_CHECK(ndr_pull_align(ndr, 4));
1012 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->auditing_mode));
1013 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_settings));
1014 if (_ptr_settings) {
1015 NDR_PULL_ALLOC(ndr, r->settings);
1016 } else {
1017 r->settings = NULL;
1018 }
1019 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1020 }
1021 if (ndr_flags & NDR_BUFFERS) {
1022 if (r->settings) {
1023 _mem_save_settings_0 = NDR_PULL_GET_MEM_CTX(ndr);
1024 NDR_PULL_SET_MEM_CTX(ndr, r->settings, 0);
1025 NDR_CHECK(ndr_pull_array_size(ndr, &r->settings));
1026 NDR_PULL_ALLOC_N(ndr, r->settings, ndr_get_array_size(ndr, &r->settings));
1027 _mem_save_settings_1 = NDR_PULL_GET_MEM_CTX(ndr);
1028 NDR_PULL_SET_MEM_CTX(ndr, r->settings, 0);
1029 for (cntr_settings_1 = 0; cntr_settings_1 < r->count; cntr_settings_1++) {
1030 NDR_CHECK(ndr_pull_lsa_PolicyAuditPolicy(ndr, NDR_SCALARS, &r->settings[cntr_settings_1]));
1031 }
1032 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_settings_1, 0);
1033 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_settings_0, 0);
1034 }
1035 if (r->settings) {
1036 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->settings, r->count));
1037 }
1038 }
1039 return NDR_ERR_SUCCESS;
1040 }
1041
1042 _PUBLIC_ void ndr_print_lsa_AuditEventsInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditEventsInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1043 {
1044 uint32_t cntr_settings_1;
1045 ndr_print_struct(ndr, name, "lsa_AuditEventsInfo");
1046 ndr->depth++;
1047 ndr_print_uint32(ndr, "auditing_mode", r->auditing_mode);
1048 ndr_print_ptr(ndr, "settings", r->settings);
1049 ndr->depth++;
1050 if (r->settings) {
1051 ndr->print(ndr, "%s: ARRAY(%d)", "settings", (int)r->count);
1052 ndr->depth++;
1053 for (cntr_settings_1=0;cntr_settings_1<r->count;cntr_settings_1++) {
1054 char *idx_1=NULL;
1055 if (asprintf(&idx_1, "[%d]", cntr_settings_1) != -1) {
1056 ndr_print_lsa_PolicyAuditPolicy(ndr, "settings", r->settings[cntr_settings_1]);
1057 free(idx_1);
1058 }
1059 }
1060 ndr->depth--;
1061 }
1062 ndr->depth--;
1063 ndr_print_uint32(ndr, "count", r->count);
1064 ndr->depth--;
1065 }
1066
1067 static enum ndr_err_code ndr_push_lsa_DomainInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1068 {
1069 if (ndr_flags & NDR_SCALARS) {
1070 NDR_CHECK(ndr_push_align(ndr, 4));
1071 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
1072 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
1073 }
1074 if (ndr_flags & NDR_BUFFERS) {
1075 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
1076 if (r->sid) {
1077 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1078 }
1079 }
1080 return NDR_ERR_SUCCESS;
1081 }
1082
1083 static enum ndr_err_code ndr_pull_lsa_DomainInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1084 {
1085 uint32_t _ptr_sid;
1086 TALLOC_CTX *_mem_save_sid_0;
1087 if (ndr_flags & NDR_SCALARS) {
1088 NDR_CHECK(ndr_pull_align(ndr, 4));
1089 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
1090 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
1091 if (_ptr_sid) {
1092 NDR_PULL_ALLOC(ndr, r->sid);
1093 } else {
1094 r->sid = NULL;
1095 }
1096 }
1097 if (ndr_flags & NDR_BUFFERS) {
1098 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
1099 if (r->sid) {
1100 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
1101 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
1102 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1103 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
1104 }
1105 }
1106 return NDR_ERR_SUCCESS;
1107 }
1108
1109 _PUBLIC_ void ndr_print_lsa_DomainInfo(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1110 {
1111 ndr_print_struct(ndr, name, "lsa_DomainInfo");
1112 ndr->depth++;
1113 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
1114 ndr_print_ptr(ndr, "sid", r->sid);
1115 ndr->depth++;
1116 if (r->sid) {
1117 ndr_print_dom_sid2(ndr, "sid", r->sid);
1118 }
1119 ndr->depth--;
1120 ndr->depth--;
1121 }
1122
1123 static enum ndr_err_code ndr_push_lsa_PDAccountInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_PDAccountInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1124 {
1125 if (ndr_flags & NDR_SCALARS) {
1126 NDR_CHECK(ndr_push_align(ndr, 4));
1127 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
1128 }
1129 if (ndr_flags & NDR_BUFFERS) {
1130 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
1131 }
1132 return NDR_ERR_SUCCESS;
1133 }
1134
1135 static enum ndr_err_code ndr_pull_lsa_PDAccountInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_PDAccountInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1136 {
1137 if (ndr_flags & NDR_SCALARS) {
1138 NDR_CHECK(ndr_pull_align(ndr, 4));
1139 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
1140 }
1141 if (ndr_flags & NDR_BUFFERS) {
1142 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
1143 }
1144 return NDR_ERR_SUCCESS;
1145 }
1146
1147 _PUBLIC_ void ndr_print_lsa_PDAccountInfo(struct ndr_print *ndr, const char *name, const struct lsa_PDAccountInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1148 {
1149 ndr_print_struct(ndr, name, "lsa_PDAccountInfo");
1150 ndr->depth++;
1151 ndr_print_lsa_String(ndr, "name", &r->name);
1152 ndr->depth--;
1153 }
1154
1155 static enum ndr_err_code ndr_push_lsa_Role(struct ndr_push *ndr, int ndr_flags, enum lsa_Role r)
/* [<][>][^][v][top][bottom][index][help] */
1156 {
1157 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
1158 return NDR_ERR_SUCCESS;
1159 }
1160
1161 static enum ndr_err_code ndr_pull_lsa_Role(struct ndr_pull *ndr, int ndr_flags, enum lsa_Role *r)
/* [<][>][^][v][top][bottom][index][help] */
1162 {
1163 uint32_t v;
1164 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
1165 *r = v;
1166 return NDR_ERR_SUCCESS;
1167 }
1168
1169 _PUBLIC_ void ndr_print_lsa_Role(struct ndr_print *ndr, const char *name, enum lsa_Role r)
/* [<][>][^][v][top][bottom][index][help] */
1170 {
1171 const char *val = NULL;
1172
1173 switch (r) {
1174 case LSA_ROLE_BACKUP: val = "LSA_ROLE_BACKUP"; break;
1175 case LSA_ROLE_PRIMARY: val = "LSA_ROLE_PRIMARY"; break;
1176 }
1177 ndr_print_enum(ndr, name, "ENUM", val, r);
1178 }
1179
1180 static enum ndr_err_code ndr_push_lsa_ServerRole(struct ndr_push *ndr, int ndr_flags, const struct lsa_ServerRole *r)
/* [<][>][^][v][top][bottom][index][help] */
1181 {
1182 if (ndr_flags & NDR_SCALARS) {
1183 NDR_CHECK(ndr_push_align(ndr, 4));
1184 NDR_CHECK(ndr_push_lsa_Role(ndr, NDR_SCALARS, r->role));
1185 }
1186 if (ndr_flags & NDR_BUFFERS) {
1187 }
1188 return NDR_ERR_SUCCESS;
1189 }
1190
1191 static enum ndr_err_code ndr_pull_lsa_ServerRole(struct ndr_pull *ndr, int ndr_flags, struct lsa_ServerRole *r)
/* [<][>][^][v][top][bottom][index][help] */
1192 {
1193 if (ndr_flags & NDR_SCALARS) {
1194 NDR_CHECK(ndr_pull_align(ndr, 4));
1195 NDR_CHECK(ndr_pull_lsa_Role(ndr, NDR_SCALARS, &r->role));
1196 }
1197 if (ndr_flags & NDR_BUFFERS) {
1198 }
1199 return NDR_ERR_SUCCESS;
1200 }
1201
1202 _PUBLIC_ void ndr_print_lsa_ServerRole(struct ndr_print *ndr, const char *name, const struct lsa_ServerRole *r)
/* [<][>][^][v][top][bottom][index][help] */
1203 {
1204 ndr_print_struct(ndr, name, "lsa_ServerRole");
1205 ndr->depth++;
1206 ndr_print_lsa_Role(ndr, "role", r->role);
1207 ndr->depth--;
1208 }
1209
1210 static enum ndr_err_code ndr_push_lsa_ReplicaSourceInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_ReplicaSourceInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1211 {
1212 if (ndr_flags & NDR_SCALARS) {
1213 NDR_CHECK(ndr_push_align(ndr, 4));
1214 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->source));
1215 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account));
1216 }
1217 if (ndr_flags & NDR_BUFFERS) {
1218 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->source));
1219 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account));
1220 }
1221 return NDR_ERR_SUCCESS;
1222 }
1223
1224 static enum ndr_err_code ndr_pull_lsa_ReplicaSourceInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_ReplicaSourceInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1225 {
1226 if (ndr_flags & NDR_SCALARS) {
1227 NDR_CHECK(ndr_pull_align(ndr, 4));
1228 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->source));
1229 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account));
1230 }
1231 if (ndr_flags & NDR_BUFFERS) {
1232 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->source));
1233 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account));
1234 }
1235 return NDR_ERR_SUCCESS;
1236 }
1237
1238 _PUBLIC_ void ndr_print_lsa_ReplicaSourceInfo(struct ndr_print *ndr, const char *name, const struct lsa_ReplicaSourceInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1239 {
1240 ndr_print_struct(ndr, name, "lsa_ReplicaSourceInfo");
1241 ndr->depth++;
1242 ndr_print_lsa_String(ndr, "source", &r->source);
1243 ndr_print_lsa_String(ndr, "account", &r->account);
1244 ndr->depth--;
1245 }
1246
1247 static enum ndr_err_code ndr_push_lsa_DefaultQuotaInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DefaultQuotaInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1248 {
1249 if (ndr_flags & NDR_SCALARS) {
1250 NDR_CHECK(ndr_push_align(ndr, 8));
1251 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->paged_pool));
1252 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->non_paged_pool));
1253 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->min_wss));
1254 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_wss));
1255 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pagefile));
1256 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown));
1257 }
1258 if (ndr_flags & NDR_BUFFERS) {
1259 }
1260 return NDR_ERR_SUCCESS;
1261 }
1262
1263 static enum ndr_err_code ndr_pull_lsa_DefaultQuotaInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DefaultQuotaInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1264 {
1265 if (ndr_flags & NDR_SCALARS) {
1266 NDR_CHECK(ndr_pull_align(ndr, 8));
1267 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->paged_pool));
1268 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->non_paged_pool));
1269 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->min_wss));
1270 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_wss));
1271 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pagefile));
1272 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown));
1273 }
1274 if (ndr_flags & NDR_BUFFERS) {
1275 }
1276 return NDR_ERR_SUCCESS;
1277 }
1278
1279 _PUBLIC_ void ndr_print_lsa_DefaultQuotaInfo(struct ndr_print *ndr, const char *name, const struct lsa_DefaultQuotaInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1280 {
1281 ndr_print_struct(ndr, name, "lsa_DefaultQuotaInfo");
1282 ndr->depth++;
1283 ndr_print_uint32(ndr, "paged_pool", r->paged_pool);
1284 ndr_print_uint32(ndr, "non_paged_pool", r->non_paged_pool);
1285 ndr_print_uint32(ndr, "min_wss", r->min_wss);
1286 ndr_print_uint32(ndr, "max_wss", r->max_wss);
1287 ndr_print_uint32(ndr, "pagefile", r->pagefile);
1288 ndr_print_hyper(ndr, "unknown", r->unknown);
1289 ndr->depth--;
1290 }
1291
1292 static enum ndr_err_code ndr_push_lsa_ModificationInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_ModificationInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1293 {
1294 if (ndr_flags & NDR_SCALARS) {
1295 NDR_CHECK(ndr_push_align(ndr, 8));
1296 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->modified_id));
1297 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->db_create_time));
1298 }
1299 if (ndr_flags & NDR_BUFFERS) {
1300 }
1301 return NDR_ERR_SUCCESS;
1302 }
1303
1304 static enum ndr_err_code ndr_pull_lsa_ModificationInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_ModificationInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1305 {
1306 if (ndr_flags & NDR_SCALARS) {
1307 NDR_CHECK(ndr_pull_align(ndr, 8));
1308 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->modified_id));
1309 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->db_create_time));
1310 }
1311 if (ndr_flags & NDR_BUFFERS) {
1312 }
1313 return NDR_ERR_SUCCESS;
1314 }
1315
1316 _PUBLIC_ void ndr_print_lsa_ModificationInfo(struct ndr_print *ndr, const char *name, const struct lsa_ModificationInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1317 {
1318 ndr_print_struct(ndr, name, "lsa_ModificationInfo");
1319 ndr->depth++;
1320 ndr_print_hyper(ndr, "modified_id", r->modified_id);
1321 ndr_print_NTTIME_hyper(ndr, "db_create_time", r->db_create_time);
1322 ndr->depth--;
1323 }
1324
1325 static enum ndr_err_code ndr_push_lsa_AuditFullSetInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditFullSetInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1326 {
1327 if (ndr_flags & NDR_SCALARS) {
1328 NDR_CHECK(ndr_push_align(ndr, 1));
1329 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_on_full));
1330 }
1331 if (ndr_flags & NDR_BUFFERS) {
1332 }
1333 return NDR_ERR_SUCCESS;
1334 }
1335
1336 static enum ndr_err_code ndr_pull_lsa_AuditFullSetInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditFullSetInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1337 {
1338 if (ndr_flags & NDR_SCALARS) {
1339 NDR_CHECK(ndr_pull_align(ndr, 1));
1340 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_on_full));
1341 }
1342 if (ndr_flags & NDR_BUFFERS) {
1343 }
1344 return NDR_ERR_SUCCESS;
1345 }
1346
1347 _PUBLIC_ void ndr_print_lsa_AuditFullSetInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditFullSetInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1348 {
1349 ndr_print_struct(ndr, name, "lsa_AuditFullSetInfo");
1350 ndr->depth++;
1351 ndr_print_uint8(ndr, "shutdown_on_full", r->shutdown_on_full);
1352 ndr->depth--;
1353 }
1354
1355 static enum ndr_err_code ndr_push_lsa_AuditFullQueryInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditFullQueryInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1356 {
1357 if (ndr_flags & NDR_SCALARS) {
1358 NDR_CHECK(ndr_push_align(ndr, 1));
1359 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_on_full));
1360 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->log_is_full));
1361 }
1362 if (ndr_flags & NDR_BUFFERS) {
1363 }
1364 return NDR_ERR_SUCCESS;
1365 }
1366
1367 static enum ndr_err_code ndr_pull_lsa_AuditFullQueryInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditFullQueryInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1368 {
1369 if (ndr_flags & NDR_SCALARS) {
1370 NDR_CHECK(ndr_pull_align(ndr, 1));
1371 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_on_full));
1372 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->log_is_full));
1373 }
1374 if (ndr_flags & NDR_BUFFERS) {
1375 }
1376 return NDR_ERR_SUCCESS;
1377 }
1378
1379 _PUBLIC_ void ndr_print_lsa_AuditFullQueryInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditFullQueryInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1380 {
1381 ndr_print_struct(ndr, name, "lsa_AuditFullQueryInfo");
1382 ndr->depth++;
1383 ndr_print_uint8(ndr, "shutdown_on_full", r->shutdown_on_full);
1384 ndr_print_uint8(ndr, "log_is_full", r->log_is_full);
1385 ndr->depth--;
1386 }
1387
1388 static enum ndr_err_code ndr_push_lsa_DnsDomainInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DnsDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1389 {
1390 if (ndr_flags & NDR_SCALARS) {
1391 NDR_CHECK(ndr_push_align(ndr, 4));
1392 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
1393 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain));
1394 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_forest));
1395 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->domain_guid));
1396 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
1397 }
1398 if (ndr_flags & NDR_BUFFERS) {
1399 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
1400 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain));
1401 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_forest));
1402 if (r->sid) {
1403 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1404 }
1405 }
1406 return NDR_ERR_SUCCESS;
1407 }
1408
1409 static enum ndr_err_code ndr_pull_lsa_DnsDomainInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DnsDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1410 {
1411 uint32_t _ptr_sid;
1412 TALLOC_CTX *_mem_save_sid_0;
1413 if (ndr_flags & NDR_SCALARS) {
1414 NDR_CHECK(ndr_pull_align(ndr, 4));
1415 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
1416 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain));
1417 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_forest));
1418 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->domain_guid));
1419 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
1420 if (_ptr_sid) {
1421 NDR_PULL_ALLOC(ndr, r->sid);
1422 } else {
1423 r->sid = NULL;
1424 }
1425 }
1426 if (ndr_flags & NDR_BUFFERS) {
1427 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
1428 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain));
1429 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_forest));
1430 if (r->sid) {
1431 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
1432 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
1433 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1434 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
1435 }
1436 }
1437 return NDR_ERR_SUCCESS;
1438 }
1439
1440 _PUBLIC_ void ndr_print_lsa_DnsDomainInfo(struct ndr_print *ndr, const char *name, const struct lsa_DnsDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1441 {
1442 ndr_print_struct(ndr, name, "lsa_DnsDomainInfo");
1443 ndr->depth++;
1444 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
1445 ndr_print_lsa_StringLarge(ndr, "dns_domain", &r->dns_domain);
1446 ndr_print_lsa_StringLarge(ndr, "dns_forest", &r->dns_forest);
1447 ndr_print_GUID(ndr, "domain_guid", &r->domain_guid);
1448 ndr_print_ptr(ndr, "sid", r->sid);
1449 ndr->depth++;
1450 if (r->sid) {
1451 ndr_print_dom_sid2(ndr, "sid", r->sid);
1452 }
1453 ndr->depth--;
1454 ndr->depth--;
1455 }
1456
1457 static enum ndr_err_code ndr_push_lsa_PolicyInfo(struct ndr_push *ndr, int ndr_flags, enum lsa_PolicyInfo r)
/* [<][>][^][v][top][bottom][index][help] */
1458 {
1459 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
1460 return NDR_ERR_SUCCESS;
1461 }
1462
1463 static enum ndr_err_code ndr_pull_lsa_PolicyInfo(struct ndr_pull *ndr, int ndr_flags, enum lsa_PolicyInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
1464 {
1465 uint16_t v;
1466 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
1467 *r = v;
1468 return NDR_ERR_SUCCESS;
1469 }
1470
1471 _PUBLIC_ void ndr_print_lsa_PolicyInfo(struct ndr_print *ndr, const char *name, enum lsa_PolicyInfo r)
/* [<][>][^][v][top][bottom][index][help] */
1472 {
1473 const char *val = NULL;
1474
1475 switch (r) {
1476 case LSA_POLICY_INFO_AUDIT_LOG: val = "LSA_POLICY_INFO_AUDIT_LOG"; break;
1477 case LSA_POLICY_INFO_AUDIT_EVENTS: val = "LSA_POLICY_INFO_AUDIT_EVENTS"; break;
1478 case LSA_POLICY_INFO_DOMAIN: val = "LSA_POLICY_INFO_DOMAIN"; break;
1479 case LSA_POLICY_INFO_PD: val = "LSA_POLICY_INFO_PD"; break;
1480 case LSA_POLICY_INFO_ACCOUNT_DOMAIN: val = "LSA_POLICY_INFO_ACCOUNT_DOMAIN"; break;
1481 case LSA_POLICY_INFO_ROLE: val = "LSA_POLICY_INFO_ROLE"; break;
1482 case LSA_POLICY_INFO_REPLICA: val = "LSA_POLICY_INFO_REPLICA"; break;
1483 case LSA_POLICY_INFO_QUOTA: val = "LSA_POLICY_INFO_QUOTA"; break;
1484 case LSA_POLICY_INFO_MOD: val = "LSA_POLICY_INFO_MOD"; break;
1485 case LSA_POLICY_INFO_AUDIT_FULL_SET: val = "LSA_POLICY_INFO_AUDIT_FULL_SET"; break;
1486 case LSA_POLICY_INFO_AUDIT_FULL_QUERY: val = "LSA_POLICY_INFO_AUDIT_FULL_QUERY"; break;
1487 case LSA_POLICY_INFO_DNS: val = "LSA_POLICY_INFO_DNS"; break;
1488 case LSA_POLICY_INFO_DNS_INT: val = "LSA_POLICY_INFO_DNS_INT"; break;
1489 case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN: val = "LSA_POLICY_INFO_L_ACCOUNT_DOMAIN"; break;
1490 }
1491 ndr_print_enum(ndr, name, "ENUM", val, r);
1492 }
1493
1494 static enum ndr_err_code ndr_push_lsa_PolicyInformation(struct ndr_push *ndr, int ndr_flags, const union lsa_PolicyInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
1495 {
1496 if (ndr_flags & NDR_SCALARS) {
1497 int level = ndr_push_get_switch_value(ndr, r);
1498 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
1499 switch (level) {
1500 case LSA_POLICY_INFO_AUDIT_LOG: {
1501 NDR_CHECK(ndr_push_lsa_AuditLogInfo(ndr, NDR_SCALARS, &r->audit_log));
1502 break; }
1503
1504 case LSA_POLICY_INFO_AUDIT_EVENTS: {
1505 NDR_CHECK(ndr_push_lsa_AuditEventsInfo(ndr, NDR_SCALARS, &r->audit_events));
1506 break; }
1507
1508 case LSA_POLICY_INFO_DOMAIN: {
1509 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domain));
1510 break; }
1511
1512 case LSA_POLICY_INFO_PD: {
1513 NDR_CHECK(ndr_push_lsa_PDAccountInfo(ndr, NDR_SCALARS, &r->pd));
1514 break; }
1515
1516 case LSA_POLICY_INFO_ACCOUNT_DOMAIN: {
1517 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->account_domain));
1518 break; }
1519
1520 case LSA_POLICY_INFO_ROLE: {
1521 NDR_CHECK(ndr_push_lsa_ServerRole(ndr, NDR_SCALARS, &r->role));
1522 break; }
1523
1524 case LSA_POLICY_INFO_REPLICA: {
1525 NDR_CHECK(ndr_push_lsa_ReplicaSourceInfo(ndr, NDR_SCALARS, &r->replica));
1526 break; }
1527
1528 case LSA_POLICY_INFO_QUOTA: {
1529 NDR_CHECK(ndr_push_lsa_DefaultQuotaInfo(ndr, NDR_SCALARS, &r->quota));
1530 break; }
1531
1532 case LSA_POLICY_INFO_MOD: {
1533 NDR_CHECK(ndr_push_lsa_ModificationInfo(ndr, NDR_SCALARS, &r->mod));
1534 break; }
1535
1536 case LSA_POLICY_INFO_AUDIT_FULL_SET: {
1537 NDR_CHECK(ndr_push_lsa_AuditFullSetInfo(ndr, NDR_SCALARS, &r->auditfullset));
1538 break; }
1539
1540 case LSA_POLICY_INFO_AUDIT_FULL_QUERY: {
1541 NDR_CHECK(ndr_push_lsa_AuditFullQueryInfo(ndr, NDR_SCALARS, &r->auditfullquery));
1542 break; }
1543
1544 case LSA_POLICY_INFO_DNS: {
1545 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr, NDR_SCALARS, &r->dns));
1546 break; }
1547
1548 case LSA_POLICY_INFO_DNS_INT: {
1549 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr, NDR_SCALARS, &r->dns));
1550 break; }
1551
1552 case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN: {
1553 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->l_account_domain));
1554 break; }
1555
1556 default:
1557 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1558 }
1559 }
1560 if (ndr_flags & NDR_BUFFERS) {
1561 int level = ndr_push_get_switch_value(ndr, r);
1562 switch (level) {
1563 case LSA_POLICY_INFO_AUDIT_LOG:
1564 break;
1565
1566 case LSA_POLICY_INFO_AUDIT_EVENTS:
1567 NDR_CHECK(ndr_push_lsa_AuditEventsInfo(ndr, NDR_BUFFERS, &r->audit_events));
1568 break;
1569
1570 case LSA_POLICY_INFO_DOMAIN:
1571 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domain));
1572 break;
1573
1574 case LSA_POLICY_INFO_PD:
1575 NDR_CHECK(ndr_push_lsa_PDAccountInfo(ndr, NDR_BUFFERS, &r->pd));
1576 break;
1577
1578 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1579 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->account_domain));
1580 break;
1581
1582 case LSA_POLICY_INFO_ROLE:
1583 break;
1584
1585 case LSA_POLICY_INFO_REPLICA:
1586 NDR_CHECK(ndr_push_lsa_ReplicaSourceInfo(ndr, NDR_BUFFERS, &r->replica));
1587 break;
1588
1589 case LSA_POLICY_INFO_QUOTA:
1590 break;
1591
1592 case LSA_POLICY_INFO_MOD:
1593 break;
1594
1595 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1596 break;
1597
1598 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1599 break;
1600
1601 case LSA_POLICY_INFO_DNS:
1602 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr, NDR_BUFFERS, &r->dns));
1603 break;
1604
1605 case LSA_POLICY_INFO_DNS_INT:
1606 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr, NDR_BUFFERS, &r->dns));
1607 break;
1608
1609 case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN:
1610 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->l_account_domain));
1611 break;
1612
1613 default:
1614 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1615 }
1616 }
1617 return NDR_ERR_SUCCESS;
1618 }
1619
1620 static enum ndr_err_code ndr_pull_lsa_PolicyInformation(struct ndr_pull *ndr, int ndr_flags, union lsa_PolicyInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
1621 {
1622 int level;
1623 uint16_t _level;
1624 level = ndr_pull_get_switch_value(ndr, r);
1625 if (ndr_flags & NDR_SCALARS) {
1626 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
1627 if (_level != level) {
1628 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
1629 }
1630 switch (level) {
1631 case LSA_POLICY_INFO_AUDIT_LOG: {
1632 NDR_CHECK(ndr_pull_lsa_AuditLogInfo(ndr, NDR_SCALARS, &r->audit_log));
1633 break; }
1634
1635 case LSA_POLICY_INFO_AUDIT_EVENTS: {
1636 NDR_CHECK(ndr_pull_lsa_AuditEventsInfo(ndr, NDR_SCALARS, &r->audit_events));
1637 break; }
1638
1639 case LSA_POLICY_INFO_DOMAIN: {
1640 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domain));
1641 break; }
1642
1643 case LSA_POLICY_INFO_PD: {
1644 NDR_CHECK(ndr_pull_lsa_PDAccountInfo(ndr, NDR_SCALARS, &r->pd));
1645 break; }
1646
1647 case LSA_POLICY_INFO_ACCOUNT_DOMAIN: {
1648 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->account_domain));
1649 break; }
1650
1651 case LSA_POLICY_INFO_ROLE: {
1652 NDR_CHECK(ndr_pull_lsa_ServerRole(ndr, NDR_SCALARS, &r->role));
1653 break; }
1654
1655 case LSA_POLICY_INFO_REPLICA: {
1656 NDR_CHECK(ndr_pull_lsa_ReplicaSourceInfo(ndr, NDR_SCALARS, &r->replica));
1657 break; }
1658
1659 case LSA_POLICY_INFO_QUOTA: {
1660 NDR_CHECK(ndr_pull_lsa_DefaultQuotaInfo(ndr, NDR_SCALARS, &r->quota));
1661 break; }
1662
1663 case LSA_POLICY_INFO_MOD: {
1664 NDR_CHECK(ndr_pull_lsa_ModificationInfo(ndr, NDR_SCALARS, &r->mod));
1665 break; }
1666
1667 case LSA_POLICY_INFO_AUDIT_FULL_SET: {
1668 NDR_CHECK(ndr_pull_lsa_AuditFullSetInfo(ndr, NDR_SCALARS, &r->auditfullset));
1669 break; }
1670
1671 case LSA_POLICY_INFO_AUDIT_FULL_QUERY: {
1672 NDR_CHECK(ndr_pull_lsa_AuditFullQueryInfo(ndr, NDR_SCALARS, &r->auditfullquery));
1673 break; }
1674
1675 case LSA_POLICY_INFO_DNS: {
1676 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr, NDR_SCALARS, &r->dns));
1677 break; }
1678
1679 case LSA_POLICY_INFO_DNS_INT: {
1680 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr, NDR_SCALARS, &r->dns));
1681 break; }
1682
1683 case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN: {
1684 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->l_account_domain));
1685 break; }
1686
1687 default:
1688 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1689 }
1690 }
1691 if (ndr_flags & NDR_BUFFERS) {
1692 switch (level) {
1693 case LSA_POLICY_INFO_AUDIT_LOG:
1694 break;
1695
1696 case LSA_POLICY_INFO_AUDIT_EVENTS:
1697 NDR_CHECK(ndr_pull_lsa_AuditEventsInfo(ndr, NDR_BUFFERS, &r->audit_events));
1698 break;
1699
1700 case LSA_POLICY_INFO_DOMAIN:
1701 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domain));
1702 break;
1703
1704 case LSA_POLICY_INFO_PD:
1705 NDR_CHECK(ndr_pull_lsa_PDAccountInfo(ndr, NDR_BUFFERS, &r->pd));
1706 break;
1707
1708 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1709 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->account_domain));
1710 break;
1711
1712 case LSA_POLICY_INFO_ROLE:
1713 break;
1714
1715 case LSA_POLICY_INFO_REPLICA:
1716 NDR_CHECK(ndr_pull_lsa_ReplicaSourceInfo(ndr, NDR_BUFFERS, &r->replica));
1717 break;
1718
1719 case LSA_POLICY_INFO_QUOTA:
1720 break;
1721
1722 case LSA_POLICY_INFO_MOD:
1723 break;
1724
1725 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1726 break;
1727
1728 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1729 break;
1730
1731 case LSA_POLICY_INFO_DNS:
1732 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr, NDR_BUFFERS, &r->dns));
1733 break;
1734
1735 case LSA_POLICY_INFO_DNS_INT:
1736 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr, NDR_BUFFERS, &r->dns));
1737 break;
1738
1739 case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN:
1740 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->l_account_domain));
1741 break;
1742
1743 default:
1744 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1745 }
1746 }
1747 return NDR_ERR_SUCCESS;
1748 }
1749
1750 _PUBLIC_ void ndr_print_lsa_PolicyInformation(struct ndr_print *ndr, const char *name, const union lsa_PolicyInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
1751 {
1752 int level;
1753 level = ndr_print_get_switch_value(ndr, r);
1754 ndr_print_union(ndr, name, level, "lsa_PolicyInformation");
1755 switch (level) {
1756 case LSA_POLICY_INFO_AUDIT_LOG:
1757 ndr_print_lsa_AuditLogInfo(ndr, "audit_log", &r->audit_log);
1758 break;
1759
1760 case LSA_POLICY_INFO_AUDIT_EVENTS:
1761 ndr_print_lsa_AuditEventsInfo(ndr, "audit_events", &r->audit_events);
1762 break;
1763
1764 case LSA_POLICY_INFO_DOMAIN:
1765 ndr_print_lsa_DomainInfo(ndr, "domain", &r->domain);
1766 break;
1767
1768 case LSA_POLICY_INFO_PD:
1769 ndr_print_lsa_PDAccountInfo(ndr, "pd", &r->pd);
1770 break;
1771
1772 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1773 ndr_print_lsa_DomainInfo(ndr, "account_domain", &r->account_domain);
1774 break;
1775
1776 case LSA_POLICY_INFO_ROLE:
1777 ndr_print_lsa_ServerRole(ndr, "role", &r->role);
1778 break;
1779
1780 case LSA_POLICY_INFO_REPLICA:
1781 ndr_print_lsa_ReplicaSourceInfo(ndr, "replica", &r->replica);
1782 break;
1783
1784 case LSA_POLICY_INFO_QUOTA:
1785 ndr_print_lsa_DefaultQuotaInfo(ndr, "quota", &r->quota);
1786 break;
1787
1788 case LSA_POLICY_INFO_MOD:
1789 ndr_print_lsa_ModificationInfo(ndr, "mod", &r->mod);
1790 break;
1791
1792 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1793 ndr_print_lsa_AuditFullSetInfo(ndr, "auditfullset", &r->auditfullset);
1794 break;
1795
1796 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1797 ndr_print_lsa_AuditFullQueryInfo(ndr, "auditfullquery", &r->auditfullquery);
1798 break;
1799
1800 case LSA_POLICY_INFO_DNS:
1801 ndr_print_lsa_DnsDomainInfo(ndr, "dns", &r->dns);
1802 break;
1803
1804 case LSA_POLICY_INFO_DNS_INT:
1805 ndr_print_lsa_DnsDomainInfo(ndr, "dns", &r->dns);
1806 break;
1807
1808 case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN:
1809 ndr_print_lsa_DomainInfo(ndr, "l_account_domain", &r->l_account_domain);
1810 break;
1811
1812 default:
1813 ndr_print_bad_level(ndr, name, level);
1814 }
1815 }
1816
1817 static enum ndr_err_code ndr_push_lsa_SidPtr(struct ndr_push *ndr, int ndr_flags, const struct lsa_SidPtr *r)
/* [<][>][^][v][top][bottom][index][help] */
1818 {
1819 if (ndr_flags & NDR_SCALARS) {
1820 NDR_CHECK(ndr_push_align(ndr, 4));
1821 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
1822 }
1823 if (ndr_flags & NDR_BUFFERS) {
1824 if (r->sid) {
1825 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1826 }
1827 }
1828 return NDR_ERR_SUCCESS;
1829 }
1830
1831 static enum ndr_err_code ndr_pull_lsa_SidPtr(struct ndr_pull *ndr, int ndr_flags, struct lsa_SidPtr *r)
/* [<][>][^][v][top][bottom][index][help] */
1832 {
1833 uint32_t _ptr_sid;
1834 TALLOC_CTX *_mem_save_sid_0;
1835 if (ndr_flags & NDR_SCALARS) {
1836 NDR_CHECK(ndr_pull_align(ndr, 4));
1837 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
1838 if (_ptr_sid) {
1839 NDR_PULL_ALLOC(ndr, r->sid);
1840 } else {
1841 r->sid = NULL;
1842 }
1843 }
1844 if (ndr_flags & NDR_BUFFERS) {
1845 if (r->sid) {
1846 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
1847 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
1848 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1849 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
1850 }
1851 }
1852 return NDR_ERR_SUCCESS;
1853 }
1854
1855 _PUBLIC_ void ndr_print_lsa_SidPtr(struct ndr_print *ndr, const char *name, const struct lsa_SidPtr *r)
/* [<][>][^][v][top][bottom][index][help] */
1856 {
1857 ndr_print_struct(ndr, name, "lsa_SidPtr");
1858 ndr->depth++;
1859 ndr_print_ptr(ndr, "sid", r->sid);
1860 ndr->depth++;
1861 if (r->sid) {
1862 ndr_print_dom_sid2(ndr, "sid", r->sid);
1863 }
1864 ndr->depth--;
1865 ndr->depth--;
1866 }
1867
1868 _PUBLIC_ enum ndr_err_code ndr_push_lsa_SidArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_SidArray *r)
/* [<][>][^][v][top][bottom][index][help] */
1869 {
1870 uint32_t cntr_sids_1;
1871 if (ndr_flags & NDR_SCALARS) {
1872 NDR_CHECK(ndr_push_align(ndr, 4));
1873 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_sids));
1874 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
1875 }
1876 if (ndr_flags & NDR_BUFFERS) {
1877 if (r->sids) {
1878 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_sids));
1879 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1880 NDR_CHECK(ndr_push_lsa_SidPtr(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1881 }
1882 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1883 NDR_CHECK(ndr_push_lsa_SidPtr(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
1884 }
1885 }
1886 }
1887 return NDR_ERR_SUCCESS;
1888 }
1889
1890 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_SidArray *r)
/* [<][>][^][v][top][bottom][index][help] */
1891 {
1892 uint32_t _ptr_sids;
1893 uint32_t cntr_sids_1;
1894 TALLOC_CTX *_mem_save_sids_0;
1895 TALLOC_CTX *_mem_save_sids_1;
1896 if (ndr_flags & NDR_SCALARS) {
1897 NDR_CHECK(ndr_pull_align(ndr, 4));
1898 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_sids));
1899 if (r->num_sids > 1000) {
1900 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
1901 }
1902 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
1903 if (_ptr_sids) {
1904 NDR_PULL_ALLOC(ndr, r->sids);
1905 } else {
1906 r->sids = NULL;
1907 }
1908 }
1909 if (ndr_flags & NDR_BUFFERS) {
1910 if (r->sids) {
1911 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
1912 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1913 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
1914 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
1915 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
1916 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1917 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1918 NDR_CHECK(ndr_pull_lsa_SidPtr(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1919 }
1920 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1921 NDR_CHECK(ndr_pull_lsa_SidPtr(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
1922 }
1923 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
1924 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
1925 }
1926 if (r->sids) {
1927 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->num_sids));
1928 }
1929 }
1930 return NDR_ERR_SUCCESS;
1931 }
1932
1933 _PUBLIC_ void ndr_print_lsa_SidArray(struct ndr_print *ndr, const char *name, const struct lsa_SidArray *r)
/* [<][>][^][v][top][bottom][index][help] */
1934 {
1935 uint32_t cntr_sids_1;
1936 ndr_print_struct(ndr, name, "lsa_SidArray");
1937 ndr->depth++;
1938 ndr_print_uint32(ndr, "num_sids", r->num_sids);
1939 ndr_print_ptr(ndr, "sids", r->sids);
1940 ndr->depth++;
1941 if (r->sids) {
1942 ndr->print(ndr, "%s: ARRAY(%d)", "sids", (int)r->num_sids);
1943 ndr->depth++;
1944 for (cntr_sids_1=0;cntr_sids_1<r->num_sids;cntr_sids_1++) {
1945 char *idx_1=NULL;
1946 if (asprintf(&idx_1, "[%d]", cntr_sids_1) != -1) {
1947 ndr_print_lsa_SidPtr(ndr, "sids", &r->sids[cntr_sids_1]);
1948 free(idx_1);
1949 }
1950 }
1951 ndr->depth--;
1952 }
1953 ndr->depth--;
1954 ndr->depth--;
1955 }
1956
1957 static enum ndr_err_code ndr_push_lsa_DomainList(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainList *r)
/* [<][>][^][v][top][bottom][index][help] */
1958 {
1959 uint32_t cntr_domains_1;
1960 if (ndr_flags & NDR_SCALARS) {
1961 NDR_CHECK(ndr_push_align(ndr, 4));
1962 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1963 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
1964 }
1965 if (ndr_flags & NDR_BUFFERS) {
1966 if (r->domains) {
1967 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1968 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1969 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
1970 }
1971 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1972 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
1973 }
1974 }
1975 }
1976 return NDR_ERR_SUCCESS;
1977 }
1978
1979 static enum ndr_err_code ndr_pull_lsa_DomainList(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainList *r)
/* [<][>][^][v][top][bottom][index][help] */
1980 {
1981 uint32_t _ptr_domains;
1982 uint32_t cntr_domains_1;
1983 TALLOC_CTX *_mem_save_domains_0;
1984 TALLOC_CTX *_mem_save_domains_1;
1985 if (ndr_flags & NDR_SCALARS) {
1986 NDR_CHECK(ndr_pull_align(ndr, 4));
1987 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1988 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
1989 if (_ptr_domains) {
1990 NDR_PULL_ALLOC(ndr, r->domains);
1991 } else {
1992 r->domains = NULL;
1993 }
1994 }
1995 if (ndr_flags & NDR_BUFFERS) {
1996 if (r->domains) {
1997 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
1998 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
1999 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
2000 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
2001 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
2002 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
2003 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
2004 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
2005 }
2006 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
2007 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
2008 }
2009 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
2010 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
2011 }
2012 if (r->domains) {
2013 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
2014 }
2015 }
2016 return NDR_ERR_SUCCESS;
2017 }
2018
2019 _PUBLIC_ void ndr_print_lsa_DomainList(struct ndr_print *ndr, const char *name, const struct lsa_DomainList *r)
/* [<][>][^][v][top][bottom][index][help] */
2020 {
2021 uint32_t cntr_domains_1;
2022 ndr_print_struct(ndr, name, "lsa_DomainList");
2023 ndr->depth++;
2024 ndr_print_uint32(ndr, "count", r->count);
2025 ndr_print_ptr(ndr, "domains", r->domains);
2026 ndr->depth++;
2027 if (r->domains) {
2028 ndr->print(ndr, "%s: ARRAY(%d)", "domains", (int)r->count);
2029 ndr->depth++;
2030 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
2031 char *idx_1=NULL;
2032 if (asprintf(&idx_1, "[%d]", cntr_domains_1) != -1) {
2033 ndr_print_lsa_DomainInfo(ndr, "domains", &r->domains[cntr_domains_1]);
2034 free(idx_1);
2035 }
2036 }
2037 ndr->depth--;
2038 }
2039 ndr->depth--;
2040 ndr->depth--;
2041 }
2042
2043 _PUBLIC_ enum ndr_err_code ndr_push_lsa_SidType(struct ndr_push *ndr, int ndr_flags, enum lsa_SidType r)
/* [<][>][^][v][top][bottom][index][help] */
2044 {
2045 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
2046 return NDR_ERR_SUCCESS;
2047 }
2048
2049 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SidType(struct ndr_pull *ndr, int ndr_flags, enum lsa_SidType *r)
/* [<][>][^][v][top][bottom][index][help] */
2050 {
2051 uint16_t v;
2052 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
2053 *r = v;
2054 return NDR_ERR_SUCCESS;
2055 }
2056
2057 _PUBLIC_ void ndr_print_lsa_SidType(struct ndr_print *ndr, const char *name, enum lsa_SidType r)
/* [<][>][^][v][top][bottom][index][help] */
2058 {
2059 const char *val = NULL;
2060
2061 switch (r) {
2062 case SID_NAME_USE_NONE: val = "SID_NAME_USE_NONE"; break;
2063 case SID_NAME_USER: val = "SID_NAME_USER"; break;
2064 case SID_NAME_DOM_GRP: val = "SID_NAME_DOM_GRP"; break;
2065 case SID_NAME_DOMAIN: val = "SID_NAME_DOMAIN"; break;
2066 case SID_NAME_ALIAS: val = "SID_NAME_ALIAS"; break;
2067 case SID_NAME_WKN_GRP: val = "SID_NAME_WKN_GRP"; break;
2068 case SID_NAME_DELETED: val = "SID_NAME_DELETED"; break;
2069 case SID_NAME_INVALID: val = "SID_NAME_INVALID"; break;
2070 case SID_NAME_UNKNOWN: val = "SID_NAME_UNKNOWN"; break;
2071 case SID_NAME_COMPUTER: val = "SID_NAME_COMPUTER"; break;
2072 }
2073 ndr_print_enum(ndr, name, "ENUM", val, r);
2074 }
2075
2076 static enum ndr_err_code ndr_push_lsa_TranslatedSid(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid *r)
/* [<][>][^][v][top][bottom][index][help] */
2077 {
2078 if (ndr_flags & NDR_SCALARS) {
2079 NDR_CHECK(ndr_push_align(ndr, 4));
2080 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
2081 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
2082 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
2083 }
2084 if (ndr_flags & NDR_BUFFERS) {
2085 }
2086 return NDR_ERR_SUCCESS;
2087 }
2088
2089 static enum ndr_err_code ndr_pull_lsa_TranslatedSid(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid *r)
/* [<][>][^][v][top][bottom][index][help] */
2090 {
2091 if (ndr_flags & NDR_SCALARS) {
2092 NDR_CHECK(ndr_pull_align(ndr, 4));
2093 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
2094 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
2095 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
2096 }
2097 if (ndr_flags & NDR_BUFFERS) {
2098 }
2099 return NDR_ERR_SUCCESS;
2100 }
2101
2102 _PUBLIC_ void ndr_print_lsa_TranslatedSid(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid *r)
/* [<][>][^][v][top][bottom][index][help] */
2103 {
2104 ndr_print_struct(ndr, name, "lsa_TranslatedSid");
2105 ndr->depth++;
2106 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
2107 ndr_print_uint32(ndr, "rid", r->rid);
2108 ndr_print_uint32(ndr, "sid_index", r->sid_index);
2109 ndr->depth--;
2110 }
2111
2112 static enum ndr_err_code ndr_push_lsa_TransSidArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray *r)
/* [<][>][^][v][top][bottom][index][help] */
2113 {
2114 uint32_t cntr_sids_1;
2115 if (ndr_flags & NDR_SCALARS) {
2116 NDR_CHECK(ndr_push_align(ndr, 4));
2117 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2118 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
2119 }
2120 if (ndr_flags & NDR_BUFFERS) {
2121 if (r->sids) {
2122 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2123 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
2124 NDR_CHECK(ndr_push_lsa_TranslatedSid(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
2125 }
2126 }
2127 }
2128 return NDR_ERR_SUCCESS;
2129 }
2130
2131 static enum ndr_err_code ndr_pull_lsa_TransSidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray *r)
/* [<][>][^][v][top][bottom][index][help] */
2132 {
2133 uint32_t _ptr_sids;
2134 uint32_t cntr_sids_1;
2135 TALLOC_CTX *_mem_save_sids_0;
2136 TALLOC_CTX *_mem_save_sids_1;
2137 if (ndr_flags & NDR_SCALARS) {
2138 NDR_CHECK(ndr_pull_align(ndr, 4));
2139 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2140 if (r->count > 1000) {
2141 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2142 }
2143 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
2144 if (_ptr_sids) {
2145 NDR_PULL_ALLOC(ndr, r->sids);
2146 } else {
2147 r->sids = NULL;
2148 }
2149 }
2150 if (ndr_flags & NDR_BUFFERS) {
2151 if (r->sids) {
2152 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
2153 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
2154 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
2155 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
2156 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
2157 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
2158 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
2159 NDR_CHECK(ndr_pull_lsa_TranslatedSid(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
2160 }
2161 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
2162 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
2163 }
2164 if (r->sids) {
2165 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
2166 }
2167 }
2168 return NDR_ERR_SUCCESS;
2169 }
2170
2171 _PUBLIC_ void ndr_print_lsa_TransSidArray(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray *r)
/* [<][>][^][v][top][bottom][index][help] */
2172 {
2173 uint32_t cntr_sids_1;
2174 ndr_print_struct(ndr, name, "lsa_TransSidArray");
2175 ndr->depth++;
2176 ndr_print_uint32(ndr, "count", r->count);
2177 ndr_print_ptr(ndr, "sids", r->sids);
2178 ndr->depth++;
2179 if (r->sids) {
2180 ndr->print(ndr, "%s: ARRAY(%d)", "sids", (int)r->count);
2181 ndr->depth++;
2182 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
2183 char *idx_1=NULL;
2184 if (asprintf(&idx_1, "[%d]", cntr_sids_1) != -1) {
2185 ndr_print_lsa_TranslatedSid(ndr, "sids", &r->sids[cntr_sids_1]);
2186 free(idx_1);
2187 }
2188 }
2189 ndr->depth--;
2190 }
2191 ndr->depth--;
2192 ndr->depth--;
2193 }
2194
2195 static enum ndr_err_code ndr_push_lsa_RefDomainList(struct ndr_push *ndr, int ndr_flags, const struct lsa_RefDomainList *r)
/* [<][>][^][v][top][bottom][index][help] */
2196 {
2197 uint32_t cntr_domains_1;
2198 if (ndr_flags & NDR_SCALARS) {
2199 NDR_CHECK(ndr_push_align(ndr, 4));
2200 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2201 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
2202 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_size));
2203 }
2204 if (ndr_flags & NDR_BUFFERS) {
2205 if (r->domains) {
2206 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2207 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
2208 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
2209 }
2210 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
2211 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
2212 }
2213 }
2214 }
2215 return NDR_ERR_SUCCESS;
2216 }
2217
2218 static enum ndr_err_code ndr_pull_lsa_RefDomainList(struct ndr_pull *ndr, int ndr_flags, struct lsa_RefDomainList *r)
/* [<][>][^][v][top][bottom][index][help] */
2219 {
2220 uint32_t _ptr_domains;
2221 uint32_t cntr_domains_1;
2222 TALLOC_CTX *_mem_save_domains_0;
2223 TALLOC_CTX *_mem_save_domains_1;
2224 if (ndr_flags & NDR_SCALARS) {
2225 NDR_CHECK(ndr_pull_align(ndr, 4));
2226 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2227 if (r->count > 1000) {
2228 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2229 }
2230 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
2231 if (_ptr_domains) {
2232 NDR_PULL_ALLOC(ndr, r->domains);
2233 } else {
2234 r->domains = NULL;
2235 }
2236 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_size));
2237 }
2238 if (ndr_flags & NDR_BUFFERS) {
2239 if (r->domains) {
2240 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
2241 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
2242 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
2243 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
2244 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
2245 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
2246 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
2247 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
2248 }
2249 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
2250 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
2251 }
2252 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
2253 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
2254 }
2255 if (r->domains) {
2256 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
2257 }
2258 }
2259 return NDR_ERR_SUCCESS;
2260 }
2261
2262 _PUBLIC_ void ndr_print_lsa_RefDomainList(struct ndr_print *ndr, const char *name, const struct lsa_RefDomainList *r)
/* [<][>][^][v][top][bottom][index][help] */
2263 {
2264 uint32_t cntr_domains_1;
2265 ndr_print_struct(ndr, name, "lsa_RefDomainList");
2266 ndr->depth++;
2267 ndr_print_uint32(ndr, "count", r->count);
2268 ndr_print_ptr(ndr, "domains", r->domains);
2269 ndr->depth++;
2270 if (r->domains) {
2271 ndr->print(ndr, "%s: ARRAY(%d)", "domains", (int)r->count);
2272 ndr->depth++;
2273 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
2274 char *idx_1=NULL;
2275 if (asprintf(&idx_1, "[%d]", cntr_domains_1) != -1) {
2276 ndr_print_lsa_DomainInfo(ndr, "domains", &r->domains[cntr_domains_1]);
2277 free(idx_1);
2278 }
2279 }
2280 ndr->depth--;
2281 }
2282 ndr->depth--;
2283 ndr_print_uint32(ndr, "max_size", r->max_size);
2284 ndr->depth--;
2285 }
2286
2287 static enum ndr_err_code ndr_push_lsa_LookupNamesLevel(struct ndr_push *ndr, int ndr_flags, enum lsa_LookupNamesLevel r)
/* [<][>][^][v][top][bottom][index][help] */
2288 {
2289 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
2290 return NDR_ERR_SUCCESS;
2291 }
2292
2293 static enum ndr_err_code ndr_pull_lsa_LookupNamesLevel(struct ndr_pull *ndr, int ndr_flags, enum lsa_LookupNamesLevel *r)
/* [<][>][^][v][top][bottom][index][help] */
2294 {
2295 uint16_t v;
2296 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
2297 *r = v;
2298 return NDR_ERR_SUCCESS;
2299 }
2300
2301 _PUBLIC_ void ndr_print_lsa_LookupNamesLevel(struct ndr_print *ndr, const char *name, enum lsa_LookupNamesLevel r)
/* [<][>][^][v][top][bottom][index][help] */
2302 {
2303 const char *val = NULL;
2304
2305 switch (r) {
2306 case LSA_LOOKUP_NAMES_ALL: val = "LSA_LOOKUP_NAMES_ALL"; break;
2307 case LSA_LOOKUP_NAMES_DOMAINS_ONLY: val = "LSA_LOOKUP_NAMES_DOMAINS_ONLY"; break;
2308 case LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY: val = "LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY"; break;
2309 case LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY: val = "LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY"; break;
2310 case LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY: val = "LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY"; break;
2311 case LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2: val = "LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2"; break;
2312 case LSA_LOOKUP_NAMES_RODC_REFERRAL_TO_FULL_DC: val = "LSA_LOOKUP_NAMES_RODC_REFERRAL_TO_FULL_DC"; break;
2313 }
2314 ndr_print_enum(ndr, name, "ENUM", val, r);
2315 }
2316
2317 static enum ndr_err_code ndr_push_lsa_TranslatedName(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedName *r)
/* [<][>][^][v][top][bottom][index][help] */
2318 {
2319 if (ndr_flags & NDR_SCALARS) {
2320 NDR_CHECK(ndr_push_align(ndr, 4));
2321 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
2322 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
2323 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
2324 }
2325 if (ndr_flags & NDR_BUFFERS) {
2326 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
2327 }
2328 return NDR_ERR_SUCCESS;
2329 }
2330
2331 static enum ndr_err_code ndr_pull_lsa_TranslatedName(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedName *r)
/* [<][>][^][v][top][bottom][index][help] */
2332 {
2333 if (ndr_flags & NDR_SCALARS) {
2334 NDR_CHECK(ndr_pull_align(ndr, 4));
2335 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
2336 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
2337 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
2338 }
2339 if (ndr_flags & NDR_BUFFERS) {
2340 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
2341 }
2342 return NDR_ERR_SUCCESS;
2343 }
2344
2345 _PUBLIC_ void ndr_print_lsa_TranslatedName(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedName *r)
/* [<][>][^][v][top][bottom][index][help] */
2346 {
2347 ndr_print_struct(ndr, name, "lsa_TranslatedName");
2348 ndr->depth++;
2349 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
2350 ndr_print_lsa_String(ndr, "name", &r->name);
2351 ndr_print_uint32(ndr, "sid_index", r->sid_index);
2352 ndr->depth--;
2353 }
2354
2355 static enum ndr_err_code ndr_push_lsa_TransNameArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransNameArray *r)
/* [<][>][^][v][top][bottom][index][help] */
2356 {
2357 uint32_t cntr_names_1;
2358 if (ndr_flags & NDR_SCALARS) {
2359 NDR_CHECK(ndr_push_align(ndr, 4));
2360 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2361 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
2362 }
2363 if (ndr_flags & NDR_BUFFERS) {
2364 if (r->names) {
2365 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2366 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2367 NDR_CHECK(ndr_push_lsa_TranslatedName(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
2368 }
2369 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2370 NDR_CHECK(ndr_push_lsa_TranslatedName(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
2371 }
2372 }
2373 }
2374 return NDR_ERR_SUCCESS;
2375 }
2376
2377 static enum ndr_err_code ndr_pull_lsa_TransNameArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray *r)
/* [<][>][^][v][top][bottom][index][help] */
2378 {
2379 uint32_t _ptr_names;
2380 uint32_t cntr_names_1;
2381 TALLOC_CTX *_mem_save_names_0;
2382 TALLOC_CTX *_mem_save_names_1;
2383 if (ndr_flags & NDR_SCALARS) {
2384 NDR_CHECK(ndr_pull_align(ndr, 4));
2385 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2386 if (r->count > 1000) {
2387 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2388 }
2389 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
2390 if (_ptr_names) {
2391 NDR_PULL_ALLOC(ndr, r->names);
2392 } else {
2393 r->names = NULL;
2394 }
2395 }
2396 if (ndr_flags & NDR_BUFFERS) {
2397 if (r->names) {
2398 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
2399 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
2400 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
2401 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
2402 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
2403 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
2404 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2405 NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
2406 }
2407 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2408 NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
2409 }
2410 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
2411 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
2412 }
2413 if (r->names) {
2414 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
2415 }
2416 }
2417 return NDR_ERR_SUCCESS;
2418 }
2419
2420 _PUBLIC_ void ndr_print_lsa_TransNameArray(struct ndr_print *ndr, const char *name, const struct lsa_TransNameArray *r)
/* [<][>][^][v][top][bottom][index][help] */
2421 {
2422 uint32_t cntr_names_1;
2423 ndr_print_struct(ndr, name, "lsa_TransNameArray");
2424 ndr->depth++;
2425 ndr_print_uint32(ndr, "count", r->count);
2426 ndr_print_ptr(ndr, "names", r->names);
2427 ndr->depth++;
2428 if (r->names) {
2429 ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->count);
2430 ndr->depth++;
2431 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
2432 char *idx_1=NULL;
2433 if (asprintf(&idx_1, "[%d]", cntr_names_1) != -1) {
2434 ndr_print_lsa_TranslatedName(ndr, "names", &r->names[cntr_names_1]);
2435 free(idx_1);
2436 }
2437 }
2438 ndr->depth--;
2439 }
2440 ndr->depth--;
2441 ndr->depth--;
2442 }
2443
2444 static enum ndr_err_code ndr_push_lsa_LUIDAttribute(struct ndr_push *ndr, int ndr_flags, const struct lsa_LUIDAttribute *r)
/* [<][>][^][v][top][bottom][index][help] */
2445 {
2446 if (ndr_flags & NDR_SCALARS) {
2447 NDR_CHECK(ndr_push_align(ndr, 4));
2448 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
2449 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->attribute));
2450 }
2451 if (ndr_flags & NDR_BUFFERS) {
2452 }
2453 return NDR_ERR_SUCCESS;
2454 }
2455
2456 static enum ndr_err_code ndr_pull_lsa_LUIDAttribute(struct ndr_pull *ndr, int ndr_flags, struct lsa_LUIDAttribute *r)
/* [<][>][^][v][top][bottom][index][help] */
2457 {
2458 if (ndr_flags & NDR_SCALARS) {
2459 NDR_CHECK(ndr_pull_align(ndr, 4));
2460 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
2461 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->attribute));
2462 }
2463 if (ndr_flags & NDR_BUFFERS) {
2464 }
2465 return NDR_ERR_SUCCESS;
2466 }
2467
2468 _PUBLIC_ void ndr_print_lsa_LUIDAttribute(struct ndr_print *ndr, const char *name, const struct lsa_LUIDAttribute *r)
/* [<][>][^][v][top][bottom][index][help] */
2469 {
2470 ndr_print_struct(ndr, name, "lsa_LUIDAttribute");
2471 ndr->depth++;
2472 ndr_print_lsa_LUID(ndr, "luid", &r->luid);
2473 ndr_print_uint32(ndr, "attribute", r->attribute);
2474 ndr->depth--;
2475 }
2476
2477 static enum ndr_err_code ndr_push_lsa_PrivilegeSet(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivilegeSet *r)
/* [<][>][^][v][top][bottom][index][help] */
2478 {
2479 uint32_t cntr_set_0;
2480 if (ndr_flags & NDR_SCALARS) {
2481 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2482 NDR_CHECK(ndr_push_align(ndr, 4));
2483 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2484 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
2485 for (cntr_set_0 = 0; cntr_set_0 < r->count; cntr_set_0++) {
2486 NDR_CHECK(ndr_push_lsa_LUIDAttribute(ndr, NDR_SCALARS, &r->set[cntr_set_0]));
2487 }
2488 }
2489 if (ndr_flags & NDR_BUFFERS) {
2490 }
2491 return NDR_ERR_SUCCESS;
2492 }
2493
2494 static enum ndr_err_code ndr_pull_lsa_PrivilegeSet(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivilegeSet *r)
/* [<][>][^][v][top][bottom][index][help] */
2495 {
2496 uint32_t cntr_set_0;
2497 TALLOC_CTX *_mem_save_set_0;
2498 if (ndr_flags & NDR_SCALARS) {
2499 NDR_CHECK(ndr_pull_array_size(ndr, &r->set));
2500 NDR_CHECK(ndr_pull_align(ndr, 4));
2501 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2502 if (r->count > 1000) {
2503 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2504 }
2505 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
2506 NDR_PULL_ALLOC_N(ndr, r->set, ndr_get_array_size(ndr, &r->set));
2507 _mem_save_set_0 = NDR_PULL_GET_MEM_CTX(ndr);
2508 NDR_PULL_SET_MEM_CTX(ndr, r->set, 0);
2509 for (cntr_set_0 = 0; cntr_set_0 < r->count; cntr_set_0++) {
2510 NDR_CHECK(ndr_pull_lsa_LUIDAttribute(ndr, NDR_SCALARS, &r->set[cntr_set_0]));
2511 }
2512 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_set_0, 0);
2513 if (r->set) {
2514 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->set, r->count));
2515 }
2516 }
2517 if (ndr_flags & NDR_BUFFERS) {
2518 }
2519 return NDR_ERR_SUCCESS;
2520 }
2521
2522 _PUBLIC_ void ndr_print_lsa_PrivilegeSet(struct ndr_print *ndr, const char *name, const struct lsa_PrivilegeSet *r)
/* [<][>][^][v][top][bottom][index][help] */
2523 {
2524 uint32_t cntr_set_0;
2525 ndr_print_struct(ndr, name, "lsa_PrivilegeSet");
2526 ndr->depth++;
2527 ndr_print_uint32(ndr, "count", r->count);
2528 ndr_print_uint32(ndr, "unknown", r->unknown);
2529 ndr->print(ndr, "%s: ARRAY(%d)", "set", (int)r->count);
2530 ndr->depth++;
2531 for (cntr_set_0=0;cntr_set_0<r->count;cntr_set_0++) {
2532 char *idx_0=NULL;
2533 if (asprintf(&idx_0, "[%d]", cntr_set_0) != -1) {
2534 ndr_print_lsa_LUIDAttribute(ndr, "set", &r->set[cntr_set_0]);
2535 free(idx_0);
2536 }
2537 }
2538 ndr->depth--;
2539 ndr->depth--;
2540 }
2541
2542 static enum ndr_err_code ndr_push_lsa_DATA_BUF(struct ndr_push *ndr, int ndr_flags, const struct lsa_DATA_BUF *r)
/* [<][>][^][v][top][bottom][index][help] */
2543 {
2544 {
2545 uint32_t _flags_save_STRUCT = ndr->flags;
2546 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2547 if (ndr_flags & NDR_SCALARS) {
2548 NDR_CHECK(ndr_push_align(ndr, 4));
2549 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
2550 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2551 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
2552 }
2553 if (ndr_flags & NDR_BUFFERS) {
2554 if (r->data) {
2555 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2556 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2557 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
2558 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->length));
2559 }
2560 }
2561 ndr->flags = _flags_save_STRUCT;
2562 }
2563 return NDR_ERR_SUCCESS;
2564 }
2565
2566 static enum ndr_err_code ndr_pull_lsa_DATA_BUF(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF *r)
/* [<][>][^][v][top][bottom][index][help] */
2567 {
2568 uint32_t _ptr_data;
2569 TALLOC_CTX *_mem_save_data_0;
2570 {
2571 uint32_t _flags_save_STRUCT = ndr->flags;
2572 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2573 if (ndr_flags & NDR_SCALARS) {
2574 NDR_CHECK(ndr_pull_align(ndr, 4));
2575 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
2576 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size));
2577 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
2578 if (_ptr_data) {
2579 NDR_PULL_ALLOC(ndr, r->data);
2580 } else {
2581 r->data = NULL;
2582 }
2583 }
2584 if (ndr_flags & NDR_BUFFERS) {
2585 if (r->data) {
2586 _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
2587 NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
2588 NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
2589 NDR_CHECK(ndr_pull_array_length(ndr, &r->data));
2590 if (ndr_get_array_length(ndr, &r->data) > ndr_get_array_size(ndr, &r->data)) {
2591 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->data), ndr_get_array_length(ndr, &r->data));
2592 }
2593 NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
2594 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_length(ndr, &r->data)));
2595 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
2596 }
2597 if (r->data) {
2598 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->size));
2599 }
2600 if (r->data) {
2601 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->data, r->length));
2602 }
2603 }
2604 ndr->flags = _flags_save_STRUCT;
2605 }
2606 return NDR_ERR_SUCCESS;
2607 }
2608
2609 _PUBLIC_ void ndr_print_lsa_DATA_BUF(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF *r)
/* [<][>][^][v][top][bottom][index][help] */
2610 {
2611 ndr_print_struct(ndr, name, "lsa_DATA_BUF");
2612 {
2613 uint32_t _flags_save_STRUCT = ndr->flags;
2614 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2615 ndr->depth++;
2616 ndr_print_uint32(ndr, "length", r->length);
2617 ndr_print_uint32(ndr, "size", r->size);
2618 ndr_print_ptr(ndr, "data", r->data);
2619 ndr->depth++;
2620 if (r->data) {
2621 ndr_print_array_uint8(ndr, "data", r->data, r->length);
2622 }
2623 ndr->depth--;
2624 ndr->depth--;
2625 ndr->flags = _flags_save_STRUCT;
2626 }
2627 }
2628
2629 static enum ndr_err_code ndr_push_lsa_DATA_BUF2(struct ndr_push *ndr, int ndr_flags, const struct lsa_DATA_BUF2 *r)
/* [<][>][^][v][top][bottom][index][help] */
2630 {
2631 {
2632 uint32_t _flags_save_STRUCT = ndr->flags;
2633 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2634 if (ndr_flags & NDR_SCALARS) {
2635 NDR_CHECK(ndr_push_align(ndr, 4));
2636 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2637 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
2638 }
2639 if (ndr_flags & NDR_BUFFERS) {
2640 if (r->data) {
2641 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2642 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->size));
2643 }
2644 }
2645 ndr->flags = _flags_save_STRUCT;
2646 }
2647 return NDR_ERR_SUCCESS;
2648 }
2649
2650 static enum ndr_err_code ndr_pull_lsa_DATA_BUF2(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF2 *r)
/* [<][>][^][v][top][bottom][index][help] */
2651 {
2652 uint32_t _ptr_data;
2653 TALLOC_CTX *_mem_save_data_0;
2654 {
2655 uint32_t _flags_save_STRUCT = ndr->flags;
2656 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2657 if (ndr_flags & NDR_SCALARS) {
2658 NDR_CHECK(ndr_pull_align(ndr, 4));
2659 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size));
2660 if (r->size > 65536) {
2661 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2662 }
2663 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
2664 if (_ptr_data) {
2665 NDR_PULL_ALLOC(ndr, r->data);
2666 } else {
2667 r->data = NULL;
2668 }
2669 }
2670 if (ndr_flags & NDR_BUFFERS) {
2671 if (r->data) {
2672 _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
2673 NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
2674 NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
2675 NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
2676 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
2677 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
2678 }
2679 if (r->data) {
2680 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->size));
2681 }
2682 }
2683 ndr->flags = _flags_save_STRUCT;
2684 }
2685 return NDR_ERR_SUCCESS;
2686 }
2687
2688 _PUBLIC_ void ndr_print_lsa_DATA_BUF2(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF2 *r)
/* [<][>][^][v][top][bottom][index][help] */
2689 {
2690 ndr_print_struct(ndr, name, "lsa_DATA_BUF2");
2691 {
2692 uint32_t _flags_save_STRUCT = ndr->flags;
2693 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2694 ndr->depth++;
2695 ndr_print_uint32(ndr, "size", r->size);
2696 ndr_print_ptr(ndr, "data", r->data);
2697 ndr->depth++;
2698 if (r->data) {
2699 ndr_print_array_uint8(ndr, "data", r->data, r->size);
2700 }
2701 ndr->depth--;
2702 ndr->depth--;
2703 ndr->flags = _flags_save_STRUCT;
2704 }
2705 }
2706
2707 static enum ndr_err_code ndr_push_lsa_TrustDomInfoEnum(struct ndr_push *ndr, int ndr_flags, enum lsa_TrustDomInfoEnum r)
/* [<][>][^][v][top][bottom][index][help] */
2708 {
2709 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
2710 return NDR_ERR_SUCCESS;
2711 }
2712
2713 static enum ndr_err_code ndr_pull_lsa_TrustDomInfoEnum(struct ndr_pull *ndr, int ndr_flags, enum lsa_TrustDomInfoEnum *r)
/* [<][>][^][v][top][bottom][index][help] */
2714 {
2715 uint16_t v;
2716 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
2717 *r = v;
2718 return NDR_ERR_SUCCESS;
2719 }
2720
2721 _PUBLIC_ void ndr_print_lsa_TrustDomInfoEnum(struct ndr_print *ndr, const char *name, enum lsa_TrustDomInfoEnum r)
/* [<][>][^][v][top][bottom][index][help] */
2722 {
2723 const char *val = NULL;
2724
2725 switch (r) {
2726 case LSA_TRUSTED_DOMAIN_INFO_NAME: val = "LSA_TRUSTED_DOMAIN_INFO_NAME"; break;
2727 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS: val = "LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS"; break;
2728 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET: val = "LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET"; break;
2729 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD: val = "LSA_TRUSTED_DOMAIN_INFO_PASSWORD"; break;
2730 case LSA_TRUSTED_DOMAIN_INFO_BASIC: val = "LSA_TRUSTED_DOMAIN_INFO_BASIC"; break;
2731 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX: val = "LSA_TRUSTED_DOMAIN_INFO_INFO_EX"; break;
2732 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO: val = "LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO"; break;
2733 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO: val = "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO"; break;
2734 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL: val = "LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL"; break;
2735 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL: val = "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL"; break;
2736 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL: val = "LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL"; break;
2737 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL: val = "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL"; break;
2738 case LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES: val = "LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES"; break;
2739 }
2740 ndr_print_enum(ndr, name, "ENUM", val, r);
2741 }
2742
2743 _PUBLIC_ enum ndr_err_code ndr_push_lsa_TrustDirection(struct ndr_push *ndr, int ndr_flags, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
2744 {
2745 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
2746 return NDR_ERR_SUCCESS;
2747 }
2748
2749 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_TrustDirection(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
/* [<][>][^][v][top][bottom][index][help] */
2750 {
2751 uint32_t v;
2752 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
2753 *r = v;
2754 return NDR_ERR_SUCCESS;
2755 }
2756
2757 _PUBLIC_ void ndr_print_lsa_TrustDirection(struct ndr_print *ndr, const char *name, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
2758 {
2759 ndr_print_uint32(ndr, name, r);
2760 ndr->depth++;
2761 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_DIRECTION_INBOUND", LSA_TRUST_DIRECTION_INBOUND, r);
2762 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_DIRECTION_OUTBOUND", LSA_TRUST_DIRECTION_OUTBOUND, r);
2763 ndr->depth--;
2764 }
2765
2766 static enum ndr_err_code ndr_push_lsa_TrustType(struct ndr_push *ndr, int ndr_flags, enum lsa_TrustType r)
/* [<][>][^][v][top][bottom][index][help] */
2767 {
2768 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
2769 return NDR_ERR_SUCCESS;
2770 }
2771
2772 static enum ndr_err_code ndr_pull_lsa_TrustType(struct ndr_pull *ndr, int ndr_flags, enum lsa_TrustType *r)
/* [<][>][^][v][top][bottom][index][help] */
2773 {
2774 uint32_t v;
2775 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
2776 *r = v;
2777 return NDR_ERR_SUCCESS;
2778 }
2779
2780 _PUBLIC_ void ndr_print_lsa_TrustType(struct ndr_print *ndr, const char *name, enum lsa_TrustType r)
/* [<][>][^][v][top][bottom][index][help] */
2781 {
2782 const char *val = NULL;
2783
2784 switch (r) {
2785 case LSA_TRUST_TYPE_DOWNLEVEL: val = "LSA_TRUST_TYPE_DOWNLEVEL"; break;
2786 case LSA_TRUST_TYPE_UPLEVEL: val = "LSA_TRUST_TYPE_UPLEVEL"; break;
2787 case LSA_TRUST_TYPE_MIT: val = "LSA_TRUST_TYPE_MIT"; break;
2788 }
2789 ndr_print_enum(ndr, name, "ENUM", val, r);
2790 }
2791
2792 _PUBLIC_ enum ndr_err_code ndr_push_lsa_TrustAttributes(struct ndr_push *ndr, int ndr_flags, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
2793 {
2794 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
2795 return NDR_ERR_SUCCESS;
2796 }
2797
2798 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_TrustAttributes(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
/* [<][>][^][v][top][bottom][index][help] */
2799 {
2800 uint32_t v;
2801 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
2802 *r = v;
2803 return NDR_ERR_SUCCESS;
2804 }
2805
2806 _PUBLIC_ void ndr_print_lsa_TrustAttributes(struct ndr_print *ndr, const char *name, uint32_t r)
/* [<][>][^][v][top][bottom][index][help] */
2807 {
2808 ndr_print_uint32(ndr, name, r);
2809 ndr->depth++;
2810 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE", LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE, r);
2811 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY", LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY, r);
2812 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN", LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN, r);
2813 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE", LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE, r);
2814 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION", LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION, r);
2815 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_ATTRIBUTE_WITHIN_FOREST", LSA_TRUST_ATTRIBUTE_WITHIN_FOREST, r);
2816 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL", LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL, r);
2817 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION", LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION, r);
2818 ndr->depth--;
2819 }
2820
2821 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoName(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoName *r)
/* [<][>][^][v][top][bottom][index][help] */
2822 {
2823 if (ndr_flags & NDR_SCALARS) {
2824 NDR_CHECK(ndr_push_align(ndr, 4));
2825 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2826 }
2827 if (ndr_flags & NDR_BUFFERS) {
2828 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2829 }
2830 return NDR_ERR_SUCCESS;
2831 }
2832
2833 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoName(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoName *r)
/* [<][>][^][v][top][bottom][index][help] */
2834 {
2835 if (ndr_flags & NDR_SCALARS) {
2836 NDR_CHECK(ndr_pull_align(ndr, 4));
2837 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2838 }
2839 if (ndr_flags & NDR_BUFFERS) {
2840 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2841 }
2842 return NDR_ERR_SUCCESS;
2843 }
2844
2845 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoName(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoName *r)
/* [<][>][^][v][top][bottom][index][help] */
2846 {
2847 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoName");
2848 ndr->depth++;
2849 ndr_print_lsa_StringLarge(ndr, "netbios_name", &r->netbios_name);
2850 ndr->depth--;
2851 }
2852
2853 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoControllers(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoControllers *r)
/* [<][>][^][v][top][bottom][index][help] */
2854 {
2855 uint32_t cntr_netbios_names_1;
2856 if (ndr_flags & NDR_SCALARS) {
2857 NDR_CHECK(ndr_push_align(ndr, 4));
2858 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->entries));
2859 NDR_CHECK(ndr_push_unique_ptr(ndr, r->netbios_names));
2860 }
2861 if (ndr_flags & NDR_BUFFERS) {
2862 if (r->netbios_names) {
2863 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->entries));
2864 for (cntr_netbios_names_1 = 0; cntr_netbios_names_1 < r->entries; cntr_netbios_names_1++) {
2865 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_names[cntr_netbios_names_1]));
2866 }
2867 for (cntr_netbios_names_1 = 0; cntr_netbios_names_1 < r->entries; cntr_netbios_names_1++) {
2868 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_names[cntr_netbios_names_1]));
2869 }
2870 }
2871 }
2872 return NDR_ERR_SUCCESS;
2873 }
2874
2875 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoControllers(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoControllers *r)
/* [<][>][^][v][top][bottom][index][help] */
2876 {
2877 uint32_t _ptr_netbios_names;
2878 uint32_t cntr_netbios_names_1;
2879 TALLOC_CTX *_mem_save_netbios_names_0;
2880 TALLOC_CTX *_mem_save_netbios_names_1;
2881 if (ndr_flags & NDR_SCALARS) {
2882 NDR_CHECK(ndr_pull_align(ndr, 4));
2883 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->entries));
2884 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_netbios_names));
2885 if (_ptr_netbios_names) {
2886 NDR_PULL_ALLOC(ndr, r->netbios_names);
2887 } else {
2888 r->netbios_names = NULL;
2889 }
2890 }
2891 if (ndr_flags & NDR_BUFFERS) {
2892 if (r->netbios_names) {
2893 _mem_save_netbios_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
2894 NDR_PULL_SET_MEM_CTX(ndr, r->netbios_names, 0);
2895 NDR_CHECK(ndr_pull_array_size(ndr, &r->netbios_names));
2896 NDR_PULL_ALLOC_N(ndr, r->netbios_names, ndr_get_array_size(ndr, &r->netbios_names));
2897 _mem_save_netbios_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
2898 NDR_PULL_SET_MEM_CTX(ndr, r->netbios_names, 0);
2899 for (cntr_netbios_names_1 = 0; cntr_netbios_names_1 < r->entries; cntr_netbios_names_1++) {
2900 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_names[cntr_netbios_names_1]));
2901 }
2902 for (cntr_netbios_names_1 = 0; cntr_netbios_names_1 < r->entries; cntr_netbios_names_1++) {
2903 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_names[cntr_netbios_names_1]));
2904 }
2905 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_netbios_names_1, 0);
2906 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_netbios_names_0, 0);
2907 }
2908 if (r->netbios_names) {
2909 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->netbios_names, r->entries));
2910 }
2911 }
2912 return NDR_ERR_SUCCESS;
2913 }
2914
2915 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoControllers(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoControllers *r)
/* [<][>][^][v][top][bottom][index][help] */
2916 {
2917 uint32_t cntr_netbios_names_1;
2918 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoControllers");
2919 ndr->depth++;
2920 ndr_print_uint32(ndr, "entries", r->entries);
2921 ndr_print_ptr(ndr, "netbios_names", r->netbios_names);
2922 ndr->depth++;
2923 if (r->netbios_names) {
2924 ndr->print(ndr, "%s: ARRAY(%d)", "netbios_names", (int)r->entries);
2925 ndr->depth++;
2926 for (cntr_netbios_names_1=0;cntr_netbios_names_1<r->entries;cntr_netbios_names_1++) {
2927 char *idx_1=NULL;
2928 if (asprintf(&idx_1, "[%d]", cntr_netbios_names_1) != -1) {
2929 ndr_print_lsa_StringLarge(ndr, "netbios_names", &r->netbios_names[cntr_netbios_names_1]);
2930 free(idx_1);
2931 }
2932 }
2933 ndr->depth--;
2934 }
2935 ndr->depth--;
2936 ndr->depth--;
2937 }
2938
2939 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoPosixOffset(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoPosixOffset *r)
/* [<][>][^][v][top][bottom][index][help] */
2940 {
2941 if (ndr_flags & NDR_SCALARS) {
2942 NDR_CHECK(ndr_push_align(ndr, 4));
2943 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->posix_offset));
2944 }
2945 if (ndr_flags & NDR_BUFFERS) {
2946 }
2947 return NDR_ERR_SUCCESS;
2948 }
2949
2950 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoPosixOffset(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoPosixOffset *r)
/* [<][>][^][v][top][bottom][index][help] */
2951 {
2952 if (ndr_flags & NDR_SCALARS) {
2953 NDR_CHECK(ndr_pull_align(ndr, 4));
2954 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->posix_offset));
2955 }
2956 if (ndr_flags & NDR_BUFFERS) {
2957 }
2958 return NDR_ERR_SUCCESS;
2959 }
2960
2961 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoPosixOffset(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoPosixOffset *r)
/* [<][>][^][v][top][bottom][index][help] */
2962 {
2963 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoPosixOffset");
2964 ndr->depth++;
2965 ndr_print_uint32(ndr, "posix_offset", r->posix_offset);
2966 ndr->depth--;
2967 }
2968
2969 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoPassword(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoPassword *r)
/* [<][>][^][v][top][bottom][index][help] */
2970 {
2971 if (ndr_flags & NDR_SCALARS) {
2972 NDR_CHECK(ndr_push_align(ndr, 4));
2973 NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
2974 NDR_CHECK(ndr_push_unique_ptr(ndr, r->old_password));
2975 }
2976 if (ndr_flags & NDR_BUFFERS) {
2977 if (r->password) {
2978 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->password));
2979 }
2980 if (r->old_password) {
2981 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->old_password));
2982 }
2983 }
2984 return NDR_ERR_SUCCESS;
2985 }
2986
2987 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoPassword(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoPassword *r)
/* [<][>][^][v][top][bottom][index][help] */
2988 {
2989 uint32_t _ptr_password;
2990 TALLOC_CTX *_mem_save_password_0;
2991 uint32_t _ptr_old_password;
2992 TALLOC_CTX *_mem_save_old_password_0;
2993 if (ndr_flags & NDR_SCALARS) {
2994 NDR_CHECK(ndr_pull_align(ndr, 4));
2995 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
2996 if (_ptr_password) {
2997 NDR_PULL_ALLOC(ndr, r->password);
2998 } else {
2999 r->password = NULL;
3000 }
3001 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_password));
3002 if (_ptr_old_password) {
3003 NDR_PULL_ALLOC(ndr, r->old_password);
3004 } else {
3005 r->old_password = NULL;
3006 }
3007 }
3008 if (ndr_flags & NDR_BUFFERS) {
3009 if (r->password) {
3010 _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
3011 NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
3012 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->password));
3013 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
3014 }
3015 if (r->old_password) {
3016 _mem_save_old_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
3017 NDR_PULL_SET_MEM_CTX(ndr, r->old_password, 0);
3018 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->old_password));
3019 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_password_0, 0);
3020 }
3021 }
3022 return NDR_ERR_SUCCESS;
3023 }
3024
3025 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoPassword(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoPassword *r)
/* [<][>][^][v][top][bottom][index][help] */
3026 {
3027 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoPassword");
3028 ndr->depth++;
3029 ndr_print_ptr(ndr, "password", r->password);
3030 ndr->depth++;
3031 if (r->password) {
3032 ndr_print_lsa_DATA_BUF(ndr, "password", r->password);
3033 }
3034 ndr->depth--;
3035 ndr_print_ptr(ndr, "old_password", r->old_password);
3036 ndr->depth++;
3037 if (r->old_password) {
3038 ndr_print_lsa_DATA_BUF(ndr, "old_password", r->old_password);
3039 }
3040 ndr->depth--;
3041 ndr->depth--;
3042 }
3043
3044 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoBasic(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoBasic *r)
/* [<][>][^][v][top][bottom][index][help] */
3045 {
3046 if (ndr_flags & NDR_SCALARS) {
3047 NDR_CHECK(ndr_push_align(ndr, 4));
3048 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->netbios_name));
3049 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
3050 }
3051 if (ndr_flags & NDR_BUFFERS) {
3052 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->netbios_name));
3053 if (r->sid) {
3054 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
3055 }
3056 }
3057 return NDR_ERR_SUCCESS;
3058 }
3059
3060 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoBasic(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoBasic *r)
/* [<][>][^][v][top][bottom][index][help] */
3061 {
3062 uint32_t _ptr_sid;
3063 TALLOC_CTX *_mem_save_sid_0;
3064 if (ndr_flags & NDR_SCALARS) {
3065 NDR_CHECK(ndr_pull_align(ndr, 4));
3066 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->netbios_name));
3067 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
3068 if (_ptr_sid) {
3069 NDR_PULL_ALLOC(ndr, r->sid);
3070 } else {
3071 r->sid = NULL;
3072 }
3073 }
3074 if (ndr_flags & NDR_BUFFERS) {
3075 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->netbios_name));
3076 if (r->sid) {
3077 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
3078 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
3079 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
3080 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
3081 }
3082 }
3083 return NDR_ERR_SUCCESS;
3084 }
3085
3086 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoBasic(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoBasic *r)
/* [<][>][^][v][top][bottom][index][help] */
3087 {
3088 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoBasic");
3089 ndr->depth++;
3090 ndr_print_lsa_String(ndr, "netbios_name", &r->netbios_name);
3091 ndr_print_ptr(ndr, "sid", r->sid);
3092 ndr->depth++;
3093 if (r->sid) {
3094 ndr_print_dom_sid2(ndr, "sid", r->sid);
3095 }
3096 ndr->depth--;
3097 ndr->depth--;
3098 }
3099
3100 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoInfoEx(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoInfoEx *r)
/* [<][>][^][v][top][bottom][index][help] */
3101 {
3102 if (ndr_flags & NDR_SCALARS) {
3103 NDR_CHECK(ndr_push_align(ndr, 4));
3104 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->domain_name));
3105 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
3106 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
3107 NDR_CHECK(ndr_push_lsa_TrustDirection(ndr, NDR_SCALARS, r->trust_direction));
3108 NDR_CHECK(ndr_push_lsa_TrustType(ndr, NDR_SCALARS, r->trust_type));
3109 NDR_CHECK(ndr_push_lsa_TrustAttributes(ndr, NDR_SCALARS, r->trust_attributes));
3110 }
3111 if (ndr_flags & NDR_BUFFERS) {
3112 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->domain_name));
3113 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
3114 if (r->sid) {
3115 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
3116 }
3117 }
3118 return NDR_ERR_SUCCESS;
3119 }
3120
3121 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoInfoEx(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoInfoEx *r)
/* [<][>][^][v][top][bottom][index][help] */
3122 {
3123 uint32_t _ptr_sid;
3124 TALLOC_CTX *_mem_save_sid_0;
3125 if (ndr_flags & NDR_SCALARS) {
3126 NDR_CHECK(ndr_pull_align(ndr, 4));
3127 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->domain_name));
3128 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
3129 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
3130 if (_ptr_sid) {
3131 NDR_PULL_ALLOC(ndr, r->sid);
3132 } else {
3133 r->sid = NULL;
3134 }
3135 NDR_CHECK(ndr_pull_lsa_TrustDirection(ndr, NDR_SCALARS, &r->trust_direction));
3136 NDR_CHECK(ndr_pull_lsa_TrustType(ndr, NDR_SCALARS, &r->trust_type));
3137 NDR_CHECK(ndr_pull_lsa_TrustAttributes(ndr, NDR_SCALARS, &r->trust_attributes));
3138 }
3139 if (ndr_flags & NDR_BUFFERS) {
3140 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->domain_name));
3141 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
3142 if (r->sid) {
3143 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
3144 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
3145 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
3146 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
3147 }
3148 }
3149 return NDR_ERR_SUCCESS;
3150 }
3151
3152 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoInfoEx(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoInfoEx *r)
/* [<][>][^][v][top][bottom][index][help] */
3153 {
3154 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoInfoEx");
3155 ndr->depth++;
3156 ndr_print_lsa_StringLarge(ndr, "domain_name", &r->domain_name);
3157 ndr_print_lsa_StringLarge(ndr, "netbios_name", &r->netbios_name);
3158 ndr_print_ptr(ndr, "sid", r->sid);
3159 ndr->depth++;
3160 if (r->sid) {
3161 ndr_print_dom_sid2(ndr, "sid", r->sid);
3162 }
3163 ndr->depth--;
3164 ndr_print_lsa_TrustDirection(ndr, "trust_direction", r->trust_direction);
3165 ndr_print_lsa_TrustType(ndr, "trust_type", r->trust_type);
3166 ndr_print_lsa_TrustAttributes(ndr, "trust_attributes", r->trust_attributes);
3167 ndr->depth--;
3168 }
3169
3170 _PUBLIC_ enum ndr_err_code ndr_push_lsa_TrustAuthType(struct ndr_push *ndr, int ndr_flags, enum lsa_TrustAuthType r)
/* [<][>][^][v][top][bottom][index][help] */
3171 {
3172 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
3173 return NDR_ERR_SUCCESS;
3174 }
3175
3176 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_TrustAuthType(struct ndr_pull *ndr, int ndr_flags, enum lsa_TrustAuthType *r)
/* [<][>][^][v][top][bottom][index][help] */
3177 {
3178 uint32_t v;
3179 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
3180 *r = v;
3181 return NDR_ERR_SUCCESS;
3182 }
3183
3184 _PUBLIC_ void ndr_print_lsa_TrustAuthType(struct ndr_print *ndr, const char *name, enum lsa_TrustAuthType r)
/* [<][>][^][v][top][bottom][index][help] */
3185 {
3186 const char *val = NULL;
3187
3188 switch (r) {
3189 case TRUST_AUTH_TYPE_NONE: val = "TRUST_AUTH_TYPE_NONE"; break;
3190 case TRUST_AUTH_TYPE_NT4OWF: val = "TRUST_AUTH_TYPE_NT4OWF"; break;
3191 case TRUST_AUTH_TYPE_CLEAR: val = "TRUST_AUTH_TYPE_CLEAR"; break;
3192 case TRUST_AUTH_TYPE_VERSION: val = "TRUST_AUTH_TYPE_VERSION"; break;
3193 }
3194 ndr_print_enum(ndr, name, "ENUM", val, r);
3195 }
3196
3197 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoBuffer(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoBuffer *r)
/* [<][>][^][v][top][bottom][index][help] */
3198 {
3199 if (ndr_flags & NDR_SCALARS) {
3200 NDR_CHECK(ndr_push_align(ndr, 8));
3201 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->last_update_time));
3202 NDR_CHECK(ndr_push_lsa_TrustAuthType(ndr, NDR_SCALARS, r->AuthType));
3203 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data));
3204 }
3205 if (ndr_flags & NDR_BUFFERS) {
3206 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data));
3207 }
3208 return NDR_ERR_SUCCESS;
3209 }
3210
3211 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoBuffer(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoBuffer *r)
/* [<][>][^][v][top][bottom][index][help] */
3212 {
3213 if (ndr_flags & NDR_SCALARS) {
3214 NDR_CHECK(ndr_pull_align(ndr, 8));
3215 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->last_update_time));
3216 NDR_CHECK(ndr_pull_lsa_TrustAuthType(ndr, NDR_SCALARS, &r->AuthType));
3217 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data));
3218 }
3219 if (ndr_flags & NDR_BUFFERS) {
3220 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data));
3221 }
3222 return NDR_ERR_SUCCESS;
3223 }
3224
3225 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoBuffer(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoBuffer *r)
/* [<][>][^][v][top][bottom][index][help] */
3226 {
3227 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoBuffer");
3228 ndr->depth++;
3229 ndr_print_NTTIME_hyper(ndr, "last_update_time", r->last_update_time);
3230 ndr_print_lsa_TrustAuthType(ndr, "AuthType", r->AuthType);
3231 ndr_print_lsa_DATA_BUF2(ndr, "data", &r->data);
3232 ndr->depth--;
3233 }
3234
3235 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoAuthInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoAuthInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3236 {
3237 if (ndr_flags & NDR_SCALARS) {
3238 NDR_CHECK(ndr_push_align(ndr, 4));
3239 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->incoming_count));
3240 NDR_CHECK(ndr_push_unique_ptr(ndr, r->incoming_current_auth_info));
3241 NDR_CHECK(ndr_push_unique_ptr(ndr, r->incoming_previous_auth_info));
3242 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->outgoing_count));
3243 NDR_CHECK(ndr_push_unique_ptr(ndr, r->outgoing_current_auth_info));
3244 NDR_CHECK(ndr_push_unique_ptr(ndr, r->outgoing_previous_auth_info));
3245 }
3246 if (ndr_flags & NDR_BUFFERS) {
3247 if (r->incoming_current_auth_info) {
3248 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_current_auth_info));
3249 }
3250 if (r->incoming_previous_auth_info) {
3251 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_previous_auth_info));
3252 }
3253 if (r->outgoing_current_auth_info) {
3254 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_current_auth_info));
3255 }
3256 if (r->outgoing_previous_auth_info) {
3257 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_previous_auth_info));
3258 }
3259 }
3260 return NDR_ERR_SUCCESS;
3261 }
3262
3263 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoAuthInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoAuthInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3264 {
3265 uint32_t _ptr_incoming_current_auth_info;
3266 TALLOC_CTX *_mem_save_incoming_current_auth_info_0;
3267 uint32_t _ptr_incoming_previous_auth_info;
3268 TALLOC_CTX *_mem_save_incoming_previous_auth_info_0;
3269 uint32_t _ptr_outgoing_current_auth_info;
3270 TALLOC_CTX *_mem_save_outgoing_current_auth_info_0;
3271 uint32_t _ptr_outgoing_previous_auth_info;
3272 TALLOC_CTX *_mem_save_outgoing_previous_auth_info_0;
3273 if (ndr_flags & NDR_SCALARS) {
3274 NDR_CHECK(ndr_pull_align(ndr, 4));
3275 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->incoming_count));
3276 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_incoming_current_auth_info));
3277 if (_ptr_incoming_current_auth_info) {
3278 NDR_PULL_ALLOC(ndr, r->incoming_current_auth_info);
3279 } else {
3280 r->incoming_current_auth_info = NULL;
3281 }
3282 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_incoming_previous_auth_info));
3283 if (_ptr_incoming_previous_auth_info) {
3284 NDR_PULL_ALLOC(ndr, r->incoming_previous_auth_info);
3285 } else {
3286 r->incoming_previous_auth_info = NULL;
3287 }
3288 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->outgoing_count));
3289 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_outgoing_current_auth_info));
3290 if (_ptr_outgoing_current_auth_info) {
3291 NDR_PULL_ALLOC(ndr, r->outgoing_current_auth_info);
3292 } else {
3293 r->outgoing_current_auth_info = NULL;
3294 }
3295 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_outgoing_previous_auth_info));
3296 if (_ptr_outgoing_previous_auth_info) {
3297 NDR_PULL_ALLOC(ndr, r->outgoing_previous_auth_info);
3298 } else {
3299 r->outgoing_previous_auth_info = NULL;
3300 }
3301 }
3302 if (ndr_flags & NDR_BUFFERS) {
3303 if (r->incoming_current_auth_info) {
3304 _mem_save_incoming_current_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
3305 NDR_PULL_SET_MEM_CTX(ndr, r->incoming_current_auth_info, 0);
3306 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_current_auth_info));
3307 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_incoming_current_auth_info_0, 0);
3308 }
3309 if (r->incoming_previous_auth_info) {
3310 _mem_save_incoming_previous_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
3311 NDR_PULL_SET_MEM_CTX(ndr, r->incoming_previous_auth_info, 0);
3312 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_previous_auth_info));
3313 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_incoming_previous_auth_info_0, 0);
3314 }
3315 if (r->outgoing_current_auth_info) {
3316 _mem_save_outgoing_current_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
3317 NDR_PULL_SET_MEM_CTX(ndr, r->outgoing_current_auth_info, 0);
3318 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_current_auth_info));
3319 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_outgoing_current_auth_info_0, 0);
3320 }
3321 if (r->outgoing_previous_auth_info) {
3322 _mem_save_outgoing_previous_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
3323 NDR_PULL_SET_MEM_CTX(ndr, r->outgoing_previous_auth_info, 0);
3324 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_previous_auth_info));
3325 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_outgoing_previous_auth_info_0, 0);
3326 }
3327 }
3328 return NDR_ERR_SUCCESS;
3329 }
3330
3331 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoAuthInfo(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoAuthInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3332 {
3333 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoAuthInfo");
3334 ndr->depth++;
3335 ndr_print_uint32(ndr, "incoming_count", r->incoming_count);
3336 ndr_print_ptr(ndr, "incoming_current_auth_info", r->incoming_current_auth_info);
3337 ndr->depth++;
3338 if (r->incoming_current_auth_info) {
3339 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "incoming_current_auth_info", r->incoming_current_auth_info);
3340 }
3341 ndr->depth--;
3342 ndr_print_ptr(ndr, "incoming_previous_auth_info", r->incoming_previous_auth_info);
3343 ndr->depth++;
3344 if (r->incoming_previous_auth_info) {
3345 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "incoming_previous_auth_info", r->incoming_previous_auth_info);
3346 }
3347 ndr->depth--;
3348 ndr_print_uint32(ndr, "outgoing_count", r->outgoing_count);
3349 ndr_print_ptr(ndr, "outgoing_current_auth_info", r->outgoing_current_auth_info);
3350 ndr->depth++;
3351 if (r->outgoing_current_auth_info) {
3352 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "outgoing_current_auth_info", r->outgoing_current_auth_info);
3353 }
3354 ndr->depth--;
3355 ndr_print_ptr(ndr, "outgoing_previous_auth_info", r->outgoing_previous_auth_info);
3356 ndr->depth++;
3357 if (r->outgoing_previous_auth_info) {
3358 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "outgoing_previous_auth_info", r->outgoing_previous_auth_info);
3359 }
3360 ndr->depth--;
3361 ndr->depth--;
3362 }
3363
3364 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoFullInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoFullInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3365 {
3366 if (ndr_flags & NDR_SCALARS) {
3367 NDR_CHECK(ndr_push_align(ndr, 4));
3368 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3369 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3370 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3371 }
3372 if (ndr_flags & NDR_BUFFERS) {
3373 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3374 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3375 }
3376 return NDR_ERR_SUCCESS;
3377 }
3378
3379 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoFullInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoFullInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3380 {
3381 if (ndr_flags & NDR_SCALARS) {
3382 NDR_CHECK(ndr_pull_align(ndr, 4));
3383 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3384 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3385 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3386 }
3387 if (ndr_flags & NDR_BUFFERS) {
3388 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3389 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3390 }
3391 return NDR_ERR_SUCCESS;
3392 }
3393
3394 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoFullInfo(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoFullInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3395 {
3396 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoFullInfo");
3397 ndr->depth++;
3398 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
3399 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
3400 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
3401 ndr->depth--;
3402 }
3403
3404 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoAuthInfoInternal(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoAuthInfoInternal *r)
/* [<][>][^][v][top][bottom][index][help] */
3405 {
3406 if (ndr_flags & NDR_SCALARS) {
3407 NDR_CHECK(ndr_push_align(ndr, 4));
3408 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->auth_blob));
3409 }
3410 if (ndr_flags & NDR_BUFFERS) {
3411 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->auth_blob));
3412 }
3413 return NDR_ERR_SUCCESS;
3414 }
3415
3416 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoAuthInfoInternal(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoAuthInfoInternal *r)
/* [<][>][^][v][top][bottom][index][help] */
3417 {
3418 if (ndr_flags & NDR_SCALARS) {
3419 NDR_CHECK(ndr_pull_align(ndr, 4));
3420 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->auth_blob));
3421 }
3422 if (ndr_flags & NDR_BUFFERS) {
3423 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->auth_blob));
3424 }
3425 return NDR_ERR_SUCCESS;
3426 }
3427
3428 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoAuthInfoInternal(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoAuthInfoInternal *r)
/* [<][>][^][v][top][bottom][index][help] */
3429 {
3430 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoAuthInfoInternal");
3431 ndr->depth++;
3432 ndr_print_lsa_DATA_BUF2(ndr, "auth_blob", &r->auth_blob);
3433 ndr->depth--;
3434 }
3435
3436 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoFullInfoInternal(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoFullInfoInternal *r)
/* [<][>][^][v][top][bottom][index][help] */
3437 {
3438 if (ndr_flags & NDR_SCALARS) {
3439 NDR_CHECK(ndr_push_align(ndr, 4));
3440 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3441 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3442 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_SCALARS, &r->auth_info));
3443 }
3444 if (ndr_flags & NDR_BUFFERS) {
3445 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3446 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_BUFFERS, &r->auth_info));
3447 }
3448 return NDR_ERR_SUCCESS;
3449 }
3450
3451 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoFullInfoInternal(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoFullInfoInternal *r)
/* [<][>][^][v][top][bottom][index][help] */
3452 {
3453 if (ndr_flags & NDR_SCALARS) {
3454 NDR_CHECK(ndr_pull_align(ndr, 4));
3455 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3456 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3457 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_SCALARS, &r->auth_info));
3458 }
3459 if (ndr_flags & NDR_BUFFERS) {
3460 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3461 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_BUFFERS, &r->auth_info));
3462 }
3463 return NDR_ERR_SUCCESS;
3464 }
3465
3466 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoFullInfoInternal(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoFullInfoInternal *r)
/* [<][>][^][v][top][bottom][index][help] */
3467 {
3468 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoFullInfoInternal");
3469 ndr->depth++;
3470 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
3471 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
3472 ndr_print_lsa_TrustDomainInfoAuthInfoInternal(ndr, "auth_info", &r->auth_info);
3473 ndr->depth--;
3474 }
3475
3476 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoInfoEx2Internal(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoInfoEx2Internal *r)
/* [<][>][^][v][top][bottom][index][help] */
3477 {
3478 if (ndr_flags & NDR_SCALARS) {
3479 NDR_CHECK(ndr_push_align(ndr, 4));
3480 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3481 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->forest_trust_length));
3482 NDR_CHECK(ndr_push_unique_ptr(ndr, r->forest_trust_data));
3483 }
3484 if (ndr_flags & NDR_BUFFERS) {
3485 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3486 if (r->forest_trust_data) {
3487 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->forest_trust_length));
3488 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->forest_trust_data, r->forest_trust_length));
3489 }
3490 }
3491 return NDR_ERR_SUCCESS;
3492 }
3493
3494 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoInfoEx2Internal(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoInfoEx2Internal *r)
/* [<][>][^][v][top][bottom][index][help] */
3495 {
3496 uint32_t _ptr_forest_trust_data;
3497 TALLOC_CTX *_mem_save_forest_trust_data_0;
3498 if (ndr_flags & NDR_SCALARS) {
3499 NDR_CHECK(ndr_pull_align(ndr, 4));
3500 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3501 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->forest_trust_length));
3502 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_forest_trust_data));
3503 if (_ptr_forest_trust_data) {
3504 NDR_PULL_ALLOC(ndr, r->forest_trust_data);
3505 } else {
3506 r->forest_trust_data = NULL;
3507 }
3508 }
3509 if (ndr_flags & NDR_BUFFERS) {
3510 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3511 if (r->forest_trust_data) {
3512 _mem_save_forest_trust_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
3513 NDR_PULL_SET_MEM_CTX(ndr, r->forest_trust_data, 0);
3514 NDR_CHECK(ndr_pull_array_size(ndr, &r->forest_trust_data));
3515 NDR_PULL_ALLOC_N(ndr, r->forest_trust_data, ndr_get_array_size(ndr, &r->forest_trust_data));
3516 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->forest_trust_data, ndr_get_array_size(ndr, &r->forest_trust_data)));
3517 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_forest_trust_data_0, 0);
3518 }
3519 if (r->forest_trust_data) {
3520 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->forest_trust_data, r->forest_trust_length));
3521 }
3522 }
3523 return NDR_ERR_SUCCESS;
3524 }
3525
3526 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoInfoEx2Internal(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoInfoEx2Internal *r)
/* [<][>][^][v][top][bottom][index][help] */
3527 {
3528 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoInfoEx2Internal");
3529 ndr->depth++;
3530 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
3531 ndr_print_uint32(ndr, "forest_trust_length", r->forest_trust_length);
3532 ndr_print_ptr(ndr, "forest_trust_data", r->forest_trust_data);
3533 ndr->depth++;
3534 if (r->forest_trust_data) {
3535 ndr_print_array_uint8(ndr, "forest_trust_data", r->forest_trust_data, r->forest_trust_length);
3536 }
3537 ndr->depth--;
3538 ndr->depth--;
3539 }
3540
3541 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoFullInfo2Internal(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoFullInfo2Internal *r)
/* [<][>][^][v][top][bottom][index][help] */
3542 {
3543 if (ndr_flags & NDR_SCALARS) {
3544 NDR_CHECK(ndr_push_align(ndr, 4));
3545 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx2Internal(ndr, NDR_SCALARS, &r->info));
3546 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3547 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3548 }
3549 if (ndr_flags & NDR_BUFFERS) {
3550 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx2Internal(ndr, NDR_BUFFERS, &r->info));
3551 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3552 }
3553 return NDR_ERR_SUCCESS;
3554 }
3555
3556 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoFullInfo2Internal(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoFullInfo2Internal *r)
/* [<][>][^][v][top][bottom][index][help] */
3557 {
3558 if (ndr_flags & NDR_SCALARS) {
3559 NDR_CHECK(ndr_pull_align(ndr, 4));
3560 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx2Internal(ndr, NDR_SCALARS, &r->info));
3561 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3562 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3563 }
3564 if (ndr_flags & NDR_BUFFERS) {
3565 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx2Internal(ndr, NDR_BUFFERS, &r->info));
3566 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3567 }
3568 return NDR_ERR_SUCCESS;
3569 }
3570
3571 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoFullInfo2Internal(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoFullInfo2Internal *r)
/* [<][>][^][v][top][bottom][index][help] */
3572 {
3573 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoFullInfo2Internal");
3574 ndr->depth++;
3575 ndr_print_lsa_TrustDomainInfoInfoEx2Internal(ndr, "info", &r->info);
3576 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
3577 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
3578 ndr->depth--;
3579 }
3580
3581 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoSupportedEncTypes(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoSupportedEncTypes *r)
/* [<][>][^][v][top][bottom][index][help] */
3582 {
3583 if (ndr_flags & NDR_SCALARS) {
3584 NDR_CHECK(ndr_push_align(ndr, 4));
3585 NDR_CHECK(ndr_push_kerb_EncTypes(ndr, NDR_SCALARS, r->enc_types));
3586 }
3587 if (ndr_flags & NDR_BUFFERS) {
3588 }
3589 return NDR_ERR_SUCCESS;
3590 }
3591
3592 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoSupportedEncTypes(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoSupportedEncTypes *r)
/* [<][>][^][v][top][bottom][index][help] */
3593 {
3594 if (ndr_flags & NDR_SCALARS) {
3595 NDR_CHECK(ndr_pull_align(ndr, 4));
3596 NDR_CHECK(ndr_pull_kerb_EncTypes(ndr, NDR_SCALARS, &r->enc_types));
3597 }
3598 if (ndr_flags & NDR_BUFFERS) {
3599 }
3600 return NDR_ERR_SUCCESS;
3601 }
3602
3603 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoSupportedEncTypes(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoSupportedEncTypes *r)
/* [<][>][^][v][top][bottom][index][help] */
3604 {
3605 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoSupportedEncTypes");
3606 ndr->depth++;
3607 ndr_print_kerb_EncTypes(ndr, "enc_types", r->enc_types);
3608 ndr->depth--;
3609 }
3610
3611 static enum ndr_err_code ndr_push_lsa_TrustedDomainInfo(struct ndr_push *ndr, int ndr_flags, const union lsa_TrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3612 {
3613 if (ndr_flags & NDR_SCALARS) {
3614 int level = ndr_push_get_switch_value(ndr, r);
3615 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, level));
3616 switch (level) {
3617 case LSA_TRUSTED_DOMAIN_INFO_NAME: {
3618 NDR_CHECK(ndr_push_lsa_TrustDomainInfoName(ndr, NDR_SCALARS, &r->name));
3619 break; }
3620
3621 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS: {
3622 NDR_CHECK(ndr_push_lsa_TrustDomainInfoControllers(ndr, NDR_SCALARS, &r->controllers));
3623 break; }
3624
3625 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET: {
3626 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3627 break; }
3628
3629 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD: {
3630 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPassword(ndr, NDR_SCALARS, &r->password));
3631 break; }
3632
3633 case LSA_TRUSTED_DOMAIN_INFO_BASIC: {
3634 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBasic(ndr, NDR_SCALARS, &r->info_basic));
3635 break; }
3636
3637 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX: {
3638 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3639 break; }
3640
3641 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO: {
3642 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3643 break; }
3644
3645 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO: {
3646 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo(ndr, NDR_SCALARS, &r->full_info));
3647 break; }
3648
3649 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL: {
3650 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_SCALARS, &r->auth_info_internal));
3651 break; }
3652
3653 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL: {
3654 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfoInternal(ndr, NDR_SCALARS, &r->full_info_internal));
3655 break; }
3656
3657 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL: {
3658 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx2Internal(ndr, NDR_SCALARS, &r->info_ex2_internal));
3659 break; }
3660
3661 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL: {
3662 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo2Internal(ndr, NDR_SCALARS, &r->full_info2_internal));
3663 break; }
3664
3665 case LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES: {
3666 NDR_CHECK(ndr_push_lsa_TrustDomainInfoSupportedEncTypes(ndr, NDR_SCALARS, &r->enc_types));
3667 break; }
3668
3669 default:
3670 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3671 }
3672 }
3673 if (ndr_flags & NDR_BUFFERS) {
3674 int level = ndr_push_get_switch_value(ndr, r);
3675 switch (level) {
3676 case LSA_TRUSTED_DOMAIN_INFO_NAME:
3677 NDR_CHECK(ndr_push_lsa_TrustDomainInfoName(ndr, NDR_BUFFERS, &r->name));
3678 break;
3679
3680 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS:
3681 NDR_CHECK(ndr_push_lsa_TrustDomainInfoControllers(ndr, NDR_BUFFERS, &r->controllers));
3682 break;
3683
3684 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
3685 break;
3686
3687 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
3688 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPassword(ndr, NDR_BUFFERS, &r->password));
3689 break;
3690
3691 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
3692 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBasic(ndr, NDR_BUFFERS, &r->info_basic));
3693 break;
3694
3695 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
3696 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3697 break;
3698
3699 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
3700 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3701 break;
3702
3703 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
3704 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo(ndr, NDR_BUFFERS, &r->full_info));
3705 break;
3706
3707 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL:
3708 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_BUFFERS, &r->auth_info_internal));
3709 break;
3710
3711 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL:
3712 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfoInternal(ndr, NDR_BUFFERS, &r->full_info_internal));
3713 break;
3714
3715 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL:
3716 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx2Internal(ndr, NDR_BUFFERS, &r->info_ex2_internal));
3717 break;
3718
3719 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL:
3720 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo2Internal(ndr, NDR_BUFFERS, &r->full_info2_internal));
3721 break;
3722
3723 case LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES:
3724 break;
3725
3726 default:
3727 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3728 }
3729 }
3730 return NDR_ERR_SUCCESS;
3731 }
3732
3733 static enum ndr_err_code ndr_pull_lsa_TrustedDomainInfo(struct ndr_pull *ndr, int ndr_flags, union lsa_TrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3734 {
3735 int level;
3736 uint16_t _level;
3737 level = ndr_pull_get_switch_value(ndr, r);
3738 if (ndr_flags & NDR_SCALARS) {
3739 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
3740 if (_level != level) {
3741 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
3742 }
3743 switch (level) {
3744 case LSA_TRUSTED_DOMAIN_INFO_NAME: {
3745 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoName(ndr, NDR_SCALARS, &r->name));
3746 break; }
3747
3748 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS: {
3749 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoControllers(ndr, NDR_SCALARS, &r->controllers));
3750 break; }
3751
3752 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET: {
3753 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3754 break; }
3755
3756 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD: {
3757 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPassword(ndr, NDR_SCALARS, &r->password));
3758 break; }
3759
3760 case LSA_TRUSTED_DOMAIN_INFO_BASIC: {
3761 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBasic(ndr, NDR_SCALARS, &r->info_basic));
3762 break; }
3763
3764 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX: {
3765 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3766 break; }
3767
3768 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO: {
3769 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3770 break; }
3771
3772 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO: {
3773 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo(ndr, NDR_SCALARS, &r->full_info));
3774 break; }
3775
3776 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL: {
3777 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_SCALARS, &r->auth_info_internal));
3778 break; }
3779
3780 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL: {
3781 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfoInternal(ndr, NDR_SCALARS, &r->full_info_internal));
3782 break; }
3783
3784 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL: {
3785 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx2Internal(ndr, NDR_SCALARS, &r->info_ex2_internal));
3786 break; }
3787
3788 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL: {
3789 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo2Internal(ndr, NDR_SCALARS, &r->full_info2_internal));
3790 break; }
3791
3792 case LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES: {
3793 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoSupportedEncTypes(ndr, NDR_SCALARS, &r->enc_types));
3794 break; }
3795
3796 default:
3797 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3798 }
3799 }
3800 if (ndr_flags & NDR_BUFFERS) {
3801 switch (level) {
3802 case LSA_TRUSTED_DOMAIN_INFO_NAME:
3803 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoName(ndr, NDR_BUFFERS, &r->name));
3804 break;
3805
3806 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS:
3807 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoControllers(ndr, NDR_BUFFERS, &r->controllers));
3808 break;
3809
3810 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
3811 break;
3812
3813 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
3814 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPassword(ndr, NDR_BUFFERS, &r->password));
3815 break;
3816
3817 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
3818 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBasic(ndr, NDR_BUFFERS, &r->info_basic));
3819 break;
3820
3821 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
3822 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3823 break;
3824
3825 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
3826 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3827 break;
3828
3829 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
3830 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo(ndr, NDR_BUFFERS, &r->full_info));
3831 break;
3832
3833 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL:
3834 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_BUFFERS, &r->auth_info_internal));
3835 break;
3836
3837 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL:
3838 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfoInternal(ndr, NDR_BUFFERS, &r->full_info_internal));
3839 break;
3840
3841 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL:
3842 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx2Internal(ndr, NDR_BUFFERS, &r->info_ex2_internal));
3843 break;
3844
3845 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL:
3846 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo2Internal(ndr, NDR_BUFFERS, &r->full_info2_internal));
3847 break;
3848
3849 case LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES:
3850 break;
3851
3852 default:
3853 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3854 }
3855 }
3856 return NDR_ERR_SUCCESS;
3857 }
3858
3859 _PUBLIC_ void ndr_print_lsa_TrustedDomainInfo(struct ndr_print *ndr, const char *name, const union lsa_TrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
3860 {
3861 int level;
3862 level = ndr_print_get_switch_value(ndr, r);
3863 ndr_print_union(ndr, name, level, "lsa_TrustedDomainInfo");
3864 switch (level) {
3865 case LSA_TRUSTED_DOMAIN_INFO_NAME:
3866 ndr_print_lsa_TrustDomainInfoName(ndr, "name", &r->name);
3867 break;
3868
3869 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS:
3870 ndr_print_lsa_TrustDomainInfoControllers(ndr, "controllers", &r->controllers);
3871 break;
3872
3873 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
3874 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
3875 break;
3876
3877 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
3878 ndr_print_lsa_TrustDomainInfoPassword(ndr, "password", &r->password);
3879 break;
3880
3881 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
3882 ndr_print_lsa_TrustDomainInfoBasic(ndr, "info_basic", &r->info_basic);
3883 break;
3884
3885 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
3886 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
3887 break;
3888
3889 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
3890 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
3891 break;
3892
3893 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
3894 ndr_print_lsa_TrustDomainInfoFullInfo(ndr, "full_info", &r->full_info);
3895 break;
3896
3897 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL:
3898 ndr_print_lsa_TrustDomainInfoAuthInfoInternal(ndr, "auth_info_internal", &r->auth_info_internal);
3899 break;
3900
3901 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL:
3902 ndr_print_lsa_TrustDomainInfoFullInfoInternal(ndr, "full_info_internal", &r->full_info_internal);
3903 break;
3904
3905 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL:
3906 ndr_print_lsa_TrustDomainInfoInfoEx2Internal(ndr, "info_ex2_internal", &r->info_ex2_internal);
3907 break;
3908
3909 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL:
3910 ndr_print_lsa_TrustDomainInfoFullInfo2Internal(ndr, "full_info2_internal", &r->full_info2_internal);
3911 break;
3912
3913 case LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES:
3914 ndr_print_lsa_TrustDomainInfoSupportedEncTypes(ndr, "enc_types", &r->enc_types);
3915 break;
3916
3917 default:
3918 ndr_print_bad_level(ndr, name, level);
3919 }
3920 }
3921
3922 static enum ndr_err_code ndr_push_lsa_DATA_BUF_PTR(struct ndr_push *ndr, int ndr_flags, const struct lsa_DATA_BUF_PTR *r)
/* [<][>][^][v][top][bottom][index][help] */
3923 {
3924 if (ndr_flags & NDR_SCALARS) {
3925 NDR_CHECK(ndr_push_align(ndr, 4));
3926 NDR_CHECK(ndr_push_unique_ptr(ndr, r->buf));
3927 }
3928 if (ndr_flags & NDR_BUFFERS) {
3929 if (r->buf) {
3930 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->buf));
3931 }
3932 }
3933 return NDR_ERR_SUCCESS;
3934 }
3935
3936 static enum ndr_err_code ndr_pull_lsa_DATA_BUF_PTR(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF_PTR *r)
/* [<][>][^][v][top][bottom][index][help] */
3937 {
3938 uint32_t _ptr_buf;
3939 TALLOC_CTX *_mem_save_buf_0;
3940 if (ndr_flags & NDR_SCALARS) {
3941 NDR_CHECK(ndr_pull_align(ndr, 4));
3942 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_buf));
3943 if (_ptr_buf) {
3944 NDR_PULL_ALLOC(ndr, r->buf);
3945 } else {
3946 r->buf = NULL;
3947 }
3948 }
3949 if (ndr_flags & NDR_BUFFERS) {
3950 if (r->buf) {
3951 _mem_save_buf_0 = NDR_PULL_GET_MEM_CTX(ndr);
3952 NDR_PULL_SET_MEM_CTX(ndr, r->buf, 0);
3953 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->buf));
3954 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buf_0, 0);
3955 }
3956 }
3957 return NDR_ERR_SUCCESS;
3958 }
3959
3960 _PUBLIC_ void ndr_print_lsa_DATA_BUF_PTR(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF_PTR *r)
/* [<][>][^][v][top][bottom][index][help] */
3961 {
3962 ndr_print_struct(ndr, name, "lsa_DATA_BUF_PTR");
3963 ndr->depth++;
3964 ndr_print_ptr(ndr, "buf", r->buf);
3965 ndr->depth++;
3966 if (r->buf) {
3967 ndr_print_lsa_DATA_BUF(ndr, "buf", r->buf);
3968 }
3969 ndr->depth--;
3970 ndr->depth--;
3971 }
3972
3973 static enum ndr_err_code ndr_push_lsa_RightSet(struct ndr_push *ndr, int ndr_flags, const struct lsa_RightSet *r)
/* [<][>][^][v][top][bottom][index][help] */
3974 {
3975 uint32_t cntr_names_1;
3976 if (ndr_flags & NDR_SCALARS) {
3977 NDR_CHECK(ndr_push_align(ndr, 4));
3978 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3979 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
3980 }
3981 if (ndr_flags & NDR_BUFFERS) {
3982 if (r->names) {
3983 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3984 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3985 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3986 }
3987 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3988 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3989 }
3990 }
3991 }
3992 return NDR_ERR_SUCCESS;
3993 }
3994
3995 static enum ndr_err_code ndr_pull_lsa_RightSet(struct ndr_pull *ndr, int ndr_flags, struct lsa_RightSet *r)
/* [<][>][^][v][top][bottom][index][help] */
3996 {
3997 uint32_t _ptr_names;
3998 uint32_t cntr_names_1;
3999 TALLOC_CTX *_mem_save_names_0;
4000 TALLOC_CTX *_mem_save_names_1;
4001 if (ndr_flags & NDR_SCALARS) {
4002 NDR_CHECK(ndr_pull_align(ndr, 4));
4003 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4004 if (r->count > 256) {
4005 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4006 }
4007 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
4008 if (_ptr_names) {
4009 NDR_PULL_ALLOC(ndr, r->names);
4010 } else {
4011 r->names = NULL;
4012 }
4013 }
4014 if (ndr_flags & NDR_BUFFERS) {
4015 if (r->names) {
4016 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
4017 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
4018 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
4019 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
4020 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
4021 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
4022 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
4023 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
4024 }
4025 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
4026 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
4027 }
4028 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
4029 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
4030 }
4031 if (r->names) {
4032 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
4033 }
4034 }
4035 return NDR_ERR_SUCCESS;
4036 }
4037
4038 _PUBLIC_ void ndr_print_lsa_RightSet(struct ndr_print *ndr, const char *name, const struct lsa_RightSet *r)
/* [<][>][^][v][top][bottom][index][help] */
4039 {
4040 uint32_t cntr_names_1;
4041 ndr_print_struct(ndr, name, "lsa_RightSet");
4042 ndr->depth++;
4043 ndr_print_uint32(ndr, "count", r->count);
4044 ndr_print_ptr(ndr, "names", r->names);
4045 ndr->depth++;
4046 if (r->names) {
4047 ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->count);
4048 ndr->depth++;
4049 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
4050 char *idx_1=NULL;
4051 if (asprintf(&idx_1, "[%d]", cntr_names_1) != -1) {
4052 ndr_print_lsa_StringLarge(ndr, "names", &r->names[cntr_names_1]);
4053 free(idx_1);
4054 }
4055 }
4056 ndr->depth--;
4057 }
4058 ndr->depth--;
4059 ndr->depth--;
4060 }
4061
4062 static enum ndr_err_code ndr_push_lsa_DomainListEx(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainListEx *r)
/* [<][>][^][v][top][bottom][index][help] */
4063 {
4064 uint32_t cntr_domains_1;
4065 if (ndr_flags & NDR_SCALARS) {
4066 NDR_CHECK(ndr_push_align(ndr, 4));
4067 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4068 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
4069 }
4070 if (ndr_flags & NDR_BUFFERS) {
4071 if (r->domains) {
4072 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4073 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
4074 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
4075 }
4076 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
4077 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
4078 }
4079 }
4080 }
4081 return NDR_ERR_SUCCESS;
4082 }
4083
4084 static enum ndr_err_code ndr_pull_lsa_DomainListEx(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainListEx *r)
/* [<][>][^][v][top][bottom][index][help] */
4085 {
4086 uint32_t _ptr_domains;
4087 uint32_t cntr_domains_1;
4088 TALLOC_CTX *_mem_save_domains_0;
4089 TALLOC_CTX *_mem_save_domains_1;
4090 if (ndr_flags & NDR_SCALARS) {
4091 NDR_CHECK(ndr_pull_align(ndr, 4));
4092 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4093 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
4094 if (_ptr_domains) {
4095 NDR_PULL_ALLOC(ndr, r->domains);
4096 } else {
4097 r->domains = NULL;
4098 }
4099 }
4100 if (ndr_flags & NDR_BUFFERS) {
4101 if (r->domains) {
4102 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
4103 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
4104 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
4105 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
4106 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
4107 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
4108 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
4109 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
4110 }
4111 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
4112 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
4113 }
4114 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
4115 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
4116 }
4117 if (r->domains) {
4118 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
4119 }
4120 }
4121 return NDR_ERR_SUCCESS;
4122 }
4123
4124 _PUBLIC_ void ndr_print_lsa_DomainListEx(struct ndr_print *ndr, const char *name, const struct lsa_DomainListEx *r)
/* [<][>][^][v][top][bottom][index][help] */
4125 {
4126 uint32_t cntr_domains_1;
4127 ndr_print_struct(ndr, name, "lsa_DomainListEx");
4128 ndr->depth++;
4129 ndr_print_uint32(ndr, "count", r->count);
4130 ndr_print_ptr(ndr, "domains", r->domains);
4131 ndr->depth++;
4132 if (r->domains) {
4133 ndr->print(ndr, "%s: ARRAY(%d)", "domains", (int)r->count);
4134 ndr->depth++;
4135 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
4136 char *idx_1=NULL;
4137 if (asprintf(&idx_1, "[%d]", cntr_domains_1) != -1) {
4138 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "domains", &r->domains[cntr_domains_1]);
4139 free(idx_1);
4140 }
4141 }
4142 ndr->depth--;
4143 }
4144 ndr->depth--;
4145 ndr->depth--;
4146 }
4147
4148 static enum ndr_err_code ndr_push_lsa_DomainInfoKerberos(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfoKerberos *r)
/* [<][>][^][v][top][bottom][index][help] */
4149 {
4150 if (ndr_flags & NDR_SCALARS) {
4151 NDR_CHECK(ndr_push_align(ndr, 8));
4152 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enforce_restrictions));
4153 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->service_tkt_lifetime));
4154 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->user_tkt_lifetime));
4155 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->user_tkt_renewaltime));
4156 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->clock_skew));
4157 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown6));
4158 }
4159 if (ndr_flags & NDR_BUFFERS) {
4160 }
4161 return NDR_ERR_SUCCESS;
4162 }
4163
4164 static enum ndr_err_code ndr_pull_lsa_DomainInfoKerberos(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfoKerberos *r)
/* [<][>][^][v][top][bottom][index][help] */
4165 {
4166 if (ndr_flags & NDR_SCALARS) {
4167 NDR_CHECK(ndr_pull_align(ndr, 8));
4168 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enforce_restrictions));
4169 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->service_tkt_lifetime));
4170 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->user_tkt_lifetime));
4171 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->user_tkt_renewaltime));
4172 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->clock_skew));
4173 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown6));
4174 }
4175 if (ndr_flags & NDR_BUFFERS) {
4176 }
4177 return NDR_ERR_SUCCESS;
4178 }
4179
4180 _PUBLIC_ void ndr_print_lsa_DomainInfoKerberos(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfoKerberos *r)
/* [<][>][^][v][top][bottom][index][help] */
4181 {
4182 ndr_print_struct(ndr, name, "lsa_DomainInfoKerberos");
4183 ndr->depth++;
4184 ndr_print_uint32(ndr, "enforce_restrictions", r->enforce_restrictions);
4185 ndr_print_hyper(ndr, "service_tkt_lifetime", r->service_tkt_lifetime);
4186 ndr_print_hyper(ndr, "user_tkt_lifetime", r->user_tkt_lifetime);
4187 ndr_print_hyper(ndr, "user_tkt_renewaltime", r->user_tkt_renewaltime);
4188 ndr_print_hyper(ndr, "clock_skew", r->clock_skew);
4189 ndr_print_hyper(ndr, "unknown6", r->unknown6);
4190 ndr->depth--;
4191 }
4192
4193 static enum ndr_err_code ndr_push_lsa_DomainInfoEfs(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfoEfs *r)
/* [<][>][^][v][top][bottom][index][help] */
4194 {
4195 if (ndr_flags & NDR_SCALARS) {
4196 NDR_CHECK(ndr_push_align(ndr, 4));
4197 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->blob_size));
4198 NDR_CHECK(ndr_push_unique_ptr(ndr, r->efs_blob));
4199 }
4200 if (ndr_flags & NDR_BUFFERS) {
4201 if (r->efs_blob) {
4202 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->blob_size));
4203 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->efs_blob, r->blob_size));
4204 }
4205 }
4206 return NDR_ERR_SUCCESS;
4207 }
4208
4209 static enum ndr_err_code ndr_pull_lsa_DomainInfoEfs(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfoEfs *r)
/* [<][>][^][v][top][bottom][index][help] */
4210 {
4211 uint32_t _ptr_efs_blob;
4212 TALLOC_CTX *_mem_save_efs_blob_0;
4213 if (ndr_flags & NDR_SCALARS) {
4214 NDR_CHECK(ndr_pull_align(ndr, 4));
4215 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->blob_size));
4216 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_efs_blob));
4217 if (_ptr_efs_blob) {
4218 NDR_PULL_ALLOC(ndr, r->efs_blob);
4219 } else {
4220 r->efs_blob = NULL;
4221 }
4222 }
4223 if (ndr_flags & NDR_BUFFERS) {
4224 if (r->efs_blob) {
4225 _mem_save_efs_blob_0 = NDR_PULL_GET_MEM_CTX(ndr);
4226 NDR_PULL_SET_MEM_CTX(ndr, r->efs_blob, 0);
4227 NDR_CHECK(ndr_pull_array_size(ndr, &r->efs_blob));
4228 NDR_PULL_ALLOC_N(ndr, r->efs_blob, ndr_get_array_size(ndr, &r->efs_blob));
4229 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->efs_blob, ndr_get_array_size(ndr, &r->efs_blob)));
4230 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_efs_blob_0, 0);
4231 }
4232 if (r->efs_blob) {
4233 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->efs_blob, r->blob_size));
4234 }
4235 }
4236 return NDR_ERR_SUCCESS;
4237 }
4238
4239 _PUBLIC_ void ndr_print_lsa_DomainInfoEfs(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfoEfs *r)
/* [<][>][^][v][top][bottom][index][help] */
4240 {
4241 ndr_print_struct(ndr, name, "lsa_DomainInfoEfs");
4242 ndr->depth++;
4243 ndr_print_uint32(ndr, "blob_size", r->blob_size);
4244 ndr_print_ptr(ndr, "efs_blob", r->efs_blob);
4245 ndr->depth++;
4246 if (r->efs_blob) {
4247 ndr_print_array_uint8(ndr, "efs_blob", r->efs_blob, r->blob_size);
4248 }
4249 ndr->depth--;
4250 ndr->depth--;
4251 }
4252
4253 static enum ndr_err_code ndr_push_lsa_DomainInformationPolicy(struct ndr_push *ndr, int ndr_flags, const union lsa_DomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
4254 {
4255 if (ndr_flags & NDR_SCALARS) {
4256 int level = ndr_push_get_switch_value(ndr, r);
4257 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
4258 switch (level) {
4259 case LSA_DOMAIN_INFO_POLICY_EFS: {
4260 NDR_CHECK(ndr_push_lsa_DomainInfoEfs(ndr, NDR_SCALARS, &r->efs_info));
4261 break; }
4262
4263 case LSA_DOMAIN_INFO_POLICY_KERBEROS: {
4264 NDR_CHECK(ndr_push_lsa_DomainInfoKerberos(ndr, NDR_SCALARS, &r->kerberos_info));
4265 break; }
4266
4267 default:
4268 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
4269 }
4270 }
4271 if (ndr_flags & NDR_BUFFERS) {
4272 int level = ndr_push_get_switch_value(ndr, r);
4273 switch (level) {
4274 case LSA_DOMAIN_INFO_POLICY_EFS:
4275 NDR_CHECK(ndr_push_lsa_DomainInfoEfs(ndr, NDR_BUFFERS, &r->efs_info));
4276 break;
4277
4278 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
4279 break;
4280
4281 default:
4282 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
4283 }
4284 }
4285 return NDR_ERR_SUCCESS;
4286 }
4287
4288 static enum ndr_err_code ndr_pull_lsa_DomainInformationPolicy(struct ndr_pull *ndr, int ndr_flags, union lsa_DomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
4289 {
4290 int level;
4291 uint16_t _level;
4292 level = ndr_pull_get_switch_value(ndr, r);
4293 if (ndr_flags & NDR_SCALARS) {
4294 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
4295 if (_level != level) {
4296 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
4297 }
4298 switch (level) {
4299 case LSA_DOMAIN_INFO_POLICY_EFS: {
4300 NDR_CHECK(ndr_pull_lsa_DomainInfoEfs(ndr, NDR_SCALARS, &r->efs_info));
4301 break; }
4302
4303 case LSA_DOMAIN_INFO_POLICY_KERBEROS: {
4304 NDR_CHECK(ndr_pull_lsa_DomainInfoKerberos(ndr, NDR_SCALARS, &r->kerberos_info));
4305 break; }
4306
4307 default:
4308 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
4309 }
4310 }
4311 if (ndr_flags & NDR_BUFFERS) {
4312 switch (level) {
4313 case LSA_DOMAIN_INFO_POLICY_EFS:
4314 NDR_CHECK(ndr_pull_lsa_DomainInfoEfs(ndr, NDR_BUFFERS, &r->efs_info));
4315 break;
4316
4317 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
4318 break;
4319
4320 default:
4321 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
4322 }
4323 }
4324 return NDR_ERR_SUCCESS;
4325 }
4326
4327 _PUBLIC_ void ndr_print_lsa_DomainInformationPolicy(struct ndr_print *ndr, const char *name, const union lsa_DomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
4328 {
4329 int level;
4330 level = ndr_print_get_switch_value(ndr, r);
4331 ndr_print_union(ndr, name, level, "lsa_DomainInformationPolicy");
4332 switch (level) {
4333 case LSA_DOMAIN_INFO_POLICY_EFS:
4334 ndr_print_lsa_DomainInfoEfs(ndr, "efs_info", &r->efs_info);
4335 break;
4336
4337 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
4338 ndr_print_lsa_DomainInfoKerberos(ndr, "kerberos_info", &r->kerberos_info);
4339 break;
4340
4341 default:
4342 ndr_print_bad_level(ndr, name, level);
4343 }
4344 }
4345
4346 static enum ndr_err_code ndr_push_lsa_TranslatedName2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedName2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4347 {
4348 if (ndr_flags & NDR_SCALARS) {
4349 NDR_CHECK(ndr_push_align(ndr, 4));
4350 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
4351 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
4352 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
4353 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
4354 }
4355 if (ndr_flags & NDR_BUFFERS) {
4356 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
4357 }
4358 return NDR_ERR_SUCCESS;
4359 }
4360
4361 static enum ndr_err_code ndr_pull_lsa_TranslatedName2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedName2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4362 {
4363 if (ndr_flags & NDR_SCALARS) {
4364 NDR_CHECK(ndr_pull_align(ndr, 4));
4365 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
4366 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
4367 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
4368 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
4369 }
4370 if (ndr_flags & NDR_BUFFERS) {
4371 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
4372 }
4373 return NDR_ERR_SUCCESS;
4374 }
4375
4376 _PUBLIC_ void ndr_print_lsa_TranslatedName2(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedName2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4377 {
4378 ndr_print_struct(ndr, name, "lsa_TranslatedName2");
4379 ndr->depth++;
4380 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
4381 ndr_print_lsa_String(ndr, "name", &r->name);
4382 ndr_print_uint32(ndr, "sid_index", r->sid_index);
4383 ndr_print_uint32(ndr, "unknown", r->unknown);
4384 ndr->depth--;
4385 }
4386
4387 static enum ndr_err_code ndr_push_lsa_TransNameArray2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransNameArray2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4388 {
4389 uint32_t cntr_names_1;
4390 if (ndr_flags & NDR_SCALARS) {
4391 NDR_CHECK(ndr_push_align(ndr, 4));
4392 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4393 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
4394 }
4395 if (ndr_flags & NDR_BUFFERS) {
4396 if (r->names) {
4397 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4398 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
4399 NDR_CHECK(ndr_push_lsa_TranslatedName2(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
4400 }
4401 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
4402 NDR_CHECK(ndr_push_lsa_TranslatedName2(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
4403 }
4404 }
4405 }
4406 return NDR_ERR_SUCCESS;
4407 }
4408
4409 static enum ndr_err_code ndr_pull_lsa_TransNameArray2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4410 {
4411 uint32_t _ptr_names;
4412 uint32_t cntr_names_1;
4413 TALLOC_CTX *_mem_save_names_0;
4414 TALLOC_CTX *_mem_save_names_1;
4415 if (ndr_flags & NDR_SCALARS) {
4416 NDR_CHECK(ndr_pull_align(ndr, 4));
4417 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4418 if (r->count > 1000) {
4419 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4420 }
4421 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
4422 if (_ptr_names) {
4423 NDR_PULL_ALLOC(ndr, r->names);
4424 } else {
4425 r->names = NULL;
4426 }
4427 }
4428 if (ndr_flags & NDR_BUFFERS) {
4429 if (r->names) {
4430 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
4431 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
4432 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
4433 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
4434 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
4435 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
4436 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
4437 NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
4438 }
4439 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
4440 NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
4441 }
4442 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
4443 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
4444 }
4445 if (r->names) {
4446 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
4447 }
4448 }
4449 return NDR_ERR_SUCCESS;
4450 }
4451
4452 _PUBLIC_ void ndr_print_lsa_TransNameArray2(struct ndr_print *ndr, const char *name, const struct lsa_TransNameArray2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4453 {
4454 uint32_t cntr_names_1;
4455 ndr_print_struct(ndr, name, "lsa_TransNameArray2");
4456 ndr->depth++;
4457 ndr_print_uint32(ndr, "count", r->count);
4458 ndr_print_ptr(ndr, "names", r->names);
4459 ndr->depth++;
4460 if (r->names) {
4461 ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->count);
4462 ndr->depth++;
4463 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
4464 char *idx_1=NULL;
4465 if (asprintf(&idx_1, "[%d]", cntr_names_1) != -1) {
4466 ndr_print_lsa_TranslatedName2(ndr, "names", &r->names[cntr_names_1]);
4467 free(idx_1);
4468 }
4469 }
4470 ndr->depth--;
4471 }
4472 ndr->depth--;
4473 ndr->depth--;
4474 }
4475
4476 static enum ndr_err_code ndr_push_lsa_TranslatedSid2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4477 {
4478 if (ndr_flags & NDR_SCALARS) {
4479 NDR_CHECK(ndr_push_align(ndr, 4));
4480 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
4481 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
4482 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
4483 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
4484 }
4485 if (ndr_flags & NDR_BUFFERS) {
4486 }
4487 return NDR_ERR_SUCCESS;
4488 }
4489
4490 static enum ndr_err_code ndr_pull_lsa_TranslatedSid2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4491 {
4492 if (ndr_flags & NDR_SCALARS) {
4493 NDR_CHECK(ndr_pull_align(ndr, 4));
4494 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
4495 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
4496 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
4497 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
4498 }
4499 if (ndr_flags & NDR_BUFFERS) {
4500 }
4501 return NDR_ERR_SUCCESS;
4502 }
4503
4504 _PUBLIC_ void ndr_print_lsa_TranslatedSid2(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4505 {
4506 ndr_print_struct(ndr, name, "lsa_TranslatedSid2");
4507 ndr->depth++;
4508 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
4509 ndr_print_uint32(ndr, "rid", r->rid);
4510 ndr_print_uint32(ndr, "sid_index", r->sid_index);
4511 ndr_print_uint32(ndr, "unknown", r->unknown);
4512 ndr->depth--;
4513 }
4514
4515 static enum ndr_err_code ndr_push_lsa_TransSidArray2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4516 {
4517 uint32_t cntr_sids_1;
4518 if (ndr_flags & NDR_SCALARS) {
4519 NDR_CHECK(ndr_push_align(ndr, 4));
4520 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4521 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
4522 }
4523 if (ndr_flags & NDR_BUFFERS) {
4524 if (r->sids) {
4525 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4526 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4527 NDR_CHECK(ndr_push_lsa_TranslatedSid2(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
4528 }
4529 }
4530 }
4531 return NDR_ERR_SUCCESS;
4532 }
4533
4534 static enum ndr_err_code ndr_pull_lsa_TransSidArray2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4535 {
4536 uint32_t _ptr_sids;
4537 uint32_t cntr_sids_1;
4538 TALLOC_CTX *_mem_save_sids_0;
4539 TALLOC_CTX *_mem_save_sids_1;
4540 if (ndr_flags & NDR_SCALARS) {
4541 NDR_CHECK(ndr_pull_align(ndr, 4));
4542 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4543 if (r->count > 1000) {
4544 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4545 }
4546 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
4547 if (_ptr_sids) {
4548 NDR_PULL_ALLOC(ndr, r->sids);
4549 } else {
4550 r->sids = NULL;
4551 }
4552 }
4553 if (ndr_flags & NDR_BUFFERS) {
4554 if (r->sids) {
4555 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
4556 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
4557 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
4558 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
4559 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
4560 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
4561 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4562 NDR_CHECK(ndr_pull_lsa_TranslatedSid2(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
4563 }
4564 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
4565 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
4566 }
4567 if (r->sids) {
4568 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
4569 }
4570 }
4571 return NDR_ERR_SUCCESS;
4572 }
4573
4574 _PUBLIC_ void ndr_print_lsa_TransSidArray2(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray2 *r)
/* [<][>][^][v][top][bottom][index][help] */
4575 {
4576 uint32_t cntr_sids_1;
4577 ndr_print_struct(ndr, name, "lsa_TransSidArray2");
4578 ndr->depth++;
4579 ndr_print_uint32(ndr, "count", r->count);
4580 ndr_print_ptr(ndr, "sids", r->sids);
4581 ndr->depth++;
4582 if (r->sids) {
4583 ndr->print(ndr, "%s: ARRAY(%d)", "sids", (int)r->count);
4584 ndr->depth++;
4585 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
4586 char *idx_1=NULL;
4587 if (asprintf(&idx_1, "[%d]", cntr_sids_1) != -1) {
4588 ndr_print_lsa_TranslatedSid2(ndr, "sids", &r->sids[cntr_sids_1]);
4589 free(idx_1);
4590 }
4591 }
4592 ndr->depth--;
4593 }
4594 ndr->depth--;
4595 ndr->depth--;
4596 }
4597
4598 static enum ndr_err_code ndr_push_lsa_TranslatedSid3(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid3 *r)
/* [<][>][^][v][top][bottom][index][help] */
4599 {
4600 if (ndr_flags & NDR_SCALARS) {
4601 NDR_CHECK(ndr_push_align(ndr, 4));
4602 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
4603 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
4604 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
4605 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->flags));
4606 }
4607 if (ndr_flags & NDR_BUFFERS) {
4608 if (r->sid) {
4609 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
4610 }
4611 }
4612 return NDR_ERR_SUCCESS;
4613 }
4614
4615 static enum ndr_err_code ndr_pull_lsa_TranslatedSid3(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid3 *r)
/* [<][>][^][v][top][bottom][index][help] */
4616 {
4617 uint32_t _ptr_sid;
4618 TALLOC_CTX *_mem_save_sid_0;
4619 if (ndr_flags & NDR_SCALARS) {
4620 NDR_CHECK(ndr_pull_align(ndr, 4));
4621 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
4622 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
4623 if (_ptr_sid) {
4624 NDR_PULL_ALLOC(ndr, r->sid);
4625 } else {
4626 r->sid = NULL;
4627 }
4628 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
4629 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->flags));
4630 }
4631 if (ndr_flags & NDR_BUFFERS) {
4632 if (r->sid) {
4633 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
4634 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
4635 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
4636 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
4637 }
4638 }
4639 return NDR_ERR_SUCCESS;
4640 }
4641
4642 _PUBLIC_ void ndr_print_lsa_TranslatedSid3(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid3 *r)
/* [<][>][^][v][top][bottom][index][help] */
4643 {
4644 ndr_print_struct(ndr, name, "lsa_TranslatedSid3");
4645 ndr->depth++;
4646 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
4647 ndr_print_ptr(ndr, "sid", r->sid);
4648 ndr->depth++;
4649 if (r->sid) {
4650 ndr_print_dom_sid2(ndr, "sid", r->sid);
4651 }
4652 ndr->depth--;
4653 ndr_print_uint32(ndr, "sid_index", r->sid_index);
4654 ndr_print_uint32(ndr, "flags", r->flags);
4655 ndr->depth--;
4656 }
4657
4658 static enum ndr_err_code ndr_push_lsa_TransSidArray3(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray3 *r)
/* [<][>][^][v][top][bottom][index][help] */
4659 {
4660 uint32_t cntr_sids_1;
4661 if (ndr_flags & NDR_SCALARS) {
4662 NDR_CHECK(ndr_push_align(ndr, 4));
4663 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4664 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
4665 }
4666 if (ndr_flags & NDR_BUFFERS) {
4667 if (r->sids) {
4668 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4669 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4670 NDR_CHECK(ndr_push_lsa_TranslatedSid3(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
4671 }
4672 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4673 NDR_CHECK(ndr_push_lsa_TranslatedSid3(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
4674 }
4675 }
4676 }
4677 return NDR_ERR_SUCCESS;
4678 }
4679
4680 static enum ndr_err_code ndr_pull_lsa_TransSidArray3(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray3 *r)
/* [<][>][^][v][top][bottom][index][help] */
4681 {
4682 uint32_t _ptr_sids;
4683 uint32_t cntr_sids_1;
4684 TALLOC_CTX *_mem_save_sids_0;
4685 TALLOC_CTX *_mem_save_sids_1;
4686 if (ndr_flags & NDR_SCALARS) {
4687 NDR_CHECK(ndr_pull_align(ndr, 4));
4688 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4689 if (r->count > 1000) {
4690 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4691 }
4692 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
4693 if (_ptr_sids) {
4694 NDR_PULL_ALLOC(ndr, r->sids);
4695 } else {
4696 r->sids = NULL;
4697 }
4698 }
4699 if (ndr_flags & NDR_BUFFERS) {
4700 if (r->sids) {
4701 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
4702 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
4703 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
4704 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
4705 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
4706 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
4707 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4708 NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
4709 }
4710 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4711 NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
4712 }
4713 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
4714 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
4715 }
4716 if (r->sids) {
4717 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
4718 }
4719 }
4720 return NDR_ERR_SUCCESS;
4721 }
4722
4723 _PUBLIC_ void ndr_print_lsa_TransSidArray3(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray3 *r)
/* [<][>][^][v][top][bottom][index][help] */
4724 {
4725 uint32_t cntr_sids_1;
4726 ndr_print_struct(ndr, name, "lsa_TransSidArray3");
4727 ndr->depth++;
4728 ndr_print_uint32(ndr, "count", r->count);
4729 ndr_print_ptr(ndr, "sids", r->sids);
4730 ndr->depth++;
4731 if (r->sids) {
4732 ndr->print(ndr, "%s: ARRAY(%d)", "sids", (int)r->count);
4733 ndr->depth++;
4734 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
4735 char *idx_1=NULL;
4736 if (asprintf(&idx_1, "[%d]", cntr_sids_1) != -1) {
4737 ndr_print_lsa_TranslatedSid3(ndr, "sids", &r->sids[cntr_sids_1]);
4738 free(idx_1);
4739 }
4740 }
4741 ndr->depth--;
4742 }
4743 ndr->depth--;
4744 ndr->depth--;
4745 }
4746
4747 static enum ndr_err_code ndr_push_lsa_ForestTrustBinaryData(struct ndr_push *ndr, int ndr_flags, const struct lsa_ForestTrustBinaryData *r)
/* [<][>][^][v][top][bottom][index][help] */
4748 {
4749 if (ndr_flags & NDR_SCALARS) {
4750 NDR_CHECK(ndr_push_align(ndr, 4));
4751 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
4752 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
4753 }
4754 if (ndr_flags & NDR_BUFFERS) {
4755 if (r->data) {
4756 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
4757 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->length));
4758 }
4759 }
4760 return NDR_ERR_SUCCESS;
4761 }
4762
4763 static enum ndr_err_code ndr_pull_lsa_ForestTrustBinaryData(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustBinaryData *r)
/* [<][>][^][v][top][bottom][index][help] */
4764 {
4765 uint32_t _ptr_data;
4766 TALLOC_CTX *_mem_save_data_0;
4767 if (ndr_flags & NDR_SCALARS) {
4768 NDR_CHECK(ndr_pull_align(ndr, 4));
4769 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
4770 if (r->length > 131072) {
4771 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4772 }
4773 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
4774 if (_ptr_data) {
4775 NDR_PULL_ALLOC(ndr, r->data);
4776 } else {
4777 r->data = NULL;
4778 }
4779 }
4780 if (ndr_flags & NDR_BUFFERS) {
4781 if (r->data) {
4782 _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
4783 NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
4784 NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
4785 NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
4786 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
4787 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
4788 }
4789 if (r->data) {
4790 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->length));
4791 }
4792 }
4793 return NDR_ERR_SUCCESS;
4794 }
4795
4796 _PUBLIC_ void ndr_print_lsa_ForestTrustBinaryData(struct ndr_print *ndr, const char *name, const struct lsa_ForestTrustBinaryData *r)
/* [<][>][^][v][top][bottom][index][help] */
4797 {
4798 ndr_print_struct(ndr, name, "lsa_ForestTrustBinaryData");
4799 ndr->depth++;
4800 ndr_print_uint32(ndr, "length", r->length);
4801 ndr_print_ptr(ndr, "data", r->data);
4802 ndr->depth++;
4803 if (r->data) {
4804 ndr_print_array_uint8(ndr, "data", r->data, r->length);
4805 }
4806 ndr->depth--;
4807 ndr->depth--;
4808 }
4809
4810 static enum ndr_err_code ndr_push_lsa_ForestTrustDomainInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_ForestTrustDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
4811 {
4812 if (ndr_flags & NDR_SCALARS) {
4813 NDR_CHECK(ndr_push_align(ndr, 4));
4814 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_sid));
4815 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain_name));
4816 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_domain_name));
4817 }
4818 if (ndr_flags & NDR_BUFFERS) {
4819 if (r->domain_sid) {
4820 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->domain_sid));
4821 }
4822 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain_name));
4823 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_domain_name));
4824 }
4825 return NDR_ERR_SUCCESS;
4826 }
4827
4828 static enum ndr_err_code ndr_pull_lsa_ForestTrustDomainInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
4829 {
4830 uint32_t _ptr_domain_sid;
4831 TALLOC_CTX *_mem_save_domain_sid_0;
4832 if (ndr_flags & NDR_SCALARS) {
4833 NDR_CHECK(ndr_pull_align(ndr, 4));
4834 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_sid));
4835 if (_ptr_domain_sid) {
4836 NDR_PULL_ALLOC(ndr, r->domain_sid);
4837 } else {
4838 r->domain_sid = NULL;
4839 }
4840 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain_name));
4841 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_domain_name));
4842 }
4843 if (ndr_flags & NDR_BUFFERS) {
4844 if (r->domain_sid) {
4845 _mem_save_domain_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
4846 NDR_PULL_SET_MEM_CTX(ndr, r->domain_sid, 0);
4847 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->domain_sid));
4848 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_sid_0, 0);
4849 }
4850 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain_name));
4851 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_domain_name));
4852 }
4853 return NDR_ERR_SUCCESS;
4854 }
4855
4856 _PUBLIC_ void ndr_print_lsa_ForestTrustDomainInfo(struct ndr_print *ndr, const char *name, const struct lsa_ForestTrustDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
4857 {
4858 ndr_print_struct(ndr, name, "lsa_ForestTrustDomainInfo");
4859 ndr->depth++;
4860 ndr_print_ptr(ndr, "domain_sid", r->domain_sid);
4861 ndr->depth++;
4862 if (r->domain_sid) {
4863 ndr_print_dom_sid2(ndr, "domain_sid", r->domain_sid);
4864 }
4865 ndr->depth--;
4866 ndr_print_lsa_StringLarge(ndr, "dns_domain_name", &r->dns_domain_name);
4867 ndr_print_lsa_StringLarge(ndr, "netbios_domain_name", &r->netbios_domain_name);
4868 ndr->depth--;
4869 }
4870
4871 static enum ndr_err_code ndr_push_lsa_ForestTrustData(struct ndr_push *ndr, int ndr_flags, const union lsa_ForestTrustData *r)
/* [<][>][^][v][top][bottom][index][help] */
4872 {
4873 if (ndr_flags & NDR_SCALARS) {
4874 int level = ndr_push_get_switch_value(ndr, r);
4875 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
4876 switch (level) {
4877 case LSA_FOREST_TRUST_TOP_LEVEL_NAME: {
4878 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->top_level_name));
4879 break; }
4880
4881 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX: {
4882 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->top_level_name_ex));
4883 break; }
4884
4885 case LSA_FOREST_TRUST_DOMAIN_INFO: {
4886 NDR_CHECK(ndr_push_lsa_ForestTrustDomainInfo(ndr, NDR_SCALARS, &r->domain_info));
4887 break; }
4888
4889 default: {
4890 NDR_CHECK(ndr_push_lsa_ForestTrustBinaryData(ndr, NDR_SCALARS, &r->data));
4891 break; }
4892
4893 }
4894 }
4895 if (ndr_flags & NDR_BUFFERS) {
4896 int level = ndr_push_get_switch_value(ndr, r);
4897 switch (level) {
4898 case LSA_FOREST_TRUST_TOP_LEVEL_NAME:
4899 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->top_level_name));
4900 break;
4901
4902 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX:
4903 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->top_level_name_ex));
4904 break;
4905
4906 case LSA_FOREST_TRUST_DOMAIN_INFO:
4907 NDR_CHECK(ndr_push_lsa_ForestTrustDomainInfo(ndr, NDR_BUFFERS, &r->domain_info));
4908 break;
4909
4910 default:
4911 NDR_CHECK(ndr_push_lsa_ForestTrustBinaryData(ndr, NDR_BUFFERS, &r->data));
4912 break;
4913
4914 }
4915 }
4916 return NDR_ERR_SUCCESS;
4917 }
4918
4919 static enum ndr_err_code ndr_pull_lsa_ForestTrustData(struct ndr_pull *ndr, int ndr_flags, union lsa_ForestTrustData *r)
/* [<][>][^][v][top][bottom][index][help] */
4920 {
4921 int level;
4922 uint32_t _level;
4923 level = ndr_pull_get_switch_value(ndr, r);
4924 if (ndr_flags & NDR_SCALARS) {
4925 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
4926 if (_level != level) {
4927 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
4928 }
4929 switch (level) {
4930 case LSA_FOREST_TRUST_TOP_LEVEL_NAME: {
4931 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->top_level_name));
4932 break; }
4933
4934 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX: {
4935 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->top_level_name_ex));
4936 break; }
4937
4938 case LSA_FOREST_TRUST_DOMAIN_INFO: {
4939 NDR_CHECK(ndr_pull_lsa_ForestTrustDomainInfo(ndr, NDR_SCALARS, &r->domain_info));
4940 break; }
4941
4942 default: {
4943 NDR_CHECK(ndr_pull_lsa_ForestTrustBinaryData(ndr, NDR_SCALARS, &r->data));
4944 break; }
4945
4946 }
4947 }
4948 if (ndr_flags & NDR_BUFFERS) {
4949 switch (level) {
4950 case LSA_FOREST_TRUST_TOP_LEVEL_NAME:
4951 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->top_level_name));
4952 break;
4953
4954 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX:
4955 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->top_level_name_ex));
4956 break;
4957
4958 case LSA_FOREST_TRUST_DOMAIN_INFO:
4959 NDR_CHECK(ndr_pull_lsa_ForestTrustDomainInfo(ndr, NDR_BUFFERS, &r->domain_info));
4960 break;
4961
4962 default:
4963 NDR_CHECK(ndr_pull_lsa_ForestTrustBinaryData(ndr, NDR_BUFFERS, &r->data));
4964 break;
4965
4966 }
4967 }
4968 return NDR_ERR_SUCCESS;
4969 }
4970
4971 _PUBLIC_ void ndr_print_lsa_ForestTrustData(struct ndr_print *ndr, const char *name, const union lsa_ForestTrustData *r)
/* [<][>][^][v][top][bottom][index][help] */
4972 {
4973 int level;
4974 level = ndr_print_get_switch_value(ndr, r);
4975 ndr_print_union(ndr, name, level, "lsa_ForestTrustData");
4976 switch (level) {
4977 case LSA_FOREST_TRUST_TOP_LEVEL_NAME:
4978 ndr_print_lsa_String(ndr, "top_level_name", &r->top_level_name);
4979 break;
4980
4981 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX:
4982 ndr_print_lsa_StringLarge(ndr, "top_level_name_ex", &r->top_level_name_ex);
4983 break;
4984
4985 case LSA_FOREST_TRUST_DOMAIN_INFO:
4986 ndr_print_lsa_ForestTrustDomainInfo(ndr, "domain_info", &r->domain_info);
4987 break;
4988
4989 default:
4990 ndr_print_lsa_ForestTrustBinaryData(ndr, "data", &r->data);
4991 break;
4992
4993 }
4994 }
4995
4996 static enum ndr_err_code ndr_push_lsa_ForestTrustRecordType(struct ndr_push *ndr, int ndr_flags, enum lsa_ForestTrustRecordType r)
/* [<][>][^][v][top][bottom][index][help] */
4997 {
4998 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
4999 return NDR_ERR_SUCCESS;
5000 }
5001
5002 static enum ndr_err_code ndr_pull_lsa_ForestTrustRecordType(struct ndr_pull *ndr, int ndr_flags, enum lsa_ForestTrustRecordType *r)
/* [<][>][^][v][top][bottom][index][help] */
5003 {
5004 uint32_t v;
5005 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
5006 *r = v;
5007 return NDR_ERR_SUCCESS;
5008 }
5009
5010 _PUBLIC_ void ndr_print_lsa_ForestTrustRecordType(struct ndr_print *ndr, const char *name, enum lsa_ForestTrustRecordType r)
/* [<][>][^][v][top][bottom][index][help] */
5011 {
5012 const char *val = NULL;
5013
5014 switch (r) {
5015 case LSA_FOREST_TRUST_TOP_LEVEL_NAME: val = "LSA_FOREST_TRUST_TOP_LEVEL_NAME"; break;
5016 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX: val = "LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX"; break;
5017 case LSA_FOREST_TRUST_DOMAIN_INFO: val = "LSA_FOREST_TRUST_DOMAIN_INFO"; break;
5018 case LSA_FOREST_TRUST_RECORD_TYPE_LAST: val = "LSA_FOREST_TRUST_RECORD_TYPE_LAST"; break;
5019 }
5020 ndr_print_enum(ndr, name, "ENUM", val, r);
5021 }
5022
5023 static enum ndr_err_code ndr_push_lsa_ForestTrustRecord(struct ndr_push *ndr, int ndr_flags, const struct lsa_ForestTrustRecord *r)
/* [<][>][^][v][top][bottom][index][help] */
5024 {
5025 if (ndr_flags & NDR_SCALARS) {
5026 NDR_CHECK(ndr_push_align(ndr, 8));
5027 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->flags));
5028 NDR_CHECK(ndr_push_lsa_ForestTrustRecordType(ndr, NDR_SCALARS, r->level));
5029 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown));
5030 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->forest_trust_data, r->level));
5031 NDR_CHECK(ndr_push_lsa_ForestTrustData(ndr, NDR_SCALARS, &r->forest_trust_data));
5032 }
5033 if (ndr_flags & NDR_BUFFERS) {
5034 NDR_CHECK(ndr_push_lsa_ForestTrustData(ndr, NDR_BUFFERS, &r->forest_trust_data));
5035 }
5036 return NDR_ERR_SUCCESS;
5037 }
5038
5039 static enum ndr_err_code ndr_pull_lsa_ForestTrustRecord(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustRecord *r)
/* [<][>][^][v][top][bottom][index][help] */
5040 {
5041 if (ndr_flags & NDR_SCALARS) {
5042 NDR_CHECK(ndr_pull_align(ndr, 8));
5043 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->flags));
5044 NDR_CHECK(ndr_pull_lsa_ForestTrustRecordType(ndr, NDR_SCALARS, &r->level));
5045 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown));
5046 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->forest_trust_data, r->level));
5047 NDR_CHECK(ndr_pull_lsa_ForestTrustData(ndr, NDR_SCALARS, &r->forest_trust_data));
5048 }
5049 if (ndr_flags & NDR_BUFFERS) {
5050 NDR_CHECK(ndr_pull_lsa_ForestTrustData(ndr, NDR_BUFFERS, &r->forest_trust_data));
5051 }
5052 return NDR_ERR_SUCCESS;
5053 }
5054
5055 _PUBLIC_ void ndr_print_lsa_ForestTrustRecord(struct ndr_print *ndr, const char *name, const struct lsa_ForestTrustRecord *r)
/* [<][>][^][v][top][bottom][index][help] */
5056 {
5057 ndr_print_struct(ndr, name, "lsa_ForestTrustRecord");
5058 ndr->depth++;
5059 ndr_print_uint32(ndr, "flags", r->flags);
5060 ndr_print_lsa_ForestTrustRecordType(ndr, "level", r->level);
5061 ndr_print_hyper(ndr, "unknown", r->unknown);
5062 ndr_print_set_switch_value(ndr, &r->forest_trust_data, r->level);
5063 ndr_print_lsa_ForestTrustData(ndr, "forest_trust_data", &r->forest_trust_data);
5064 ndr->depth--;
5065 }
5066
5067 _PUBLIC_ enum ndr_err_code ndr_push_lsa_ForestTrustInformation(struct ndr_push *ndr, int ndr_flags, const struct lsa_ForestTrustInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
5068 {
5069 uint32_t cntr_entries_1;
5070 if (ndr_flags & NDR_SCALARS) {
5071 NDR_CHECK(ndr_push_align(ndr, 4));
5072 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
5073 NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries));
5074 }
5075 if (ndr_flags & NDR_BUFFERS) {
5076 if (r->entries) {
5077 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
5078 for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
5079 NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries[cntr_entries_1]));
5080 }
5081 for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
5082 if (r->entries[cntr_entries_1]) {
5083 NDR_CHECK(ndr_push_lsa_ForestTrustRecord(ndr, NDR_SCALARS|NDR_BUFFERS, r->entries[cntr_entries_1]));
5084 }
5085 }
5086 }
5087 }
5088 return NDR_ERR_SUCCESS;
5089 }
5090
5091 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_ForestTrustInformation(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
5092 {
5093 uint32_t _ptr_entries;
5094 uint32_t cntr_entries_1;
5095 TALLOC_CTX *_mem_save_entries_0;
5096 TALLOC_CTX *_mem_save_entries_1;
5097 TALLOC_CTX *_mem_save_entries_2;
5098 if (ndr_flags & NDR_SCALARS) {
5099 NDR_CHECK(ndr_pull_align(ndr, 4));
5100 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
5101 if (r->count > 4000) {
5102 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
5103 }
5104 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
5105 if (_ptr_entries) {
5106 NDR_PULL_ALLOC(ndr, r->entries);
5107 } else {
5108 r->entries = NULL;
5109 }
5110 }
5111 if (ndr_flags & NDR_BUFFERS) {
5112 if (r->entries) {
5113 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
5114 NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
5115 NDR_CHECK(ndr_pull_array_size(ndr, &r->entries));
5116 NDR_PULL_ALLOC_N(ndr, r->entries, ndr_get_array_size(ndr, &r->entries));
5117 _mem_save_entries_1 = NDR_PULL_GET_MEM_CTX(ndr);
5118 NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
5119 for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
5120 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
5121 if (_ptr_entries) {
5122 NDR_PULL_ALLOC(ndr, r->entries[cntr_entries_1]);
5123 } else {
5124 r->entries[cntr_entries_1] = NULL;
5125 }
5126 }
5127 for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
5128 if (r->entries[cntr_entries_1]) {
5129 _mem_save_entries_2 = NDR_PULL_GET_MEM_CTX(ndr);
5130 NDR_PULL_SET_MEM_CTX(ndr, r->entries[cntr_entries_1], 0);
5131 NDR_CHECK(ndr_pull_lsa_ForestTrustRecord(ndr, NDR_SCALARS|NDR_BUFFERS, r->entries[cntr_entries_1]));
5132 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_2, 0);
5133 }
5134 }
5135 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_1, 0);
5136 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
5137 }
5138 if (r->entries) {
5139 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->entries, r->count));
5140 }
5141 }
5142 return NDR_ERR_SUCCESS;
5143 }
5144
5145 _PUBLIC_ void ndr_print_lsa_ForestTrustInformation(struct ndr_print *ndr, const char *name, const struct lsa_ForestTrustInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
5146 {
5147 uint32_t cntr_entries_1;
5148 ndr_print_struct(ndr, name, "lsa_ForestTrustInformation");
5149 ndr->depth++;
5150 ndr_print_uint32(ndr, "count", r->count);
5151 ndr_print_ptr(ndr, "entries", r->entries);
5152 ndr->depth++;
5153 if (r->entries) {
5154 ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->count);
5155 ndr->depth++;
5156 for (cntr_entries_1=0;cntr_entries_1<r->count;cntr_entries_1++) {
5157 char *idx_1=NULL;
5158 if (asprintf(&idx_1, "[%d]", cntr_entries_1) != -1) {
5159 ndr_print_ptr(ndr, "entries", r->entries[cntr_entries_1]);
5160 ndr->depth++;
5161 if (r->entries[cntr_entries_1]) {
5162 ndr_print_lsa_ForestTrustRecord(ndr, "entries", r->entries[cntr_entries_1]);
5163 }
5164 ndr->depth--;
5165 free(idx_1);
5166 }
5167 }
5168 ndr->depth--;
5169 }
5170 ndr->depth--;
5171 ndr->depth--;
5172 }
5173
5174 static enum ndr_err_code ndr_push_lsa_Close(struct ndr_push *ndr, int flags, const struct lsa_Close *r)
/* [<][>][^][v][top][bottom][index][help] */
5175 {
5176 if (flags & NDR_IN) {
5177 if (r->in.handle == NULL) {
5178 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5179 }
5180 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5181 }
5182 if (flags & NDR_OUT) {
5183 if (r->out.handle == NULL) {
5184 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5185 }
5186 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.handle));
5187 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5188 }
5189 return NDR_ERR_SUCCESS;
5190 }
5191
5192 static enum ndr_err_code ndr_pull_lsa_Close(struct ndr_pull *ndr, int flags, struct lsa_Close *r)
/* [<][>][^][v][top][bottom][index][help] */
5193 {
5194 TALLOC_CTX *_mem_save_handle_0;
5195 if (flags & NDR_IN) {
5196 ZERO_STRUCT(r->out);
5197
5198 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5199 NDR_PULL_ALLOC(ndr, r->in.handle);
5200 }
5201 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5202 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5203 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5204 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5205 NDR_PULL_ALLOC(ndr, r->out.handle);
5206 *r->out.handle = *r->in.handle;
5207 }
5208 if (flags & NDR_OUT) {
5209 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5210 NDR_PULL_ALLOC(ndr, r->out.handle);
5211 }
5212 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5213 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
5214 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.handle));
5215 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5216 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5217 }
5218 return NDR_ERR_SUCCESS;
5219 }
5220
5221 _PUBLIC_ void ndr_print_lsa_Close(struct ndr_print *ndr, const char *name, int flags, const struct lsa_Close *r)
/* [<][>][^][v][top][bottom][index][help] */
5222 {
5223 ndr_print_struct(ndr, name, "lsa_Close");
5224 ndr->depth++;
5225 if (flags & NDR_SET_VALUES) {
5226 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5227 }
5228 if (flags & NDR_IN) {
5229 ndr_print_struct(ndr, "in", "lsa_Close");
5230 ndr->depth++;
5231 ndr_print_ptr(ndr, "handle", r->in.handle);
5232 ndr->depth++;
5233 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5234 ndr->depth--;
5235 ndr->depth--;
5236 }
5237 if (flags & NDR_OUT) {
5238 ndr_print_struct(ndr, "out", "lsa_Close");
5239 ndr->depth++;
5240 ndr_print_ptr(ndr, "handle", r->out.handle);
5241 ndr->depth++;
5242 ndr_print_policy_handle(ndr, "handle", r->out.handle);
5243 ndr->depth--;
5244 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5245 ndr->depth--;
5246 }
5247 ndr->depth--;
5248 }
5249
5250 _PUBLIC_ enum ndr_err_code ndr_push_lsa_Delete(struct ndr_push *ndr, int flags, const struct lsa_Delete *r)
/* [<][>][^][v][top][bottom][index][help] */
5251 {
5252 if (flags & NDR_IN) {
5253 if (r->in.handle == NULL) {
5254 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5255 }
5256 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5257 }
5258 if (flags & NDR_OUT) {
5259 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5260 }
5261 return NDR_ERR_SUCCESS;
5262 }
5263
5264 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_Delete(struct ndr_pull *ndr, int flags, struct lsa_Delete *r)
/* [<][>][^][v][top][bottom][index][help] */
5265 {
5266 TALLOC_CTX *_mem_save_handle_0;
5267 if (flags & NDR_IN) {
5268 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5269 NDR_PULL_ALLOC(ndr, r->in.handle);
5270 }
5271 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5272 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5273 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5274 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5275 }
5276 if (flags & NDR_OUT) {
5277 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5278 }
5279 return NDR_ERR_SUCCESS;
5280 }
5281
5282 _PUBLIC_ void ndr_print_lsa_Delete(struct ndr_print *ndr, const char *name, int flags, const struct lsa_Delete *r)
/* [<][>][^][v][top][bottom][index][help] */
5283 {
5284 ndr_print_struct(ndr, name, "lsa_Delete");
5285 ndr->depth++;
5286 if (flags & NDR_SET_VALUES) {
5287 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5288 }
5289 if (flags & NDR_IN) {
5290 ndr_print_struct(ndr, "in", "lsa_Delete");
5291 ndr->depth++;
5292 ndr_print_ptr(ndr, "handle", r->in.handle);
5293 ndr->depth++;
5294 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5295 ndr->depth--;
5296 ndr->depth--;
5297 }
5298 if (flags & NDR_OUT) {
5299 ndr_print_struct(ndr, "out", "lsa_Delete");
5300 ndr->depth++;
5301 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5302 ndr->depth--;
5303 }
5304 ndr->depth--;
5305 }
5306
5307 _PUBLIC_ enum ndr_err_code ndr_push_lsa_EnumPrivs(struct ndr_push *ndr, int flags, const struct lsa_EnumPrivs *r)
/* [<][>][^][v][top][bottom][index][help] */
5308 {
5309 if (flags & NDR_IN) {
5310 if (r->in.handle == NULL) {
5311 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5312 }
5313 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5314 if (r->in.resume_handle == NULL) {
5315 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5316 }
5317 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
5318 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_count));
5319 }
5320 if (flags & NDR_OUT) {
5321 if (r->out.resume_handle == NULL) {
5322 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5323 }
5324 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
5325 if (r->out.privs == NULL) {
5326 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5327 }
5328 NDR_CHECK(ndr_push_lsa_PrivArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.privs));
5329 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5330 }
5331 return NDR_ERR_SUCCESS;
5332 }
5333
5334 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_EnumPrivs(struct ndr_pull *ndr, int flags, struct lsa_EnumPrivs *r)
/* [<][>][^][v][top][bottom][index][help] */
5335 {
5336 TALLOC_CTX *_mem_save_handle_0;
5337 TALLOC_CTX *_mem_save_resume_handle_0;
5338 TALLOC_CTX *_mem_save_privs_0;
5339 if (flags & NDR_IN) {
5340 ZERO_STRUCT(r->out);
5341
5342 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5343 NDR_PULL_ALLOC(ndr, r->in.handle);
5344 }
5345 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5346 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5347 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5348 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5349 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5350 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
5351 }
5352 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5353 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
5354 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
5355 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
5356 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_count));
5357 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
5358 *r->out.resume_handle = *r->in.resume_handle;
5359 NDR_PULL_ALLOC(ndr, r->out.privs);
5360 ZERO_STRUCTP(r->out.privs);
5361 }
5362 if (flags & NDR_OUT) {
5363 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5364 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
5365 }
5366 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5367 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
5368 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
5369 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
5370 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5371 NDR_PULL_ALLOC(ndr, r->out.privs);
5372 }
5373 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
5374 NDR_PULL_SET_MEM_CTX(ndr, r->out.privs, LIBNDR_FLAG_REF_ALLOC);
5375 NDR_CHECK(ndr_pull_lsa_PrivArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.privs));
5376 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, LIBNDR_FLAG_REF_ALLOC);
5377 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5378 }
5379 return NDR_ERR_SUCCESS;
5380 }
5381
5382 _PUBLIC_ void ndr_print_lsa_EnumPrivs(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumPrivs *r)
/* [<][>][^][v][top][bottom][index][help] */
5383 {
5384 ndr_print_struct(ndr, name, "lsa_EnumPrivs");
5385 ndr->depth++;
5386 if (flags & NDR_SET_VALUES) {
5387 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5388 }
5389 if (flags & NDR_IN) {
5390 ndr_print_struct(ndr, "in", "lsa_EnumPrivs");
5391 ndr->depth++;
5392 ndr_print_ptr(ndr, "handle", r->in.handle);
5393 ndr->depth++;
5394 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5395 ndr->depth--;
5396 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
5397 ndr->depth++;
5398 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
5399 ndr->depth--;
5400 ndr_print_uint32(ndr, "max_count", r->in.max_count);
5401 ndr->depth--;
5402 }
5403 if (flags & NDR_OUT) {
5404 ndr_print_struct(ndr, "out", "lsa_EnumPrivs");
5405 ndr->depth++;
5406 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
5407 ndr->depth++;
5408 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
5409 ndr->depth--;
5410 ndr_print_ptr(ndr, "privs", r->out.privs);
5411 ndr->depth++;
5412 ndr_print_lsa_PrivArray(ndr, "privs", r->out.privs);
5413 ndr->depth--;
5414 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5415 ndr->depth--;
5416 }
5417 ndr->depth--;
5418 }
5419
5420 static enum ndr_err_code ndr_push_lsa_QuerySecurity(struct ndr_push *ndr, int flags, const struct lsa_QuerySecurity *r)
/* [<][>][^][v][top][bottom][index][help] */
5421 {
5422 if (flags & NDR_IN) {
5423 if (r->in.handle == NULL) {
5424 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5425 }
5426 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5427 NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
5428 }
5429 if (flags & NDR_OUT) {
5430 if (r->out.sdbuf == NULL) {
5431 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5432 }
5433 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sdbuf));
5434 if (*r->out.sdbuf) {
5435 NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sdbuf));
5436 }
5437 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5438 }
5439 return NDR_ERR_SUCCESS;
5440 }
5441
5442 static enum ndr_err_code ndr_pull_lsa_QuerySecurity(struct ndr_pull *ndr, int flags, struct lsa_QuerySecurity *r)
/* [<][>][^][v][top][bottom][index][help] */
5443 {
5444 uint32_t _ptr_sdbuf;
5445 TALLOC_CTX *_mem_save_handle_0;
5446 TALLOC_CTX *_mem_save_sdbuf_0;
5447 TALLOC_CTX *_mem_save_sdbuf_1;
5448 if (flags & NDR_IN) {
5449 ZERO_STRUCT(r->out);
5450
5451 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5452 NDR_PULL_ALLOC(ndr, r->in.handle);
5453 }
5454 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5455 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5456 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5457 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5458 NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
5459 NDR_PULL_ALLOC(ndr, r->out.sdbuf);
5460 ZERO_STRUCTP(r->out.sdbuf);
5461 }
5462 if (flags & NDR_OUT) {
5463 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5464 NDR_PULL_ALLOC(ndr, r->out.sdbuf);
5465 }
5466 _mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
5467 NDR_PULL_SET_MEM_CTX(ndr, r->out.sdbuf, LIBNDR_FLAG_REF_ALLOC);
5468 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sdbuf));
5469 if (_ptr_sdbuf) {
5470 NDR_PULL_ALLOC(ndr, *r->out.sdbuf);
5471 } else {
5472 *r->out.sdbuf = NULL;
5473 }
5474 if (*r->out.sdbuf) {
5475 _mem_save_sdbuf_1 = NDR_PULL_GET_MEM_CTX(ndr);
5476 NDR_PULL_SET_MEM_CTX(ndr, *r->out.sdbuf, 0);
5477 NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sdbuf));
5478 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_1, 0);
5479 }
5480 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, LIBNDR_FLAG_REF_ALLOC);
5481 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5482 }
5483 return NDR_ERR_SUCCESS;
5484 }
5485
5486 _PUBLIC_ void ndr_print_lsa_QuerySecurity(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QuerySecurity *r)
/* [<][>][^][v][top][bottom][index][help] */
5487 {
5488 ndr_print_struct(ndr, name, "lsa_QuerySecurity");
5489 ndr->depth++;
5490 if (flags & NDR_SET_VALUES) {
5491 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5492 }
5493 if (flags & NDR_IN) {
5494 ndr_print_struct(ndr, "in", "lsa_QuerySecurity");
5495 ndr->depth++;
5496 ndr_print_ptr(ndr, "handle", r->in.handle);
5497 ndr->depth++;
5498 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5499 ndr->depth--;
5500 ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
5501 ndr->depth--;
5502 }
5503 if (flags & NDR_OUT) {
5504 ndr_print_struct(ndr, "out", "lsa_QuerySecurity");
5505 ndr->depth++;
5506 ndr_print_ptr(ndr, "sdbuf", r->out.sdbuf);
5507 ndr->depth++;
5508 ndr_print_ptr(ndr, "sdbuf", *r->out.sdbuf);
5509 ndr->depth++;
5510 if (*r->out.sdbuf) {
5511 ndr_print_sec_desc_buf(ndr, "sdbuf", *r->out.sdbuf);
5512 }
5513 ndr->depth--;
5514 ndr->depth--;
5515 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5516 ndr->depth--;
5517 }
5518 ndr->depth--;
5519 }
5520
5521 static enum ndr_err_code ndr_push_lsa_SetSecObj(struct ndr_push *ndr, int flags, const struct lsa_SetSecObj *r)
/* [<][>][^][v][top][bottom][index][help] */
5522 {
5523 if (flags & NDR_IN) {
5524 if (r->in.handle == NULL) {
5525 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5526 }
5527 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5528 NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
5529 if (r->in.sdbuf == NULL) {
5530 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5531 }
5532 NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sdbuf));
5533 }
5534 if (flags & NDR_OUT) {
5535 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5536 }
5537 return NDR_ERR_SUCCESS;
5538 }
5539
5540 static enum ndr_err_code ndr_pull_lsa_SetSecObj(struct ndr_pull *ndr, int flags, struct lsa_SetSecObj *r)
/* [<][>][^][v][top][bottom][index][help] */
5541 {
5542 TALLOC_CTX *_mem_save_handle_0;
5543 TALLOC_CTX *_mem_save_sdbuf_0;
5544 if (flags & NDR_IN) {
5545 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5546 NDR_PULL_ALLOC(ndr, r->in.handle);
5547 }
5548 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5549 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5550 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5551 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5552 NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
5553 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5554 NDR_PULL_ALLOC(ndr, r->in.sdbuf);
5555 }
5556 _mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
5557 NDR_PULL_SET_MEM_CTX(ndr, r->in.sdbuf, LIBNDR_FLAG_REF_ALLOC);
5558 NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sdbuf));
5559 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, LIBNDR_FLAG_REF_ALLOC);
5560 }
5561 if (flags & NDR_OUT) {
5562 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5563 }
5564 return NDR_ERR_SUCCESS;
5565 }
5566
5567 _PUBLIC_ void ndr_print_lsa_SetSecObj(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSecObj *r)
/* [<][>][^][v][top][bottom][index][help] */
5568 {
5569 ndr_print_struct(ndr, name, "lsa_SetSecObj");
5570 ndr->depth++;
5571 if (flags & NDR_SET_VALUES) {
5572 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5573 }
5574 if (flags & NDR_IN) {
5575 ndr_print_struct(ndr, "in", "lsa_SetSecObj");
5576 ndr->depth++;
5577 ndr_print_ptr(ndr, "handle", r->in.handle);
5578 ndr->depth++;
5579 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5580 ndr->depth--;
5581 ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
5582 ndr_print_ptr(ndr, "sdbuf", r->in.sdbuf);
5583 ndr->depth++;
5584 ndr_print_sec_desc_buf(ndr, "sdbuf", r->in.sdbuf);
5585 ndr->depth--;
5586 ndr->depth--;
5587 }
5588 if (flags & NDR_OUT) {
5589 ndr_print_struct(ndr, "out", "lsa_SetSecObj");
5590 ndr->depth++;
5591 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5592 ndr->depth--;
5593 }
5594 ndr->depth--;
5595 }
5596
5597 static enum ndr_err_code ndr_push_lsa_ChangePassword(struct ndr_push *ndr, int flags, const struct lsa_ChangePassword *r)
/* [<][>][^][v][top][bottom][index][help] */
5598 {
5599 if (flags & NDR_IN) {
5600 }
5601 if (flags & NDR_OUT) {
5602 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5603 }
5604 return NDR_ERR_SUCCESS;
5605 }
5606
5607 static enum ndr_err_code ndr_pull_lsa_ChangePassword(struct ndr_pull *ndr, int flags, struct lsa_ChangePassword *r)
/* [<][>][^][v][top][bottom][index][help] */
5608 {
5609 if (flags & NDR_IN) {
5610 }
5611 if (flags & NDR_OUT) {
5612 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5613 }
5614 return NDR_ERR_SUCCESS;
5615 }
5616
5617 _PUBLIC_ void ndr_print_lsa_ChangePassword(struct ndr_print *ndr, const char *name, int flags, const struct lsa_ChangePassword *r)
/* [<][>][^][v][top][bottom][index][help] */
5618 {
5619 ndr_print_struct(ndr, name, "lsa_ChangePassword");
5620 ndr->depth++;
5621 if (flags & NDR_SET_VALUES) {
5622 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5623 }
5624 if (flags & NDR_IN) {
5625 ndr_print_struct(ndr, "in", "lsa_ChangePassword");
5626 ndr->depth++;
5627 ndr->depth--;
5628 }
5629 if (flags & NDR_OUT) {
5630 ndr_print_struct(ndr, "out", "lsa_ChangePassword");
5631 ndr->depth++;
5632 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5633 ndr->depth--;
5634 }
5635 ndr->depth--;
5636 }
5637
5638 _PUBLIC_ enum ndr_err_code ndr_push_lsa_OpenPolicy(struct ndr_push *ndr, int flags, const struct lsa_OpenPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5639 {
5640 if (flags & NDR_IN) {
5641 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
5642 if (r->in.system_name) {
5643 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->in.system_name));
5644 }
5645 if (r->in.attr == NULL) {
5646 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5647 }
5648 NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
5649 NDR_CHECK(ndr_push_lsa_PolicyAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
5650 }
5651 if (flags & NDR_OUT) {
5652 if (r->out.handle == NULL) {
5653 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5654 }
5655 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.handle));
5656 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5657 }
5658 return NDR_ERR_SUCCESS;
5659 }
5660
5661 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_OpenPolicy(struct ndr_pull *ndr, int flags, struct lsa_OpenPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5662 {
5663 uint32_t _ptr_system_name;
5664 TALLOC_CTX *_mem_save_system_name_0;
5665 TALLOC_CTX *_mem_save_attr_0;
5666 TALLOC_CTX *_mem_save_handle_0;
5667 if (flags & NDR_IN) {
5668 ZERO_STRUCT(r->out);
5669
5670 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
5671 if (_ptr_system_name) {
5672 NDR_PULL_ALLOC(ndr, r->in.system_name);
5673 } else {
5674 r->in.system_name = NULL;
5675 }
5676 if (r->in.system_name) {
5677 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
5678 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
5679 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->in.system_name));
5680 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
5681 }
5682 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5683 NDR_PULL_ALLOC(ndr, r->in.attr);
5684 }
5685 _mem_save_attr_0 = NDR_PULL_GET_MEM_CTX(ndr);
5686 NDR_PULL_SET_MEM_CTX(ndr, r->in.attr, LIBNDR_FLAG_REF_ALLOC);
5687 NDR_CHECK(ndr_pull_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
5688 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_attr_0, LIBNDR_FLAG_REF_ALLOC);
5689 NDR_CHECK(ndr_pull_lsa_PolicyAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
5690 NDR_PULL_ALLOC(ndr, r->out.handle);
5691 ZERO_STRUCTP(r->out.handle);
5692 }
5693 if (flags & NDR_OUT) {
5694 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5695 NDR_PULL_ALLOC(ndr, r->out.handle);
5696 }
5697 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5698 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
5699 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.handle));
5700 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5701 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5702 }
5703 return NDR_ERR_SUCCESS;
5704 }
5705
5706 _PUBLIC_ void ndr_print_lsa_OpenPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5707 {
5708 ndr_print_struct(ndr, name, "lsa_OpenPolicy");
5709 ndr->depth++;
5710 if (flags & NDR_SET_VALUES) {
5711 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5712 }
5713 if (flags & NDR_IN) {
5714 ndr_print_struct(ndr, "in", "lsa_OpenPolicy");
5715 ndr->depth++;
5716 ndr_print_ptr(ndr, "system_name", r->in.system_name);
5717 ndr->depth++;
5718 if (r->in.system_name) {
5719 ndr_print_uint16(ndr, "system_name", *r->in.system_name);
5720 }
5721 ndr->depth--;
5722 ndr_print_ptr(ndr, "attr", r->in.attr);
5723 ndr->depth++;
5724 ndr_print_lsa_ObjectAttribute(ndr, "attr", r->in.attr);
5725 ndr->depth--;
5726 ndr_print_lsa_PolicyAccessMask(ndr, "access_mask", r->in.access_mask);
5727 ndr->depth--;
5728 }
5729 if (flags & NDR_OUT) {
5730 ndr_print_struct(ndr, "out", "lsa_OpenPolicy");
5731 ndr->depth++;
5732 ndr_print_ptr(ndr, "handle", r->out.handle);
5733 ndr->depth++;
5734 ndr_print_policy_handle(ndr, "handle", r->out.handle);
5735 ndr->depth--;
5736 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5737 ndr->depth--;
5738 }
5739 ndr->depth--;
5740 }
5741
5742 static enum ndr_err_code ndr_push_lsa_QueryInfoPolicy(struct ndr_push *ndr, int flags, const struct lsa_QueryInfoPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5743 {
5744 if (flags & NDR_IN) {
5745 if (r->in.handle == NULL) {
5746 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5747 }
5748 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5749 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
5750 }
5751 if (flags & NDR_OUT) {
5752 if (r->out.info == NULL) {
5753 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5754 }
5755 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
5756 if (*r->out.info) {
5757 NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
5758 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
5759 }
5760 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5761 }
5762 return NDR_ERR_SUCCESS;
5763 }
5764
5765 static enum ndr_err_code ndr_pull_lsa_QueryInfoPolicy(struct ndr_pull *ndr, int flags, struct lsa_QueryInfoPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5766 {
5767 uint32_t _ptr_info;
5768 TALLOC_CTX *_mem_save_handle_0;
5769 TALLOC_CTX *_mem_save_info_0;
5770 TALLOC_CTX *_mem_save_info_1;
5771 if (flags & NDR_IN) {
5772 ZERO_STRUCT(r->out);
5773
5774 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5775 NDR_PULL_ALLOC(ndr, r->in.handle);
5776 }
5777 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5778 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5779 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5780 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5781 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
5782 NDR_PULL_ALLOC(ndr, r->out.info);
5783 ZERO_STRUCTP(r->out.info);
5784 }
5785 if (flags & NDR_OUT) {
5786 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5787 NDR_PULL_ALLOC(ndr, r->out.info);
5788 }
5789 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
5790 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
5791 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
5792 if (_ptr_info) {
5793 NDR_PULL_ALLOC(ndr, *r->out.info);
5794 } else {
5795 *r->out.info = NULL;
5796 }
5797 if (*r->out.info) {
5798 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
5799 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
5800 NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
5801 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
5802 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
5803 }
5804 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
5805 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5806 }
5807 return NDR_ERR_SUCCESS;
5808 }
5809
5810 _PUBLIC_ void ndr_print_lsa_QueryInfoPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryInfoPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5811 {
5812 ndr_print_struct(ndr, name, "lsa_QueryInfoPolicy");
5813 ndr->depth++;
5814 if (flags & NDR_SET_VALUES) {
5815 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5816 }
5817 if (flags & NDR_IN) {
5818 ndr_print_struct(ndr, "in", "lsa_QueryInfoPolicy");
5819 ndr->depth++;
5820 ndr_print_ptr(ndr, "handle", r->in.handle);
5821 ndr->depth++;
5822 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5823 ndr->depth--;
5824 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
5825 ndr->depth--;
5826 }
5827 if (flags & NDR_OUT) {
5828 ndr_print_struct(ndr, "out", "lsa_QueryInfoPolicy");
5829 ndr->depth++;
5830 ndr_print_ptr(ndr, "info", r->out.info);
5831 ndr->depth++;
5832 ndr_print_ptr(ndr, "info", *r->out.info);
5833 ndr->depth++;
5834 if (*r->out.info) {
5835 ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
5836 ndr_print_lsa_PolicyInformation(ndr, "info", *r->out.info);
5837 }
5838 ndr->depth--;
5839 ndr->depth--;
5840 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5841 ndr->depth--;
5842 }
5843 ndr->depth--;
5844 }
5845
5846 static enum ndr_err_code ndr_push_lsa_SetInfoPolicy(struct ndr_push *ndr, int flags, const struct lsa_SetInfoPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5847 {
5848 if (flags & NDR_IN) {
5849 if (r->in.handle == NULL) {
5850 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5851 }
5852 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5853 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
5854 if (r->in.info == NULL) {
5855 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5856 }
5857 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
5858 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
5859 }
5860 if (flags & NDR_OUT) {
5861 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5862 }
5863 return NDR_ERR_SUCCESS;
5864 }
5865
5866 static enum ndr_err_code ndr_pull_lsa_SetInfoPolicy(struct ndr_pull *ndr, int flags, struct lsa_SetInfoPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5867 {
5868 TALLOC_CTX *_mem_save_handle_0;
5869 TALLOC_CTX *_mem_save_info_0;
5870 if (flags & NDR_IN) {
5871 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5872 NDR_PULL_ALLOC(ndr, r->in.handle);
5873 }
5874 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5875 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5876 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5877 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5878 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
5879 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5880 NDR_PULL_ALLOC(ndr, r->in.info);
5881 }
5882 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
5883 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
5884 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
5885 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
5886 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
5887 }
5888 if (flags & NDR_OUT) {
5889 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5890 }
5891 return NDR_ERR_SUCCESS;
5892 }
5893
5894 _PUBLIC_ void ndr_print_lsa_SetInfoPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInfoPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
5895 {
5896 ndr_print_struct(ndr, name, "lsa_SetInfoPolicy");
5897 ndr->depth++;
5898 if (flags & NDR_SET_VALUES) {
5899 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5900 }
5901 if (flags & NDR_IN) {
5902 ndr_print_struct(ndr, "in", "lsa_SetInfoPolicy");
5903 ndr->depth++;
5904 ndr_print_ptr(ndr, "handle", r->in.handle);
5905 ndr->depth++;
5906 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5907 ndr->depth--;
5908 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
5909 ndr_print_ptr(ndr, "info", r->in.info);
5910 ndr->depth++;
5911 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
5912 ndr_print_lsa_PolicyInformation(ndr, "info", r->in.info);
5913 ndr->depth--;
5914 ndr->depth--;
5915 }
5916 if (flags & NDR_OUT) {
5917 ndr_print_struct(ndr, "out", "lsa_SetInfoPolicy");
5918 ndr->depth++;
5919 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5920 ndr->depth--;
5921 }
5922 ndr->depth--;
5923 }
5924
5925 static enum ndr_err_code ndr_push_lsa_ClearAuditLog(struct ndr_push *ndr, int flags, const struct lsa_ClearAuditLog *r)
/* [<][>][^][v][top][bottom][index][help] */
5926 {
5927 if (flags & NDR_IN) {
5928 }
5929 if (flags & NDR_OUT) {
5930 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5931 }
5932 return NDR_ERR_SUCCESS;
5933 }
5934
5935 static enum ndr_err_code ndr_pull_lsa_ClearAuditLog(struct ndr_pull *ndr, int flags, struct lsa_ClearAuditLog *r)
/* [<][>][^][v][top][bottom][index][help] */
5936 {
5937 if (flags & NDR_IN) {
5938 }
5939 if (flags & NDR_OUT) {
5940 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5941 }
5942 return NDR_ERR_SUCCESS;
5943 }
5944
5945 _PUBLIC_ void ndr_print_lsa_ClearAuditLog(struct ndr_print *ndr, const char *name, int flags, const struct lsa_ClearAuditLog *r)
/* [<][>][^][v][top][bottom][index][help] */
5946 {
5947 ndr_print_struct(ndr, name, "lsa_ClearAuditLog");
5948 ndr->depth++;
5949 if (flags & NDR_SET_VALUES) {
5950 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5951 }
5952 if (flags & NDR_IN) {
5953 ndr_print_struct(ndr, "in", "lsa_ClearAuditLog");
5954 ndr->depth++;
5955 ndr->depth--;
5956 }
5957 if (flags & NDR_OUT) {
5958 ndr_print_struct(ndr, "out", "lsa_ClearAuditLog");
5959 ndr->depth++;
5960 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5961 ndr->depth--;
5962 }
5963 ndr->depth--;
5964 }
5965
5966 _PUBLIC_ enum ndr_err_code ndr_push_lsa_CreateAccount(struct ndr_push *ndr, int flags, const struct lsa_CreateAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
5967 {
5968 if (flags & NDR_IN) {
5969 if (r->in.handle == NULL) {
5970 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5971 }
5972 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5973 if (r->in.sid == NULL) {
5974 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5975 }
5976 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
5977 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
5978 }
5979 if (flags & NDR_OUT) {
5980 if (r->out.acct_handle == NULL) {
5981 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5982 }
5983 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.acct_handle));
5984 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5985 }
5986 return NDR_ERR_SUCCESS;
5987 }
5988
5989 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_CreateAccount(struct ndr_pull *ndr, int flags, struct lsa_CreateAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
5990 {
5991 TALLOC_CTX *_mem_save_handle_0;
5992 TALLOC_CTX *_mem_save_sid_0;
5993 TALLOC_CTX *_mem_save_acct_handle_0;
5994 if (flags & NDR_IN) {
5995 ZERO_STRUCT(r->out);
5996
5997 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5998 NDR_PULL_ALLOC(ndr, r->in.handle);
5999 }
6000 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6001 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6002 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6003 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6004 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6005 NDR_PULL_ALLOC(ndr, r->in.sid);
6006 }
6007 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6008 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
6009 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6010 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6011 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6012 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
6013 ZERO_STRUCTP(r->out.acct_handle);
6014 }
6015 if (flags & NDR_OUT) {
6016 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6017 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
6018 }
6019 _mem_save_acct_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6020 NDR_PULL_SET_MEM_CTX(ndr, r->out.acct_handle, LIBNDR_FLAG_REF_ALLOC);
6021 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.acct_handle));
6022 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_acct_handle_0, LIBNDR_FLAG_REF_ALLOC);
6023 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6024 }
6025 return NDR_ERR_SUCCESS;
6026 }
6027
6028 _PUBLIC_ void ndr_print_lsa_CreateAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
6029 {
6030 ndr_print_struct(ndr, name, "lsa_CreateAccount");
6031 ndr->depth++;
6032 if (flags & NDR_SET_VALUES) {
6033 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6034 }
6035 if (flags & NDR_IN) {
6036 ndr_print_struct(ndr, "in", "lsa_CreateAccount");
6037 ndr->depth++;
6038 ndr_print_ptr(ndr, "handle", r->in.handle);
6039 ndr->depth++;
6040 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6041 ndr->depth--;
6042 ndr_print_ptr(ndr, "sid", r->in.sid);
6043 ndr->depth++;
6044 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
6045 ndr->depth--;
6046 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6047 ndr->depth--;
6048 }
6049 if (flags & NDR_OUT) {
6050 ndr_print_struct(ndr, "out", "lsa_CreateAccount");
6051 ndr->depth++;
6052 ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
6053 ndr->depth++;
6054 ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
6055 ndr->depth--;
6056 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6057 ndr->depth--;
6058 }
6059 ndr->depth--;
6060 }
6061
6062 _PUBLIC_ enum ndr_err_code ndr_push_lsa_EnumAccounts(struct ndr_push *ndr, int flags, const struct lsa_EnumAccounts *r)
/* [<][>][^][v][top][bottom][index][help] */
6063 {
6064 if (flags & NDR_IN) {
6065 if (r->in.handle == NULL) {
6066 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6067 }
6068 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6069 if (r->in.resume_handle == NULL) {
6070 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6071 }
6072 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6073 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_entries));
6074 }
6075 if (flags & NDR_OUT) {
6076 if (r->out.resume_handle == NULL) {
6077 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6078 }
6079 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6080 if (r->out.sids == NULL) {
6081 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6082 }
6083 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
6084 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6085 }
6086 return NDR_ERR_SUCCESS;
6087 }
6088
6089 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_EnumAccounts(struct ndr_pull *ndr, int flags, struct lsa_EnumAccounts *r)
/* [<][>][^][v][top][bottom][index][help] */
6090 {
6091 TALLOC_CTX *_mem_save_handle_0;
6092 TALLOC_CTX *_mem_save_resume_handle_0;
6093 TALLOC_CTX *_mem_save_sids_0;
6094 if (flags & NDR_IN) {
6095 ZERO_STRUCT(r->out);
6096
6097 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6098 NDR_PULL_ALLOC(ndr, r->in.handle);
6099 }
6100 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6101 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6102 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6103 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6104 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6105 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6106 }
6107 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6108 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6109 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6110 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6111 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_entries));
6112 if (r->in.num_entries > 8192) {
6113 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
6114 }
6115 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6116 *r->out.resume_handle = *r->in.resume_handle;
6117 NDR_PULL_ALLOC(ndr, r->out.sids);
6118 ZERO_STRUCTP(r->out.sids);
6119 }
6120 if (flags & NDR_OUT) {
6121 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6122 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6123 }
6124 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6125 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6126 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
6127 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6128 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6129 NDR_PULL_ALLOC(ndr, r->out.sids);
6130 }
6131 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
6132 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
6133 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
6134 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
6135 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6136 }
6137 return NDR_ERR_SUCCESS;
6138 }
6139
6140 _PUBLIC_ void ndr_print_lsa_EnumAccounts(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccounts *r)
/* [<][>][^][v][top][bottom][index][help] */
6141 {
6142 ndr_print_struct(ndr, name, "lsa_EnumAccounts");
6143 ndr->depth++;
6144 if (flags & NDR_SET_VALUES) {
6145 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6146 }
6147 if (flags & NDR_IN) {
6148 ndr_print_struct(ndr, "in", "lsa_EnumAccounts");
6149 ndr->depth++;
6150 ndr_print_ptr(ndr, "handle", r->in.handle);
6151 ndr->depth++;
6152 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6153 ndr->depth--;
6154 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
6155 ndr->depth++;
6156 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
6157 ndr->depth--;
6158 ndr_print_uint32(ndr, "num_entries", r->in.num_entries);
6159 ndr->depth--;
6160 }
6161 if (flags & NDR_OUT) {
6162 ndr_print_struct(ndr, "out", "lsa_EnumAccounts");
6163 ndr->depth++;
6164 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
6165 ndr->depth++;
6166 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
6167 ndr->depth--;
6168 ndr_print_ptr(ndr, "sids", r->out.sids);
6169 ndr->depth++;
6170 ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
6171 ndr->depth--;
6172 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6173 ndr->depth--;
6174 }
6175 ndr->depth--;
6176 }
6177
6178 _PUBLIC_ enum ndr_err_code ndr_push_lsa_CreateTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
6179 {
6180 if (flags & NDR_IN) {
6181 if (r->in.policy_handle == NULL) {
6182 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6183 }
6184 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.policy_handle));
6185 if (r->in.info == NULL) {
6186 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6187 }
6188 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6189 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6190 }
6191 if (flags & NDR_OUT) {
6192 if (r->out.trustdom_handle == NULL) {
6193 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6194 }
6195 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
6196 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6197 }
6198 return NDR_ERR_SUCCESS;
6199 }
6200
6201 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_CreateTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
6202 {
6203 TALLOC_CTX *_mem_save_policy_handle_0;
6204 TALLOC_CTX *_mem_save_info_0;
6205 TALLOC_CTX *_mem_save_trustdom_handle_0;
6206 if (flags & NDR_IN) {
6207 ZERO_STRUCT(r->out);
6208
6209 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6210 NDR_PULL_ALLOC(ndr, r->in.policy_handle);
6211 }
6212 _mem_save_policy_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6213 NDR_PULL_SET_MEM_CTX(ndr, r->in.policy_handle, LIBNDR_FLAG_REF_ALLOC);
6214 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.policy_handle));
6215 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_policy_handle_0, LIBNDR_FLAG_REF_ALLOC);
6216 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6217 NDR_PULL_ALLOC(ndr, r->in.info);
6218 }
6219 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6220 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
6221 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6222 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6223 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6224 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
6225 ZERO_STRUCTP(r->out.trustdom_handle);
6226 }
6227 if (flags & NDR_OUT) {
6228 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6229 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
6230 }
6231 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6232 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
6233 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
6234 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
6235 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6236 }
6237 return NDR_ERR_SUCCESS;
6238 }
6239
6240 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
6241 {
6242 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomain");
6243 ndr->depth++;
6244 if (flags & NDR_SET_VALUES) {
6245 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6246 }
6247 if (flags & NDR_IN) {
6248 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomain");
6249 ndr->depth++;
6250 ndr_print_ptr(ndr, "policy_handle", r->in.policy_handle);
6251 ndr->depth++;
6252 ndr_print_policy_handle(ndr, "policy_handle", r->in.policy_handle);
6253 ndr->depth--;
6254 ndr_print_ptr(ndr, "info", r->in.info);
6255 ndr->depth++;
6256 ndr_print_lsa_DomainInfo(ndr, "info", r->in.info);
6257 ndr->depth--;
6258 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6259 ndr->depth--;
6260 }
6261 if (flags & NDR_OUT) {
6262 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomain");
6263 ndr->depth++;
6264 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
6265 ndr->depth++;
6266 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
6267 ndr->depth--;
6268 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6269 ndr->depth--;
6270 }
6271 ndr->depth--;
6272 }
6273
6274 static enum ndr_err_code ndr_push_lsa_EnumTrustDom(struct ndr_push *ndr, int flags, const struct lsa_EnumTrustDom *r)
/* [<][>][^][v][top][bottom][index][help] */
6275 {
6276 if (flags & NDR_IN) {
6277 if (r->in.handle == NULL) {
6278 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6279 }
6280 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6281 if (r->in.resume_handle == NULL) {
6282 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6283 }
6284 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6285 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
6286 }
6287 if (flags & NDR_OUT) {
6288 if (r->out.resume_handle == NULL) {
6289 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6290 }
6291 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6292 if (r->out.domains == NULL) {
6293 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6294 }
6295 NDR_CHECK(ndr_push_lsa_DomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
6296 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6297 }
6298 return NDR_ERR_SUCCESS;
6299 }
6300
6301 static enum ndr_err_code ndr_pull_lsa_EnumTrustDom(struct ndr_pull *ndr, int flags, struct lsa_EnumTrustDom *r)
/* [<][>][^][v][top][bottom][index][help] */
6302 {
6303 TALLOC_CTX *_mem_save_handle_0;
6304 TALLOC_CTX *_mem_save_resume_handle_0;
6305 TALLOC_CTX *_mem_save_domains_0;
6306 if (flags & NDR_IN) {
6307 ZERO_STRUCT(r->out);
6308
6309 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6310 NDR_PULL_ALLOC(ndr, r->in.handle);
6311 }
6312 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6313 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6314 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6315 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6316 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6317 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6318 }
6319 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6320 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6321 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6322 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6323 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
6324 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6325 *r->out.resume_handle = *r->in.resume_handle;
6326 NDR_PULL_ALLOC(ndr, r->out.domains);
6327 ZERO_STRUCTP(r->out.domains);
6328 }
6329 if (flags & NDR_OUT) {
6330 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6331 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6332 }
6333 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6334 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6335 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
6336 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6337 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6338 NDR_PULL_ALLOC(ndr, r->out.domains);
6339 }
6340 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
6341 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
6342 NDR_CHECK(ndr_pull_lsa_DomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
6343 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
6344 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6345 }
6346 return NDR_ERR_SUCCESS;
6347 }
6348
6349 _PUBLIC_ void ndr_print_lsa_EnumTrustDom(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumTrustDom *r)
/* [<][>][^][v][top][bottom][index][help] */
6350 {
6351 ndr_print_struct(ndr, name, "lsa_EnumTrustDom");
6352 ndr->depth++;
6353 if (flags & NDR_SET_VALUES) {
6354 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6355 }
6356 if (flags & NDR_IN) {
6357 ndr_print_struct(ndr, "in", "lsa_EnumTrustDom");
6358 ndr->depth++;
6359 ndr_print_ptr(ndr, "handle", r->in.handle);
6360 ndr->depth++;
6361 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6362 ndr->depth--;
6363 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
6364 ndr->depth++;
6365 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
6366 ndr->depth--;
6367 ndr_print_uint32(ndr, "max_size", r->in.max_size);
6368 ndr->depth--;
6369 }
6370 if (flags & NDR_OUT) {
6371 ndr_print_struct(ndr, "out", "lsa_EnumTrustDom");
6372 ndr->depth++;
6373 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
6374 ndr->depth++;
6375 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
6376 ndr->depth--;
6377 ndr_print_ptr(ndr, "domains", r->out.domains);
6378 ndr->depth++;
6379 ndr_print_lsa_DomainList(ndr, "domains", r->out.domains);
6380 ndr->depth--;
6381 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6382 ndr->depth--;
6383 }
6384 ndr->depth--;
6385 }
6386
6387 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames(struct ndr_push *ndr, int flags, const struct lsa_LookupNames *r)
/* [<][>][^][v][top][bottom][index][help] */
6388 {
6389 uint32_t cntr_names_0;
6390 if (flags & NDR_IN) {
6391 if (r->in.handle == NULL) {
6392 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6393 }
6394 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6395 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
6396 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
6397 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
6398 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
6399 }
6400 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
6401 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
6402 }
6403 if (r->in.sids == NULL) {
6404 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6405 }
6406 NDR_CHECK(ndr_push_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
6407 NDR_CHECK(ndr_push_lsa_LookupNamesLevel(ndr, NDR_SCALARS, r->in.level));
6408 if (r->in.count == NULL) {
6409 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6410 }
6411 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
6412 }
6413 if (flags & NDR_OUT) {
6414 if (r->out.domains == NULL) {
6415 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6416 }
6417 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
6418 if (*r->out.domains) {
6419 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
6420 }
6421 if (r->out.sids == NULL) {
6422 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6423 }
6424 NDR_CHECK(ndr_push_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
6425 if (r->out.count == NULL) {
6426 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6427 }
6428 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
6429 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6430 }
6431 return NDR_ERR_SUCCESS;
6432 }
6433
6434 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames(struct ndr_pull *ndr, int flags, struct lsa_LookupNames *r)
/* [<][>][^][v][top][bottom][index][help] */
6435 {
6436 uint32_t cntr_names_0;
6437 uint32_t _ptr_domains;
6438 TALLOC_CTX *_mem_save_handle_0;
6439 TALLOC_CTX *_mem_save_names_0;
6440 TALLOC_CTX *_mem_save_domains_0;
6441 TALLOC_CTX *_mem_save_domains_1;
6442 TALLOC_CTX *_mem_save_sids_0;
6443 TALLOC_CTX *_mem_save_count_0;
6444 if (flags & NDR_IN) {
6445 ZERO_STRUCT(r->out);
6446
6447 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6448 NDR_PULL_ALLOC(ndr, r->in.handle);
6449 }
6450 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6451 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6452 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6453 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6454 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
6455 if (r->in.num_names > 1000) {
6456 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
6457 }
6458 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
6459 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
6460 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
6461 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
6462 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
6463 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
6464 }
6465 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
6466 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
6467 }
6468 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
6469 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6470 NDR_PULL_ALLOC(ndr, r->in.sids);
6471 }
6472 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
6473 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
6474 NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
6475 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
6476 NDR_CHECK(ndr_pull_lsa_LookupNamesLevel(ndr, NDR_SCALARS, &r->in.level));
6477 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6478 NDR_PULL_ALLOC(ndr, r->in.count);
6479 }
6480 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
6481 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
6482 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
6483 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
6484 NDR_PULL_ALLOC(ndr, r->out.domains);
6485 ZERO_STRUCTP(r->out.domains);
6486 NDR_PULL_ALLOC(ndr, r->out.sids);
6487 *r->out.sids = *r->in.sids;
6488 NDR_PULL_ALLOC(ndr, r->out.count);
6489 *r->out.count = *r->in.count;
6490 if (r->in.names) {
6491 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
6492 }
6493 }
6494 if (flags & NDR_OUT) {
6495 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6496 NDR_PULL_ALLOC(ndr, r->out.domains);
6497 }
6498 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
6499 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
6500 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
6501 if (_ptr_domains) {
6502 NDR_PULL_ALLOC(ndr, *r->out.domains);
6503 } else {
6504 *r->out.domains = NULL;
6505 }
6506 if (*r->out.domains) {
6507 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
6508 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
6509 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
6510 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
6511 }
6512 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
6513 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6514 NDR_PULL_ALLOC(ndr, r->out.sids);
6515 }
6516 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
6517 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
6518 NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
6519 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
6520 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6521 NDR_PULL_ALLOC(ndr, r->out.count);
6522 }
6523 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
6524 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
6525 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
6526 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
6527 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6528 }
6529 return NDR_ERR_SUCCESS;
6530 }
6531
6532 _PUBLIC_ void ndr_print_lsa_LookupNames(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames *r)
/* [<][>][^][v][top][bottom][index][help] */
6533 {
6534 uint32_t cntr_names_0;
6535 ndr_print_struct(ndr, name, "lsa_LookupNames");
6536 ndr->depth++;
6537 if (flags & NDR_SET_VALUES) {
6538 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6539 }
6540 if (flags & NDR_IN) {
6541 ndr_print_struct(ndr, "in", "lsa_LookupNames");
6542 ndr->depth++;
6543 ndr_print_ptr(ndr, "handle", r->in.handle);
6544 ndr->depth++;
6545 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6546 ndr->depth--;
6547 ndr_print_uint32(ndr, "num_names", r->in.num_names);
6548 ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->in.num_names);
6549 ndr->depth++;
6550 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
6551 char *idx_0=NULL;
6552 if (asprintf(&idx_0, "[%d]", cntr_names_0) != -1) {
6553 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
6554 free(idx_0);
6555 }
6556 }
6557 ndr->depth--;
6558 ndr_print_ptr(ndr, "sids", r->in.sids);
6559 ndr->depth++;
6560 ndr_print_lsa_TransSidArray(ndr, "sids", r->in.sids);
6561 ndr->depth--;
6562 ndr_print_lsa_LookupNamesLevel(ndr, "level", r->in.level);
6563 ndr_print_ptr(ndr, "count", r->in.count);
6564 ndr->depth++;
6565 ndr_print_uint32(ndr, "count", *r->in.count);
6566 ndr->depth--;
6567 ndr->depth--;
6568 }
6569 if (flags & NDR_OUT) {
6570 ndr_print_struct(ndr, "out", "lsa_LookupNames");
6571 ndr->depth++;
6572 ndr_print_ptr(ndr, "domains", r->out.domains);
6573 ndr->depth++;
6574 ndr_print_ptr(ndr, "domains", *r->out.domains);
6575 ndr->depth++;
6576 if (*r->out.domains) {
6577 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
6578 }
6579 ndr->depth--;
6580 ndr->depth--;
6581 ndr_print_ptr(ndr, "sids", r->out.sids);
6582 ndr->depth++;
6583 ndr_print_lsa_TransSidArray(ndr, "sids", r->out.sids);
6584 ndr->depth--;
6585 ndr_print_ptr(ndr, "count", r->out.count);
6586 ndr->depth++;
6587 ndr_print_uint32(ndr, "count", *r->out.count);
6588 ndr->depth--;
6589 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6590 ndr->depth--;
6591 }
6592 ndr->depth--;
6593 }
6594
6595 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupSids(struct ndr_push *ndr, int flags, const struct lsa_LookupSids *r)
/* [<][>][^][v][top][bottom][index][help] */
6596 {
6597 if (flags & NDR_IN) {
6598 if (r->in.handle == NULL) {
6599 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6600 }
6601 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6602 if (r->in.sids == NULL) {
6603 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6604 }
6605 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
6606 if (r->in.names == NULL) {
6607 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6608 }
6609 NDR_CHECK(ndr_push_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
6610 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
6611 if (r->in.count == NULL) {
6612 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6613 }
6614 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
6615 }
6616 if (flags & NDR_OUT) {
6617 if (r->out.domains == NULL) {
6618 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6619 }
6620 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
6621 if (*r->out.domains) {
6622 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
6623 }
6624 if (r->out.names == NULL) {
6625 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6626 }
6627 NDR_CHECK(ndr_push_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
6628 if (r->out.count == NULL) {
6629 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6630 }
6631 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
6632 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6633 }
6634 return NDR_ERR_SUCCESS;
6635 }
6636
6637 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupSids(struct ndr_pull *ndr, int flags, struct lsa_LookupSids *r)
/* [<][>][^][v][top][bottom][index][help] */
6638 {
6639 uint32_t _ptr_domains;
6640 TALLOC_CTX *_mem_save_handle_0;
6641 TALLOC_CTX *_mem_save_sids_0;
6642 TALLOC_CTX *_mem_save_domains_0;
6643 TALLOC_CTX *_mem_save_domains_1;
6644 TALLOC_CTX *_mem_save_names_0;
6645 TALLOC_CTX *_mem_save_count_0;
6646 if (flags & NDR_IN) {
6647 ZERO_STRUCT(r->out);
6648
6649 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6650 NDR_PULL_ALLOC(ndr, r->in.handle);
6651 }
6652 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6653 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6654 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6655 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6656 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6657 NDR_PULL_ALLOC(ndr, r->in.sids);
6658 }
6659 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
6660 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
6661 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
6662 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
6663 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6664 NDR_PULL_ALLOC(ndr, r->in.names);
6665 }
6666 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
6667 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
6668 NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
6669 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
6670 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
6671 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6672 NDR_PULL_ALLOC(ndr, r->in.count);
6673 }
6674 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
6675 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
6676 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
6677 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
6678 NDR_PULL_ALLOC(ndr, r->out.domains);
6679 ZERO_STRUCTP(r->out.domains);
6680 NDR_PULL_ALLOC(ndr, r->out.names);
6681 *r->out.names = *r->in.names;
6682 NDR_PULL_ALLOC(ndr, r->out.count);
6683 *r->out.count = *r->in.count;
6684 }
6685 if (flags & NDR_OUT) {
6686 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6687 NDR_PULL_ALLOC(ndr, r->out.domains);
6688 }
6689 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
6690 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
6691 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
6692 if (_ptr_domains) {
6693 NDR_PULL_ALLOC(ndr, *r->out.domains);
6694 } else {
6695 *r->out.domains = NULL;
6696 }
6697 if (*r->out.domains) {
6698 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
6699 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
6700 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
6701 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
6702 }
6703 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
6704 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6705 NDR_PULL_ALLOC(ndr, r->out.names);
6706 }
6707 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
6708 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
6709 NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
6710 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
6711 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6712 NDR_PULL_ALLOC(ndr, r->out.count);
6713 }
6714 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
6715 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
6716 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
6717 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
6718 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6719 }
6720 return NDR_ERR_SUCCESS;
6721 }
6722
6723 _PUBLIC_ void ndr_print_lsa_LookupSids(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids *r)
/* [<][>][^][v][top][bottom][index][help] */
6724 {
6725 ndr_print_struct(ndr, name, "lsa_LookupSids");
6726 ndr->depth++;
6727 if (flags & NDR_SET_VALUES) {
6728 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6729 }
6730 if (flags & NDR_IN) {
6731 ndr_print_struct(ndr, "in", "lsa_LookupSids");
6732 ndr->depth++;
6733 ndr_print_ptr(ndr, "handle", r->in.handle);
6734 ndr->depth++;
6735 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6736 ndr->depth--;
6737 ndr_print_ptr(ndr, "sids", r->in.sids);
6738 ndr->depth++;
6739 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
6740 ndr->depth--;
6741 ndr_print_ptr(ndr, "names", r->in.names);
6742 ndr->depth++;
6743 ndr_print_lsa_TransNameArray(ndr, "names", r->in.names);
6744 ndr->depth--;
6745 ndr_print_uint16(ndr, "level", r->in.level);
6746 ndr_print_ptr(ndr, "count", r->in.count);
6747 ndr->depth++;
6748 ndr_print_uint32(ndr, "count", *r->in.count);
6749 ndr->depth--;
6750 ndr->depth--;
6751 }
6752 if (flags & NDR_OUT) {
6753 ndr_print_struct(ndr, "out", "lsa_LookupSids");
6754 ndr->depth++;
6755 ndr_print_ptr(ndr, "domains", r->out.domains);
6756 ndr->depth++;
6757 ndr_print_ptr(ndr, "domains", *r->out.domains);
6758 ndr->depth++;
6759 if (*r->out.domains) {
6760 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
6761 }
6762 ndr->depth--;
6763 ndr->depth--;
6764 ndr_print_ptr(ndr, "names", r->out.names);
6765 ndr->depth++;
6766 ndr_print_lsa_TransNameArray(ndr, "names", r->out.names);
6767 ndr->depth--;
6768 ndr_print_ptr(ndr, "count", r->out.count);
6769 ndr->depth++;
6770 ndr_print_uint32(ndr, "count", *r->out.count);
6771 ndr->depth--;
6772 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6773 ndr->depth--;
6774 }
6775 ndr->depth--;
6776 }
6777
6778 _PUBLIC_ enum ndr_err_code ndr_push_lsa_CreateSecret(struct ndr_push *ndr, int flags, const struct lsa_CreateSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
6779 {
6780 if (flags & NDR_IN) {
6781 if (r->in.handle == NULL) {
6782 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6783 }
6784 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6785 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
6786 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6787 }
6788 if (flags & NDR_OUT) {
6789 if (r->out.sec_handle == NULL) {
6790 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6791 }
6792 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.sec_handle));
6793 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6794 }
6795 return NDR_ERR_SUCCESS;
6796 }
6797
6798 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_CreateSecret(struct ndr_pull *ndr, int flags, struct lsa_CreateSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
6799 {
6800 TALLOC_CTX *_mem_save_handle_0;
6801 TALLOC_CTX *_mem_save_sec_handle_0;
6802 if (flags & NDR_IN) {
6803 ZERO_STRUCT(r->out);
6804
6805 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6806 NDR_PULL_ALLOC(ndr, r->in.handle);
6807 }
6808 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6809 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6810 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6811 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6812 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
6813 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6814 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
6815 ZERO_STRUCTP(r->out.sec_handle);
6816 }
6817 if (flags & NDR_OUT) {
6818 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6819 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
6820 }
6821 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6822 NDR_PULL_SET_MEM_CTX(ndr, r->out.sec_handle, LIBNDR_FLAG_REF_ALLOC);
6823 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.sec_handle));
6824 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
6825 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6826 }
6827 return NDR_ERR_SUCCESS;
6828 }
6829
6830 _PUBLIC_ void ndr_print_lsa_CreateSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
6831 {
6832 ndr_print_struct(ndr, name, "lsa_CreateSecret");
6833 ndr->depth++;
6834 if (flags & NDR_SET_VALUES) {
6835 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6836 }
6837 if (flags & NDR_IN) {
6838 ndr_print_struct(ndr, "in", "lsa_CreateSecret");
6839 ndr->depth++;
6840 ndr_print_ptr(ndr, "handle", r->in.handle);
6841 ndr->depth++;
6842 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6843 ndr->depth--;
6844 ndr_print_lsa_String(ndr, "name", &r->in.name);
6845 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6846 ndr->depth--;
6847 }
6848 if (flags & NDR_OUT) {
6849 ndr_print_struct(ndr, "out", "lsa_CreateSecret");
6850 ndr->depth++;
6851 ndr_print_ptr(ndr, "sec_handle", r->out.sec_handle);
6852 ndr->depth++;
6853 ndr_print_policy_handle(ndr, "sec_handle", r->out.sec_handle);
6854 ndr->depth--;
6855 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6856 ndr->depth--;
6857 }
6858 ndr->depth--;
6859 }
6860
6861 static enum ndr_err_code ndr_push_lsa_OpenAccount(struct ndr_push *ndr, int flags, const struct lsa_OpenAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
6862 {
6863 if (flags & NDR_IN) {
6864 if (r->in.handle == NULL) {
6865 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6866 }
6867 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6868 if (r->in.sid == NULL) {
6869 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6870 }
6871 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6872 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6873 }
6874 if (flags & NDR_OUT) {
6875 if (r->out.acct_handle == NULL) {
6876 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6877 }
6878 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.acct_handle));
6879 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6880 }
6881 return NDR_ERR_SUCCESS;
6882 }
6883
6884 static enum ndr_err_code ndr_pull_lsa_OpenAccount(struct ndr_pull *ndr, int flags, struct lsa_OpenAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
6885 {
6886 TALLOC_CTX *_mem_save_handle_0;
6887 TALLOC_CTX *_mem_save_sid_0;
6888 TALLOC_CTX *_mem_save_acct_handle_0;
6889 if (flags & NDR_IN) {
6890 ZERO_STRUCT(r->out);
6891
6892 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6893 NDR_PULL_ALLOC(ndr, r->in.handle);
6894 }
6895 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6896 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6897 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6898 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6899 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6900 NDR_PULL_ALLOC(ndr, r->in.sid);
6901 }
6902 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6903 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
6904 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6905 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6906 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6907 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
6908 ZERO_STRUCTP(r->out.acct_handle);
6909 }
6910 if (flags & NDR_OUT) {
6911 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6912 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
6913 }
6914 _mem_save_acct_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6915 NDR_PULL_SET_MEM_CTX(ndr, r->out.acct_handle, LIBNDR_FLAG_REF_ALLOC);
6916 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.acct_handle));
6917 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_acct_handle_0, LIBNDR_FLAG_REF_ALLOC);
6918 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6919 }
6920 return NDR_ERR_SUCCESS;
6921 }
6922
6923 _PUBLIC_ void ndr_print_lsa_OpenAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
6924 {
6925 ndr_print_struct(ndr, name, "lsa_OpenAccount");
6926 ndr->depth++;
6927 if (flags & NDR_SET_VALUES) {
6928 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6929 }
6930 if (flags & NDR_IN) {
6931 ndr_print_struct(ndr, "in", "lsa_OpenAccount");
6932 ndr->depth++;
6933 ndr_print_ptr(ndr, "handle", r->in.handle);
6934 ndr->depth++;
6935 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6936 ndr->depth--;
6937 ndr_print_ptr(ndr, "sid", r->in.sid);
6938 ndr->depth++;
6939 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
6940 ndr->depth--;
6941 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6942 ndr->depth--;
6943 }
6944 if (flags & NDR_OUT) {
6945 ndr_print_struct(ndr, "out", "lsa_OpenAccount");
6946 ndr->depth++;
6947 ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
6948 ndr->depth++;
6949 ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
6950 ndr->depth--;
6951 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6952 ndr->depth--;
6953 }
6954 ndr->depth--;
6955 }
6956
6957 static enum ndr_err_code ndr_push_lsa_EnumPrivsAccount(struct ndr_push *ndr, int flags, const struct lsa_EnumPrivsAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
6958 {
6959 if (flags & NDR_IN) {
6960 if (r->in.handle == NULL) {
6961 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6962 }
6963 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6964 }
6965 if (flags & NDR_OUT) {
6966 if (r->out.privs == NULL) {
6967 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6968 }
6969 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.privs));
6970 if (*r->out.privs) {
6971 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, *r->out.privs));
6972 }
6973 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6974 }
6975 return NDR_ERR_SUCCESS;
6976 }
6977
6978 static enum ndr_err_code ndr_pull_lsa_EnumPrivsAccount(struct ndr_pull *ndr, int flags, struct lsa_EnumPrivsAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
6979 {
6980 uint32_t _ptr_privs;
6981 TALLOC_CTX *_mem_save_handle_0;
6982 TALLOC_CTX *_mem_save_privs_0;
6983 TALLOC_CTX *_mem_save_privs_1;
6984 if (flags & NDR_IN) {
6985 ZERO_STRUCT(r->out);
6986
6987 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6988 NDR_PULL_ALLOC(ndr, r->in.handle);
6989 }
6990 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6991 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6992 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
6993 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6994 NDR_PULL_ALLOC(ndr, r->out.privs);
6995 ZERO_STRUCTP(r->out.privs);
6996 }
6997 if (flags & NDR_OUT) {
6998 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6999 NDR_PULL_ALLOC(ndr, r->out.privs);
7000 }
7001 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
7002 NDR_PULL_SET_MEM_CTX(ndr, r->out.privs, LIBNDR_FLAG_REF_ALLOC);
7003 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
7004 if (_ptr_privs) {
7005 NDR_PULL_ALLOC(ndr, *r->out.privs);
7006 } else {
7007 *r->out.privs = NULL;
7008 }
7009 if (*r->out.privs) {
7010 _mem_save_privs_1 = NDR_PULL_GET_MEM_CTX(ndr);
7011 NDR_PULL_SET_MEM_CTX(ndr, *r->out.privs, 0);
7012 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, *r->out.privs));
7013 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_1, 0);
7014 }
7015 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, LIBNDR_FLAG_REF_ALLOC);
7016 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7017 }
7018 return NDR_ERR_SUCCESS;
7019 }
7020
7021 _PUBLIC_ void ndr_print_lsa_EnumPrivsAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumPrivsAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7022 {
7023 ndr_print_struct(ndr, name, "lsa_EnumPrivsAccount");
7024 ndr->depth++;
7025 if (flags & NDR_SET_VALUES) {
7026 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7027 }
7028 if (flags & NDR_IN) {
7029 ndr_print_struct(ndr, "in", "lsa_EnumPrivsAccount");
7030 ndr->depth++;
7031 ndr_print_ptr(ndr, "handle", r->in.handle);
7032 ndr->depth++;
7033 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7034 ndr->depth--;
7035 ndr->depth--;
7036 }
7037 if (flags & NDR_OUT) {
7038 ndr_print_struct(ndr, "out", "lsa_EnumPrivsAccount");
7039 ndr->depth++;
7040 ndr_print_ptr(ndr, "privs", r->out.privs);
7041 ndr->depth++;
7042 ndr_print_ptr(ndr, "privs", *r->out.privs);
7043 ndr->depth++;
7044 if (*r->out.privs) {
7045 ndr_print_lsa_PrivilegeSet(ndr, "privs", *r->out.privs);
7046 }
7047 ndr->depth--;
7048 ndr->depth--;
7049 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7050 ndr->depth--;
7051 }
7052 ndr->depth--;
7053 }
7054
7055 static enum ndr_err_code ndr_push_lsa_AddPrivilegesToAccount(struct ndr_push *ndr, int flags, const struct lsa_AddPrivilegesToAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7056 {
7057 if (flags & NDR_IN) {
7058 if (r->in.handle == NULL) {
7059 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7060 }
7061 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7062 if (r->in.privs == NULL) {
7063 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7064 }
7065 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
7066 }
7067 if (flags & NDR_OUT) {
7068 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7069 }
7070 return NDR_ERR_SUCCESS;
7071 }
7072
7073 static enum ndr_err_code ndr_pull_lsa_AddPrivilegesToAccount(struct ndr_pull *ndr, int flags, struct lsa_AddPrivilegesToAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7074 {
7075 TALLOC_CTX *_mem_save_handle_0;
7076 TALLOC_CTX *_mem_save_privs_0;
7077 if (flags & NDR_IN) {
7078 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7079 NDR_PULL_ALLOC(ndr, r->in.handle);
7080 }
7081 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7082 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7083 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7084 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7085 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7086 NDR_PULL_ALLOC(ndr, r->in.privs);
7087 }
7088 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
7089 NDR_PULL_SET_MEM_CTX(ndr, r->in.privs, LIBNDR_FLAG_REF_ALLOC);
7090 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
7091 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, LIBNDR_FLAG_REF_ALLOC);
7092 }
7093 if (flags & NDR_OUT) {
7094 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7095 }
7096 return NDR_ERR_SUCCESS;
7097 }
7098
7099 _PUBLIC_ void ndr_print_lsa_AddPrivilegesToAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_AddPrivilegesToAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7100 {
7101 ndr_print_struct(ndr, name, "lsa_AddPrivilegesToAccount");
7102 ndr->depth++;
7103 if (flags & NDR_SET_VALUES) {
7104 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7105 }
7106 if (flags & NDR_IN) {
7107 ndr_print_struct(ndr, "in", "lsa_AddPrivilegesToAccount");
7108 ndr->depth++;
7109 ndr_print_ptr(ndr, "handle", r->in.handle);
7110 ndr->depth++;
7111 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7112 ndr->depth--;
7113 ndr_print_ptr(ndr, "privs", r->in.privs);
7114 ndr->depth++;
7115 ndr_print_lsa_PrivilegeSet(ndr, "privs", r->in.privs);
7116 ndr->depth--;
7117 ndr->depth--;
7118 }
7119 if (flags & NDR_OUT) {
7120 ndr_print_struct(ndr, "out", "lsa_AddPrivilegesToAccount");
7121 ndr->depth++;
7122 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7123 ndr->depth--;
7124 }
7125 ndr->depth--;
7126 }
7127
7128 static enum ndr_err_code ndr_push_lsa_RemovePrivilegesFromAccount(struct ndr_push *ndr, int flags, const struct lsa_RemovePrivilegesFromAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7129 {
7130 if (flags & NDR_IN) {
7131 if (r->in.handle == NULL) {
7132 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7133 }
7134 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7135 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.remove_all));
7136 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.privs));
7137 if (r->in.privs) {
7138 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
7139 }
7140 }
7141 if (flags & NDR_OUT) {
7142 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7143 }
7144 return NDR_ERR_SUCCESS;
7145 }
7146
7147 static enum ndr_err_code ndr_pull_lsa_RemovePrivilegesFromAccount(struct ndr_pull *ndr, int flags, struct lsa_RemovePrivilegesFromAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7148 {
7149 uint32_t _ptr_privs;
7150 TALLOC_CTX *_mem_save_handle_0;
7151 TALLOC_CTX *_mem_save_privs_0;
7152 if (flags & NDR_IN) {
7153 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7154 NDR_PULL_ALLOC(ndr, r->in.handle);
7155 }
7156 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7157 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7158 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7159 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7160 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.remove_all));
7161 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
7162 if (_ptr_privs) {
7163 NDR_PULL_ALLOC(ndr, r->in.privs);
7164 } else {
7165 r->in.privs = NULL;
7166 }
7167 if (r->in.privs) {
7168 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
7169 NDR_PULL_SET_MEM_CTX(ndr, r->in.privs, 0);
7170 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
7171 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, 0);
7172 }
7173 }
7174 if (flags & NDR_OUT) {
7175 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7176 }
7177 return NDR_ERR_SUCCESS;
7178 }
7179
7180 _PUBLIC_ void ndr_print_lsa_RemovePrivilegesFromAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RemovePrivilegesFromAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7181 {
7182 ndr_print_struct(ndr, name, "lsa_RemovePrivilegesFromAccount");
7183 ndr->depth++;
7184 if (flags & NDR_SET_VALUES) {
7185 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7186 }
7187 if (flags & NDR_IN) {
7188 ndr_print_struct(ndr, "in", "lsa_RemovePrivilegesFromAccount");
7189 ndr->depth++;
7190 ndr_print_ptr(ndr, "handle", r->in.handle);
7191 ndr->depth++;
7192 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7193 ndr->depth--;
7194 ndr_print_uint8(ndr, "remove_all", r->in.remove_all);
7195 ndr_print_ptr(ndr, "privs", r->in.privs);
7196 ndr->depth++;
7197 if (r->in.privs) {
7198 ndr_print_lsa_PrivilegeSet(ndr, "privs", r->in.privs);
7199 }
7200 ndr->depth--;
7201 ndr->depth--;
7202 }
7203 if (flags & NDR_OUT) {
7204 ndr_print_struct(ndr, "out", "lsa_RemovePrivilegesFromAccount");
7205 ndr->depth++;
7206 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7207 ndr->depth--;
7208 }
7209 ndr->depth--;
7210 }
7211
7212 static enum ndr_err_code ndr_push_lsa_GetQuotasForAccount(struct ndr_push *ndr, int flags, const struct lsa_GetQuotasForAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7213 {
7214 if (flags & NDR_IN) {
7215 }
7216 if (flags & NDR_OUT) {
7217 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7218 }
7219 return NDR_ERR_SUCCESS;
7220 }
7221
7222 static enum ndr_err_code ndr_pull_lsa_GetQuotasForAccount(struct ndr_pull *ndr, int flags, struct lsa_GetQuotasForAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7223 {
7224 if (flags & NDR_IN) {
7225 }
7226 if (flags & NDR_OUT) {
7227 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7228 }
7229 return NDR_ERR_SUCCESS;
7230 }
7231
7232 _PUBLIC_ void ndr_print_lsa_GetQuotasForAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetQuotasForAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7233 {
7234 ndr_print_struct(ndr, name, "lsa_GetQuotasForAccount");
7235 ndr->depth++;
7236 if (flags & NDR_SET_VALUES) {
7237 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7238 }
7239 if (flags & NDR_IN) {
7240 ndr_print_struct(ndr, "in", "lsa_GetQuotasForAccount");
7241 ndr->depth++;
7242 ndr->depth--;
7243 }
7244 if (flags & NDR_OUT) {
7245 ndr_print_struct(ndr, "out", "lsa_GetQuotasForAccount");
7246 ndr->depth++;
7247 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7248 ndr->depth--;
7249 }
7250 ndr->depth--;
7251 }
7252
7253 static enum ndr_err_code ndr_push_lsa_SetQuotasForAccount(struct ndr_push *ndr, int flags, const struct lsa_SetQuotasForAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7254 {
7255 if (flags & NDR_IN) {
7256 }
7257 if (flags & NDR_OUT) {
7258 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7259 }
7260 return NDR_ERR_SUCCESS;
7261 }
7262
7263 static enum ndr_err_code ndr_pull_lsa_SetQuotasForAccount(struct ndr_pull *ndr, int flags, struct lsa_SetQuotasForAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7264 {
7265 if (flags & NDR_IN) {
7266 }
7267 if (flags & NDR_OUT) {
7268 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7269 }
7270 return NDR_ERR_SUCCESS;
7271 }
7272
7273 _PUBLIC_ void ndr_print_lsa_SetQuotasForAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetQuotasForAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7274 {
7275 ndr_print_struct(ndr, name, "lsa_SetQuotasForAccount");
7276 ndr->depth++;
7277 if (flags & NDR_SET_VALUES) {
7278 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7279 }
7280 if (flags & NDR_IN) {
7281 ndr_print_struct(ndr, "in", "lsa_SetQuotasForAccount");
7282 ndr->depth++;
7283 ndr->depth--;
7284 }
7285 if (flags & NDR_OUT) {
7286 ndr_print_struct(ndr, "out", "lsa_SetQuotasForAccount");
7287 ndr->depth++;
7288 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7289 ndr->depth--;
7290 }
7291 ndr->depth--;
7292 }
7293
7294 static enum ndr_err_code ndr_push_lsa_GetSystemAccessAccount(struct ndr_push *ndr, int flags, const struct lsa_GetSystemAccessAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7295 {
7296 if (flags & NDR_IN) {
7297 if (r->in.handle == NULL) {
7298 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7299 }
7300 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7301 }
7302 if (flags & NDR_OUT) {
7303 if (r->out.access_mask == NULL) {
7304 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7305 }
7306 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.access_mask));
7307 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7308 }
7309 return NDR_ERR_SUCCESS;
7310 }
7311
7312 static enum ndr_err_code ndr_pull_lsa_GetSystemAccessAccount(struct ndr_pull *ndr, int flags, struct lsa_GetSystemAccessAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7313 {
7314 TALLOC_CTX *_mem_save_handle_0;
7315 TALLOC_CTX *_mem_save_access_mask_0;
7316 if (flags & NDR_IN) {
7317 ZERO_STRUCT(r->out);
7318
7319 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7320 NDR_PULL_ALLOC(ndr, r->in.handle);
7321 }
7322 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7323 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7324 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7325 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7326 NDR_PULL_ALLOC(ndr, r->out.access_mask);
7327 ZERO_STRUCTP(r->out.access_mask);
7328 }
7329 if (flags & NDR_OUT) {
7330 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7331 NDR_PULL_ALLOC(ndr, r->out.access_mask);
7332 }
7333 _mem_save_access_mask_0 = NDR_PULL_GET_MEM_CTX(ndr);
7334 NDR_PULL_SET_MEM_CTX(ndr, r->out.access_mask, LIBNDR_FLAG_REF_ALLOC);
7335 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.access_mask));
7336 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_access_mask_0, LIBNDR_FLAG_REF_ALLOC);
7337 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7338 }
7339 return NDR_ERR_SUCCESS;
7340 }
7341
7342 _PUBLIC_ void ndr_print_lsa_GetSystemAccessAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetSystemAccessAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7343 {
7344 ndr_print_struct(ndr, name, "lsa_GetSystemAccessAccount");
7345 ndr->depth++;
7346 if (flags & NDR_SET_VALUES) {
7347 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7348 }
7349 if (flags & NDR_IN) {
7350 ndr_print_struct(ndr, "in", "lsa_GetSystemAccessAccount");
7351 ndr->depth++;
7352 ndr_print_ptr(ndr, "handle", r->in.handle);
7353 ndr->depth++;
7354 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7355 ndr->depth--;
7356 ndr->depth--;
7357 }
7358 if (flags & NDR_OUT) {
7359 ndr_print_struct(ndr, "out", "lsa_GetSystemAccessAccount");
7360 ndr->depth++;
7361 ndr_print_ptr(ndr, "access_mask", r->out.access_mask);
7362 ndr->depth++;
7363 ndr_print_uint32(ndr, "access_mask", *r->out.access_mask);
7364 ndr->depth--;
7365 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7366 ndr->depth--;
7367 }
7368 ndr->depth--;
7369 }
7370
7371 static enum ndr_err_code ndr_push_lsa_SetSystemAccessAccount(struct ndr_push *ndr, int flags, const struct lsa_SetSystemAccessAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7372 {
7373 if (flags & NDR_IN) {
7374 if (r->in.handle == NULL) {
7375 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7376 }
7377 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7378 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
7379 }
7380 if (flags & NDR_OUT) {
7381 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7382 }
7383 return NDR_ERR_SUCCESS;
7384 }
7385
7386 static enum ndr_err_code ndr_pull_lsa_SetSystemAccessAccount(struct ndr_pull *ndr, int flags, struct lsa_SetSystemAccessAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7387 {
7388 TALLOC_CTX *_mem_save_handle_0;
7389 if (flags & NDR_IN) {
7390 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7391 NDR_PULL_ALLOC(ndr, r->in.handle);
7392 }
7393 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7394 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7395 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7396 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7397 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
7398 }
7399 if (flags & NDR_OUT) {
7400 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7401 }
7402 return NDR_ERR_SUCCESS;
7403 }
7404
7405 _PUBLIC_ void ndr_print_lsa_SetSystemAccessAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSystemAccessAccount *r)
/* [<][>][^][v][top][bottom][index][help] */
7406 {
7407 ndr_print_struct(ndr, name, "lsa_SetSystemAccessAccount");
7408 ndr->depth++;
7409 if (flags & NDR_SET_VALUES) {
7410 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7411 }
7412 if (flags & NDR_IN) {
7413 ndr_print_struct(ndr, "in", "lsa_SetSystemAccessAccount");
7414 ndr->depth++;
7415 ndr_print_ptr(ndr, "handle", r->in.handle);
7416 ndr->depth++;
7417 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7418 ndr->depth--;
7419 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
7420 ndr->depth--;
7421 }
7422 if (flags & NDR_OUT) {
7423 ndr_print_struct(ndr, "out", "lsa_SetSystemAccessAccount");
7424 ndr->depth++;
7425 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7426 ndr->depth--;
7427 }
7428 ndr->depth--;
7429 }
7430
7431 static enum ndr_err_code ndr_push_lsa_OpenTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_OpenTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
7432 {
7433 if (flags & NDR_IN) {
7434 if (r->in.handle == NULL) {
7435 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7436 }
7437 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7438 if (r->in.sid == NULL) {
7439 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7440 }
7441 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7442 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
7443 }
7444 if (flags & NDR_OUT) {
7445 if (r->out.trustdom_handle == NULL) {
7446 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7447 }
7448 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
7449 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7450 }
7451 return NDR_ERR_SUCCESS;
7452 }
7453
7454 static enum ndr_err_code ndr_pull_lsa_OpenTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_OpenTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
7455 {
7456 TALLOC_CTX *_mem_save_handle_0;
7457 TALLOC_CTX *_mem_save_sid_0;
7458 TALLOC_CTX *_mem_save_trustdom_handle_0;
7459 if (flags & NDR_IN) {
7460 ZERO_STRUCT(r->out);
7461
7462 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7463 NDR_PULL_ALLOC(ndr, r->in.handle);
7464 }
7465 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7466 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7467 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7468 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7469 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7470 NDR_PULL_ALLOC(ndr, r->in.sid);
7471 }
7472 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7473 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
7474 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7475 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
7476 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
7477 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
7478 ZERO_STRUCTP(r->out.trustdom_handle);
7479 }
7480 if (flags & NDR_OUT) {
7481 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7482 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
7483 }
7484 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7485 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
7486 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
7487 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
7488 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7489 }
7490 return NDR_ERR_SUCCESS;
7491 }
7492
7493 _PUBLIC_ void ndr_print_lsa_OpenTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
7494 {
7495 ndr_print_struct(ndr, name, "lsa_OpenTrustedDomain");
7496 ndr->depth++;
7497 if (flags & NDR_SET_VALUES) {
7498 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7499 }
7500 if (flags & NDR_IN) {
7501 ndr_print_struct(ndr, "in", "lsa_OpenTrustedDomain");
7502 ndr->depth++;
7503 ndr_print_ptr(ndr, "handle", r->in.handle);
7504 ndr->depth++;
7505 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7506 ndr->depth--;
7507 ndr_print_ptr(ndr, "sid", r->in.sid);
7508 ndr->depth++;
7509 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
7510 ndr->depth--;
7511 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
7512 ndr->depth--;
7513 }
7514 if (flags & NDR_OUT) {
7515 ndr_print_struct(ndr, "out", "lsa_OpenTrustedDomain");
7516 ndr->depth++;
7517 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
7518 ndr->depth++;
7519 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
7520 ndr->depth--;
7521 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7522 ndr->depth--;
7523 }
7524 ndr->depth--;
7525 }
7526
7527 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfo(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
7528 {
7529 if (flags & NDR_IN) {
7530 if (r->in.trustdom_handle == NULL) {
7531 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7532 }
7533 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.trustdom_handle));
7534 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
7535 }
7536 if (flags & NDR_OUT) {
7537 if (r->out.info == NULL) {
7538 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7539 }
7540 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
7541 if (*r->out.info) {
7542 NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
7543 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
7544 }
7545 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7546 }
7547 return NDR_ERR_SUCCESS;
7548 }
7549
7550 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfo(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
7551 {
7552 uint32_t _ptr_info;
7553 TALLOC_CTX *_mem_save_trustdom_handle_0;
7554 TALLOC_CTX *_mem_save_info_0;
7555 TALLOC_CTX *_mem_save_info_1;
7556 if (flags & NDR_IN) {
7557 ZERO_STRUCT(r->out);
7558
7559 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7560 NDR_PULL_ALLOC(ndr, r->in.trustdom_handle);
7561 }
7562 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7563 NDR_PULL_SET_MEM_CTX(ndr, r->in.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
7564 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.trustdom_handle));
7565 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
7566 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
7567 NDR_PULL_ALLOC(ndr, r->out.info);
7568 ZERO_STRUCTP(r->out.info);
7569 }
7570 if (flags & NDR_OUT) {
7571 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7572 NDR_PULL_ALLOC(ndr, r->out.info);
7573 }
7574 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7575 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
7576 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
7577 if (_ptr_info) {
7578 NDR_PULL_ALLOC(ndr, *r->out.info);
7579 } else {
7580 *r->out.info = NULL;
7581 }
7582 if (*r->out.info) {
7583 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
7584 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
7585 NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
7586 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
7587 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
7588 }
7589 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7590 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7591 }
7592 return NDR_ERR_SUCCESS;
7593 }
7594
7595 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
7596 {
7597 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfo");
7598 ndr->depth++;
7599 if (flags & NDR_SET_VALUES) {
7600 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7601 }
7602 if (flags & NDR_IN) {
7603 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfo");
7604 ndr->depth++;
7605 ndr_print_ptr(ndr, "trustdom_handle", r->in.trustdom_handle);
7606 ndr->depth++;
7607 ndr_print_policy_handle(ndr, "trustdom_handle", r->in.trustdom_handle);
7608 ndr->depth--;
7609 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
7610 ndr->depth--;
7611 }
7612 if (flags & NDR_OUT) {
7613 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfo");
7614 ndr->depth++;
7615 ndr_print_ptr(ndr, "info", r->out.info);
7616 ndr->depth++;
7617 ndr_print_ptr(ndr, "info", *r->out.info);
7618 ndr->depth++;
7619 if (*r->out.info) {
7620 ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
7621 ndr_print_lsa_TrustedDomainInfo(ndr, "info", *r->out.info);
7622 }
7623 ndr->depth--;
7624 ndr->depth--;
7625 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7626 ndr->depth--;
7627 }
7628 ndr->depth--;
7629 }
7630
7631 static enum ndr_err_code ndr_push_lsa_SetInformationTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_SetInformationTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
7632 {
7633 if (flags & NDR_IN) {
7634 if (r->in.trustdom_handle == NULL) {
7635 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7636 }
7637 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.trustdom_handle));
7638 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
7639 if (r->in.info == NULL) {
7640 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7641 }
7642 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
7643 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
7644 }
7645 if (flags & NDR_OUT) {
7646 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7647 }
7648 return NDR_ERR_SUCCESS;
7649 }
7650
7651 static enum ndr_err_code ndr_pull_lsa_SetInformationTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_SetInformationTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
7652 {
7653 TALLOC_CTX *_mem_save_trustdom_handle_0;
7654 TALLOC_CTX *_mem_save_info_0;
7655 if (flags & NDR_IN) {
7656 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7657 NDR_PULL_ALLOC(ndr, r->in.trustdom_handle);
7658 }
7659 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7660 NDR_PULL_SET_MEM_CTX(ndr, r->in.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
7661 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.trustdom_handle));
7662 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
7663 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
7664 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7665 NDR_PULL_ALLOC(ndr, r->in.info);
7666 }
7667 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7668 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
7669 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
7670 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
7671 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7672 }
7673 if (flags & NDR_OUT) {
7674 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7675 }
7676 return NDR_ERR_SUCCESS;
7677 }
7678
7679 _PUBLIC_ void ndr_print_lsa_SetInformationTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInformationTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
7680 {
7681 ndr_print_struct(ndr, name, "lsa_SetInformationTrustedDomain");
7682 ndr->depth++;
7683 if (flags & NDR_SET_VALUES) {
7684 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7685 }
7686 if (flags & NDR_IN) {
7687 ndr_print_struct(ndr, "in", "lsa_SetInformationTrustedDomain");
7688 ndr->depth++;
7689 ndr_print_ptr(ndr, "trustdom_handle", r->in.trustdom_handle);
7690 ndr->depth++;
7691 ndr_print_policy_handle(ndr, "trustdom_handle", r->in.trustdom_handle);
7692 ndr->depth--;
7693 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
7694 ndr_print_ptr(ndr, "info", r->in.info);
7695 ndr->depth++;
7696 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
7697 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->in.info);
7698 ndr->depth--;
7699 ndr->depth--;
7700 }
7701 if (flags & NDR_OUT) {
7702 ndr_print_struct(ndr, "out", "lsa_SetInformationTrustedDomain");
7703 ndr->depth++;
7704 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7705 ndr->depth--;
7706 }
7707 ndr->depth--;
7708 }
7709
7710 _PUBLIC_ enum ndr_err_code ndr_push_lsa_OpenSecret(struct ndr_push *ndr, int flags, const struct lsa_OpenSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
7711 {
7712 if (flags & NDR_IN) {
7713 if (r->in.handle == NULL) {
7714 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7715 }
7716 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7717 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
7718 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
7719 }
7720 if (flags & NDR_OUT) {
7721 if (r->out.sec_handle == NULL) {
7722 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7723 }
7724 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.sec_handle));
7725 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7726 }
7727 return NDR_ERR_SUCCESS;
7728 }
7729
7730 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_OpenSecret(struct ndr_pull *ndr, int flags, struct lsa_OpenSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
7731 {
7732 TALLOC_CTX *_mem_save_handle_0;
7733 TALLOC_CTX *_mem_save_sec_handle_0;
7734 if (flags & NDR_IN) {
7735 ZERO_STRUCT(r->out);
7736
7737 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7738 NDR_PULL_ALLOC(ndr, r->in.handle);
7739 }
7740 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7741 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7742 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
7743 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7744 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
7745 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
7746 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
7747 ZERO_STRUCTP(r->out.sec_handle);
7748 }
7749 if (flags & NDR_OUT) {
7750 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7751 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
7752 }
7753 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7754 NDR_PULL_SET_MEM_CTX(ndr, r->out.sec_handle, LIBNDR_FLAG_REF_ALLOC);
7755 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.sec_handle));
7756 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
7757 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7758 }
7759 return NDR_ERR_SUCCESS;
7760 }
7761
7762 _PUBLIC_ void ndr_print_lsa_OpenSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
7763 {
7764 ndr_print_struct(ndr, name, "lsa_OpenSecret");
7765 ndr->depth++;
7766 if (flags & NDR_SET_VALUES) {
7767 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7768 }
7769 if (flags & NDR_IN) {
7770 ndr_print_struct(ndr, "in", "lsa_OpenSecret");
7771 ndr->depth++;
7772 ndr_print_ptr(ndr, "handle", r->in.handle);
7773 ndr->depth++;
7774 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7775 ndr->depth--;
7776 ndr_print_lsa_String(ndr, "name", &r->in.name);
7777 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
7778 ndr->depth--;
7779 }
7780 if (flags & NDR_OUT) {
7781 ndr_print_struct(ndr, "out", "lsa_OpenSecret");
7782 ndr->depth++;
7783 ndr_print_ptr(ndr, "sec_handle", r->out.sec_handle);
7784 ndr->depth++;
7785 ndr_print_policy_handle(ndr, "sec_handle", r->out.sec_handle);
7786 ndr->depth--;
7787 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7788 ndr->depth--;
7789 }
7790 ndr->depth--;
7791 }
7792
7793 _PUBLIC_ enum ndr_err_code ndr_push_lsa_SetSecret(struct ndr_push *ndr, int flags, const struct lsa_SetSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
7794 {
7795 if (flags & NDR_IN) {
7796 if (r->in.sec_handle == NULL) {
7797 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7798 }
7799 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.sec_handle));
7800 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_val));
7801 if (r->in.new_val) {
7802 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
7803 }
7804 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_val));
7805 if (r->in.old_val) {
7806 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
7807 }
7808 }
7809 if (flags & NDR_OUT) {
7810 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7811 }
7812 return NDR_ERR_SUCCESS;
7813 }
7814
7815 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SetSecret(struct ndr_pull *ndr, int flags, struct lsa_SetSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
7816 {
7817 uint32_t _ptr_new_val;
7818 uint32_t _ptr_old_val;
7819 TALLOC_CTX *_mem_save_sec_handle_0;
7820 TALLOC_CTX *_mem_save_new_val_0;
7821 TALLOC_CTX *_mem_save_old_val_0;
7822 if (flags & NDR_IN) {
7823 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7824 NDR_PULL_ALLOC(ndr, r->in.sec_handle);
7825 }
7826 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7827 NDR_PULL_SET_MEM_CTX(ndr, r->in.sec_handle, LIBNDR_FLAG_REF_ALLOC);
7828 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.sec_handle));
7829 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
7830 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
7831 if (_ptr_new_val) {
7832 NDR_PULL_ALLOC(ndr, r->in.new_val);
7833 } else {
7834 r->in.new_val = NULL;
7835 }
7836 if (r->in.new_val) {
7837 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7838 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_val, 0);
7839 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
7840 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
7841 }
7842 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
7843 if (_ptr_old_val) {
7844 NDR_PULL_ALLOC(ndr, r->in.old_val);
7845 } else {
7846 r->in.old_val = NULL;
7847 }
7848 if (r->in.old_val) {
7849 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7850 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_val, 0);
7851 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
7852 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
7853 }
7854 }
7855 if (flags & NDR_OUT) {
7856 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7857 }
7858 return NDR_ERR_SUCCESS;
7859 }
7860
7861 _PUBLIC_ void ndr_print_lsa_SetSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSecret *r)
/* [<][>][^][v][top][bottom][index][help] */
7862 {
7863 ndr_print_struct(ndr, name, "lsa_SetSecret");
7864 ndr->depth++;
7865 if (flags & NDR_SET_VALUES) {
7866 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7867 }
7868 if (flags & NDR_IN) {
7869 ndr_print_struct(ndr, "in", "lsa_SetSecret");
7870 ndr->depth++;
7871 ndr_print_ptr(ndr, "sec_handle", r->in.sec_handle);
7872 ndr->depth++;
7873 ndr_print_policy_handle(ndr, "sec_handle", r->in.sec_handle);
7874 ndr->depth--;
7875 ndr_print_ptr(ndr, "new_val", r->in.new_val);
7876 ndr->depth++;
7877 if (r->in.new_val) {
7878 ndr_print_lsa_DATA_BUF(ndr, "new_val", r->in.new_val);
7879 }
7880 ndr->depth--;
7881 ndr_print_ptr(ndr, "old_val", r->in.old_val);
7882 ndr->depth++;
7883 if (r->in.old_val) {
7884 ndr_print_lsa_DATA_BUF(ndr, "old_val", r->in.old_val);
7885 }
7886 ndr->depth--;
7887 ndr->depth--;
7888 }
7889 if (flags & NDR_OUT) {
7890 ndr_print_struct(ndr, "out", "lsa_SetSecret");
7891 ndr->depth++;
7892 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7893 ndr->depth--;
7894 }
7895 ndr->depth--;
7896 }
7897
7898 _PUBLIC_ enum ndr_err_code ndr_push_lsa_QuerySecret(struct ndr_push *ndr, int flags, const struct lsa_QuerySecret *r)
/* [<][>][^][v][top][bottom][index][help] */
7899 {
7900 if (flags & NDR_IN) {
7901 if (r->in.sec_handle == NULL) {
7902 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7903 }
7904 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.sec_handle));
7905 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_val));
7906 if (r->in.new_val) {
7907 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
7908 }
7909 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_mtime));
7910 if (r->in.new_mtime) {
7911 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->in.new_mtime));
7912 }
7913 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_val));
7914 if (r->in.old_val) {
7915 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
7916 }
7917 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_mtime));
7918 if (r->in.old_mtime) {
7919 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->in.old_mtime));
7920 }
7921 }
7922 if (flags & NDR_OUT) {
7923 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.new_val));
7924 if (r->out.new_val) {
7925 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.new_val));
7926 }
7927 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.new_mtime));
7928 if (r->out.new_mtime) {
7929 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->out.new_mtime));
7930 }
7931 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.old_val));
7932 if (r->out.old_val) {
7933 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.old_val));
7934 }
7935 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.old_mtime));
7936 if (r->out.old_mtime) {
7937 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->out.old_mtime));
7938 }
7939 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7940 }
7941 return NDR_ERR_SUCCESS;
7942 }
7943
7944 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_QuerySecret(struct ndr_pull *ndr, int flags, struct lsa_QuerySecret *r)
/* [<][>][^][v][top][bottom][index][help] */
7945 {
7946 uint32_t _ptr_new_val;
7947 uint32_t _ptr_new_mtime;
7948 uint32_t _ptr_old_val;
7949 uint32_t _ptr_old_mtime;
7950 TALLOC_CTX *_mem_save_sec_handle_0;
7951 TALLOC_CTX *_mem_save_new_val_0;
7952 TALLOC_CTX *_mem_save_new_mtime_0;
7953 TALLOC_CTX *_mem_save_old_val_0;
7954 TALLOC_CTX *_mem_save_old_mtime_0;
7955 if (flags & NDR_IN) {
7956 ZERO_STRUCT(r->out);
7957
7958 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7959 NDR_PULL_ALLOC(ndr, r->in.sec_handle);
7960 }
7961 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7962 NDR_PULL_SET_MEM_CTX(ndr, r->in.sec_handle, LIBNDR_FLAG_REF_ALLOC);
7963 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.sec_handle));
7964 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
7965 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
7966 if (_ptr_new_val) {
7967 NDR_PULL_ALLOC(ndr, r->in.new_val);
7968 } else {
7969 r->in.new_val = NULL;
7970 }
7971 if (r->in.new_val) {
7972 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7973 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_val, 0);
7974 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
7975 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
7976 }
7977 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_mtime));
7978 if (_ptr_new_mtime) {
7979 NDR_PULL_ALLOC(ndr, r->in.new_mtime);
7980 } else {
7981 r->in.new_mtime = NULL;
7982 }
7983 if (r->in.new_mtime) {
7984 _mem_save_new_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
7985 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_mtime, 0);
7986 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->in.new_mtime));
7987 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_mtime_0, 0);
7988 }
7989 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
7990 if (_ptr_old_val) {
7991 NDR_PULL_ALLOC(ndr, r->in.old_val);
7992 } else {
7993 r->in.old_val = NULL;
7994 }
7995 if (r->in.old_val) {
7996 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7997 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_val, 0);
7998 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
7999 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
8000 }
8001 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_mtime));
8002 if (_ptr_old_mtime) {
8003 NDR_PULL_ALLOC(ndr, r->in.old_mtime);
8004 } else {
8005 r->in.old_mtime = NULL;
8006 }
8007 if (r->in.old_mtime) {
8008 _mem_save_old_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
8009 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_mtime, 0);
8010 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->in.old_mtime));
8011 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_mtime_0, 0);
8012 }
8013 }
8014 if (flags & NDR_OUT) {
8015 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
8016 if (_ptr_new_val) {
8017 NDR_PULL_ALLOC(ndr, r->out.new_val);
8018 } else {
8019 r->out.new_val = NULL;
8020 }
8021 if (r->out.new_val) {
8022 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
8023 NDR_PULL_SET_MEM_CTX(ndr, r->out.new_val, 0);
8024 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.new_val));
8025 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
8026 }
8027 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_mtime));
8028 if (_ptr_new_mtime) {
8029 NDR_PULL_ALLOC(ndr, r->out.new_mtime);
8030 } else {
8031 r->out.new_mtime = NULL;
8032 }
8033 if (r->out.new_mtime) {
8034 _mem_save_new_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
8035 NDR_PULL_SET_MEM_CTX(ndr, r->out.new_mtime, 0);
8036 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->out.new_mtime));
8037 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_mtime_0, 0);
8038 }
8039 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
8040 if (_ptr_old_val) {
8041 NDR_PULL_ALLOC(ndr, r->out.old_val);
8042 } else {
8043 r->out.old_val = NULL;
8044 }
8045 if (r->out.old_val) {
8046 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
8047 NDR_PULL_SET_MEM_CTX(ndr, r->out.old_val, 0);
8048 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.old_val));
8049 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
8050 }
8051 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_mtime));
8052 if (_ptr_old_mtime) {
8053 NDR_PULL_ALLOC(ndr, r->out.old_mtime);
8054 } else {
8055 r->out.old_mtime = NULL;
8056 }
8057 if (r->out.old_mtime) {
8058 _mem_save_old_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
8059 NDR_PULL_SET_MEM_CTX(ndr, r->out.old_mtime, 0);
8060 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->out.old_mtime));
8061 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_mtime_0, 0);
8062 }
8063 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8064 }
8065 return NDR_ERR_SUCCESS;
8066 }
8067
8068 _PUBLIC_ void ndr_print_lsa_QuerySecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QuerySecret *r)
/* [<][>][^][v][top][bottom][index][help] */
8069 {
8070 ndr_print_struct(ndr, name, "lsa_QuerySecret");
8071 ndr->depth++;
8072 if (flags & NDR_SET_VALUES) {
8073 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8074 }
8075 if (flags & NDR_IN) {
8076 ndr_print_struct(ndr, "in", "lsa_QuerySecret");
8077 ndr->depth++;
8078 ndr_print_ptr(ndr, "sec_handle", r->in.sec_handle);
8079 ndr->depth++;
8080 ndr_print_policy_handle(ndr, "sec_handle", r->in.sec_handle);
8081 ndr->depth--;
8082 ndr_print_ptr(ndr, "new_val", r->in.new_val);
8083 ndr->depth++;
8084 if (r->in.new_val) {
8085 ndr_print_lsa_DATA_BUF_PTR(ndr, "new_val", r->in.new_val);
8086 }
8087 ndr->depth--;
8088 ndr_print_ptr(ndr, "new_mtime", r->in.new_mtime);
8089 ndr->depth++;
8090 if (r->in.new_mtime) {
8091 ndr_print_NTTIME_hyper(ndr, "new_mtime", *r->in.new_mtime);
8092 }
8093 ndr->depth--;
8094 ndr_print_ptr(ndr, "old_val", r->in.old_val);
8095 ndr->depth++;
8096 if (r->in.old_val) {
8097 ndr_print_lsa_DATA_BUF_PTR(ndr, "old_val", r->in.old_val);
8098 }
8099 ndr->depth--;
8100 ndr_print_ptr(ndr, "old_mtime", r->in.old_mtime);
8101 ndr->depth++;
8102 if (r->in.old_mtime) {
8103 ndr_print_NTTIME_hyper(ndr, "old_mtime", *r->in.old_mtime);
8104 }
8105 ndr->depth--;
8106 ndr->depth--;
8107 }
8108 if (flags & NDR_OUT) {
8109 ndr_print_struct(ndr, "out", "lsa_QuerySecret");
8110 ndr->depth++;
8111 ndr_print_ptr(ndr, "new_val", r->out.new_val);
8112 ndr->depth++;
8113 if (r->out.new_val) {
8114 ndr_print_lsa_DATA_BUF_PTR(ndr, "new_val", r->out.new_val);
8115 }
8116 ndr->depth--;
8117 ndr_print_ptr(ndr, "new_mtime", r->out.new_mtime);
8118 ndr->depth++;
8119 if (r->out.new_mtime) {
8120 ndr_print_NTTIME_hyper(ndr, "new_mtime", *r->out.new_mtime);
8121 }
8122 ndr->depth--;
8123 ndr_print_ptr(ndr, "old_val", r->out.old_val);
8124 ndr->depth++;
8125 if (r->out.old_val) {
8126 ndr_print_lsa_DATA_BUF_PTR(ndr, "old_val", r->out.old_val);
8127 }
8128 ndr->depth--;
8129 ndr_print_ptr(ndr, "old_mtime", r->out.old_mtime);
8130 ndr->depth++;
8131 if (r->out.old_mtime) {
8132 ndr_print_NTTIME_hyper(ndr, "old_mtime", *r->out.old_mtime);
8133 }
8134 ndr->depth--;
8135 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8136 ndr->depth--;
8137 }
8138 ndr->depth--;
8139 }
8140
8141 static enum ndr_err_code ndr_push_lsa_LookupPrivValue(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivValue *r)
/* [<][>][^][v][top][bottom][index][help] */
8142 {
8143 if (flags & NDR_IN) {
8144 if (r->in.handle == NULL) {
8145 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8146 }
8147 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8148 if (r->in.name == NULL) {
8149 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8150 }
8151 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
8152 }
8153 if (flags & NDR_OUT) {
8154 if (r->out.luid == NULL) {
8155 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8156 }
8157 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, r->out.luid));
8158 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8159 }
8160 return NDR_ERR_SUCCESS;
8161 }
8162
8163 static enum ndr_err_code ndr_pull_lsa_LookupPrivValue(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivValue *r)
/* [<][>][^][v][top][bottom][index][help] */
8164 {
8165 TALLOC_CTX *_mem_save_handle_0;
8166 TALLOC_CTX *_mem_save_name_0;
8167 TALLOC_CTX *_mem_save_luid_0;
8168 if (flags & NDR_IN) {
8169 ZERO_STRUCT(r->out);
8170
8171 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8172 NDR_PULL_ALLOC(ndr, r->in.handle);
8173 }
8174 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8175 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8176 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8177 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8178 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8179 NDR_PULL_ALLOC(ndr, r->in.name);
8180 }
8181 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8182 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
8183 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
8184 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
8185 NDR_PULL_ALLOC(ndr, r->out.luid);
8186 ZERO_STRUCTP(r->out.luid);
8187 }
8188 if (flags & NDR_OUT) {
8189 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8190 NDR_PULL_ALLOC(ndr, r->out.luid);
8191 }
8192 _mem_save_luid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8193 NDR_PULL_SET_MEM_CTX(ndr, r->out.luid, LIBNDR_FLAG_REF_ALLOC);
8194 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, r->out.luid));
8195 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_luid_0, LIBNDR_FLAG_REF_ALLOC);
8196 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8197 }
8198 return NDR_ERR_SUCCESS;
8199 }
8200
8201 _PUBLIC_ void ndr_print_lsa_LookupPrivValue(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivValue *r)
/* [<][>][^][v][top][bottom][index][help] */
8202 {
8203 ndr_print_struct(ndr, name, "lsa_LookupPrivValue");
8204 ndr->depth++;
8205 if (flags & NDR_SET_VALUES) {
8206 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8207 }
8208 if (flags & NDR_IN) {
8209 ndr_print_struct(ndr, "in", "lsa_LookupPrivValue");
8210 ndr->depth++;
8211 ndr_print_ptr(ndr, "handle", r->in.handle);
8212 ndr->depth++;
8213 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8214 ndr->depth--;
8215 ndr_print_ptr(ndr, "name", r->in.name);
8216 ndr->depth++;
8217 ndr_print_lsa_String(ndr, "name", r->in.name);
8218 ndr->depth--;
8219 ndr->depth--;
8220 }
8221 if (flags & NDR_OUT) {
8222 ndr_print_struct(ndr, "out", "lsa_LookupPrivValue");
8223 ndr->depth++;
8224 ndr_print_ptr(ndr, "luid", r->out.luid);
8225 ndr->depth++;
8226 ndr_print_lsa_LUID(ndr, "luid", r->out.luid);
8227 ndr->depth--;
8228 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8229 ndr->depth--;
8230 }
8231 ndr->depth--;
8232 }
8233
8234 static enum ndr_err_code ndr_push_lsa_LookupPrivName(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivName *r)
/* [<][>][^][v][top][bottom][index][help] */
8235 {
8236 if (flags & NDR_IN) {
8237 if (r->in.handle == NULL) {
8238 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8239 }
8240 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8241 if (r->in.luid == NULL) {
8242 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8243 }
8244 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, r->in.luid));
8245 }
8246 if (flags & NDR_OUT) {
8247 if (r->out.name == NULL) {
8248 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8249 }
8250 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.name));
8251 if (*r->out.name) {
8252 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.name));
8253 }
8254 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8255 }
8256 return NDR_ERR_SUCCESS;
8257 }
8258
8259 static enum ndr_err_code ndr_pull_lsa_LookupPrivName(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivName *r)
/* [<][>][^][v][top][bottom][index][help] */
8260 {
8261 uint32_t _ptr_name;
8262 TALLOC_CTX *_mem_save_handle_0;
8263 TALLOC_CTX *_mem_save_luid_0;
8264 TALLOC_CTX *_mem_save_name_0;
8265 TALLOC_CTX *_mem_save_name_1;
8266 if (flags & NDR_IN) {
8267 ZERO_STRUCT(r->out);
8268
8269 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8270 NDR_PULL_ALLOC(ndr, r->in.handle);
8271 }
8272 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8273 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8274 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8275 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8276 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8277 NDR_PULL_ALLOC(ndr, r->in.luid);
8278 }
8279 _mem_save_luid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8280 NDR_PULL_SET_MEM_CTX(ndr, r->in.luid, LIBNDR_FLAG_REF_ALLOC);
8281 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, r->in.luid));
8282 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_luid_0, LIBNDR_FLAG_REF_ALLOC);
8283 NDR_PULL_ALLOC(ndr, r->out.name);
8284 ZERO_STRUCTP(r->out.name);
8285 }
8286 if (flags & NDR_OUT) {
8287 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8288 NDR_PULL_ALLOC(ndr, r->out.name);
8289 }
8290 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8291 NDR_PULL_SET_MEM_CTX(ndr, r->out.name, LIBNDR_FLAG_REF_ALLOC);
8292 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
8293 if (_ptr_name) {
8294 NDR_PULL_ALLOC(ndr, *r->out.name);
8295 } else {
8296 *r->out.name = NULL;
8297 }
8298 if (*r->out.name) {
8299 _mem_save_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
8300 NDR_PULL_SET_MEM_CTX(ndr, *r->out.name, 0);
8301 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.name));
8302 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_1, 0);
8303 }
8304 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
8305 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8306 }
8307 return NDR_ERR_SUCCESS;
8308 }
8309
8310 _PUBLIC_ void ndr_print_lsa_LookupPrivName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivName *r)
/* [<][>][^][v][top][bottom][index][help] */
8311 {
8312 ndr_print_struct(ndr, name, "lsa_LookupPrivName");
8313 ndr->depth++;
8314 if (flags & NDR_SET_VALUES) {
8315 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8316 }
8317 if (flags & NDR_IN) {
8318 ndr_print_struct(ndr, "in", "lsa_LookupPrivName");
8319 ndr->depth++;
8320 ndr_print_ptr(ndr, "handle", r->in.handle);
8321 ndr->depth++;
8322 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8323 ndr->depth--;
8324 ndr_print_ptr(ndr, "luid", r->in.luid);
8325 ndr->depth++;
8326 ndr_print_lsa_LUID(ndr, "luid", r->in.luid);
8327 ndr->depth--;
8328 ndr->depth--;
8329 }
8330 if (flags & NDR_OUT) {
8331 ndr_print_struct(ndr, "out", "lsa_LookupPrivName");
8332 ndr->depth++;
8333 ndr_print_ptr(ndr, "name", r->out.name);
8334 ndr->depth++;
8335 ndr_print_ptr(ndr, "name", *r->out.name);
8336 ndr->depth++;
8337 if (*r->out.name) {
8338 ndr_print_lsa_StringLarge(ndr, "name", *r->out.name);
8339 }
8340 ndr->depth--;
8341 ndr->depth--;
8342 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8343 ndr->depth--;
8344 }
8345 ndr->depth--;
8346 }
8347
8348 static enum ndr_err_code ndr_push_lsa_LookupPrivDisplayName(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivDisplayName *r)
/* [<][>][^][v][top][bottom][index][help] */
8349 {
8350 if (flags & NDR_IN) {
8351 if (r->in.handle == NULL) {
8352 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8353 }
8354 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8355 if (r->in.name == NULL) {
8356 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8357 }
8358 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
8359 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.language_id));
8360 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.language_id_sys));
8361 }
8362 if (flags & NDR_OUT) {
8363 if (r->out.disp_name == NULL) {
8364 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8365 }
8366 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.disp_name));
8367 if (*r->out.disp_name) {
8368 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.disp_name));
8369 }
8370 if (r->out.returned_language_id == NULL) {
8371 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8372 }
8373 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->out.returned_language_id));
8374 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8375 }
8376 return NDR_ERR_SUCCESS;
8377 }
8378
8379 static enum ndr_err_code ndr_pull_lsa_LookupPrivDisplayName(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivDisplayName *r)
/* [<][>][^][v][top][bottom][index][help] */
8380 {
8381 uint32_t _ptr_disp_name;
8382 TALLOC_CTX *_mem_save_handle_0;
8383 TALLOC_CTX *_mem_save_name_0;
8384 TALLOC_CTX *_mem_save_disp_name_0;
8385 TALLOC_CTX *_mem_save_disp_name_1;
8386 TALLOC_CTX *_mem_save_returned_language_id_0;
8387 if (flags & NDR_IN) {
8388 ZERO_STRUCT(r->out);
8389
8390 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8391 NDR_PULL_ALLOC(ndr, r->in.handle);
8392 }
8393 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8394 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8395 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8396 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8397 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8398 NDR_PULL_ALLOC(ndr, r->in.name);
8399 }
8400 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8401 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
8402 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
8403 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
8404 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.language_id));
8405 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.language_id_sys));
8406 NDR_PULL_ALLOC(ndr, r->out.disp_name);
8407 ZERO_STRUCTP(r->out.disp_name);
8408 NDR_PULL_ALLOC(ndr, r->out.returned_language_id);
8409 ZERO_STRUCTP(r->out.returned_language_id);
8410 }
8411 if (flags & NDR_OUT) {
8412 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8413 NDR_PULL_ALLOC(ndr, r->out.disp_name);
8414 }
8415 _mem_save_disp_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8416 NDR_PULL_SET_MEM_CTX(ndr, r->out.disp_name, LIBNDR_FLAG_REF_ALLOC);
8417 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_disp_name));
8418 if (_ptr_disp_name) {
8419 NDR_PULL_ALLOC(ndr, *r->out.disp_name);
8420 } else {
8421 *r->out.disp_name = NULL;
8422 }
8423 if (*r->out.disp_name) {
8424 _mem_save_disp_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
8425 NDR_PULL_SET_MEM_CTX(ndr, *r->out.disp_name, 0);
8426 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.disp_name));
8427 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_disp_name_1, 0);
8428 }
8429 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_disp_name_0, LIBNDR_FLAG_REF_ALLOC);
8430 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8431 NDR_PULL_ALLOC(ndr, r->out.returned_language_id);
8432 }
8433 _mem_save_returned_language_id_0 = NDR_PULL_GET_MEM_CTX(ndr);
8434 NDR_PULL_SET_MEM_CTX(ndr, r->out.returned_language_id, LIBNDR_FLAG_REF_ALLOC);
8435 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->out.returned_language_id));
8436 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_returned_language_id_0, LIBNDR_FLAG_REF_ALLOC);
8437 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8438 }
8439 return NDR_ERR_SUCCESS;
8440 }
8441
8442 _PUBLIC_ void ndr_print_lsa_LookupPrivDisplayName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivDisplayName *r)
/* [<][>][^][v][top][bottom][index][help] */
8443 {
8444 ndr_print_struct(ndr, name, "lsa_LookupPrivDisplayName");
8445 ndr->depth++;
8446 if (flags & NDR_SET_VALUES) {
8447 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8448 }
8449 if (flags & NDR_IN) {
8450 ndr_print_struct(ndr, "in", "lsa_LookupPrivDisplayName");
8451 ndr->depth++;
8452 ndr_print_ptr(ndr, "handle", r->in.handle);
8453 ndr->depth++;
8454 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8455 ndr->depth--;
8456 ndr_print_ptr(ndr, "name", r->in.name);
8457 ndr->depth++;
8458 ndr_print_lsa_String(ndr, "name", r->in.name);
8459 ndr->depth--;
8460 ndr_print_uint16(ndr, "language_id", r->in.language_id);
8461 ndr_print_uint16(ndr, "language_id_sys", r->in.language_id_sys);
8462 ndr->depth--;
8463 }
8464 if (flags & NDR_OUT) {
8465 ndr_print_struct(ndr, "out", "lsa_LookupPrivDisplayName");
8466 ndr->depth++;
8467 ndr_print_ptr(ndr, "disp_name", r->out.disp_name);
8468 ndr->depth++;
8469 ndr_print_ptr(ndr, "disp_name", *r->out.disp_name);
8470 ndr->depth++;
8471 if (*r->out.disp_name) {
8472 ndr_print_lsa_StringLarge(ndr, "disp_name", *r->out.disp_name);
8473 }
8474 ndr->depth--;
8475 ndr->depth--;
8476 ndr_print_ptr(ndr, "returned_language_id", r->out.returned_language_id);
8477 ndr->depth++;
8478 ndr_print_uint16(ndr, "returned_language_id", *r->out.returned_language_id);
8479 ndr->depth--;
8480 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8481 ndr->depth--;
8482 }
8483 ndr->depth--;
8484 }
8485
8486 static enum ndr_err_code ndr_push_lsa_DeleteObject(struct ndr_push *ndr, int flags, const struct lsa_DeleteObject *r)
/* [<][>][^][v][top][bottom][index][help] */
8487 {
8488 if (flags & NDR_IN) {
8489 if (r->in.handle == NULL) {
8490 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8491 }
8492 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8493 }
8494 if (flags & NDR_OUT) {
8495 if (r->out.handle == NULL) {
8496 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8497 }
8498 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.handle));
8499 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8500 }
8501 return NDR_ERR_SUCCESS;
8502 }
8503
8504 static enum ndr_err_code ndr_pull_lsa_DeleteObject(struct ndr_pull *ndr, int flags, struct lsa_DeleteObject *r)
/* [<][>][^][v][top][bottom][index][help] */
8505 {
8506 TALLOC_CTX *_mem_save_handle_0;
8507 if (flags & NDR_IN) {
8508 ZERO_STRUCT(r->out);
8509
8510 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8511 NDR_PULL_ALLOC(ndr, r->in.handle);
8512 }
8513 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8514 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8515 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8516 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8517 NDR_PULL_ALLOC(ndr, r->out.handle);
8518 *r->out.handle = *r->in.handle;
8519 }
8520 if (flags & NDR_OUT) {
8521 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8522 NDR_PULL_ALLOC(ndr, r->out.handle);
8523 }
8524 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8525 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
8526 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.handle));
8527 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8528 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8529 }
8530 return NDR_ERR_SUCCESS;
8531 }
8532
8533 _PUBLIC_ void ndr_print_lsa_DeleteObject(struct ndr_print *ndr, const char *name, int flags, const struct lsa_DeleteObject *r)
/* [<][>][^][v][top][bottom][index][help] */
8534 {
8535 ndr_print_struct(ndr, name, "lsa_DeleteObject");
8536 ndr->depth++;
8537 if (flags & NDR_SET_VALUES) {
8538 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8539 }
8540 if (flags & NDR_IN) {
8541 ndr_print_struct(ndr, "in", "lsa_DeleteObject");
8542 ndr->depth++;
8543 ndr_print_ptr(ndr, "handle", r->in.handle);
8544 ndr->depth++;
8545 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8546 ndr->depth--;
8547 ndr->depth--;
8548 }
8549 if (flags & NDR_OUT) {
8550 ndr_print_struct(ndr, "out", "lsa_DeleteObject");
8551 ndr->depth++;
8552 ndr_print_ptr(ndr, "handle", r->out.handle);
8553 ndr->depth++;
8554 ndr_print_policy_handle(ndr, "handle", r->out.handle);
8555 ndr->depth--;
8556 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8557 ndr->depth--;
8558 }
8559 ndr->depth--;
8560 }
8561
8562 static enum ndr_err_code ndr_push_lsa_EnumAccountsWithUserRight(struct ndr_push *ndr, int flags, const struct lsa_EnumAccountsWithUserRight *r)
/* [<][>][^][v][top][bottom][index][help] */
8563 {
8564 if (flags & NDR_IN) {
8565 if (r->in.handle == NULL) {
8566 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8567 }
8568 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8569 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.name));
8570 if (r->in.name) {
8571 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
8572 }
8573 }
8574 if (flags & NDR_OUT) {
8575 if (r->out.sids == NULL) {
8576 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8577 }
8578 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
8579 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8580 }
8581 return NDR_ERR_SUCCESS;
8582 }
8583
8584 static enum ndr_err_code ndr_pull_lsa_EnumAccountsWithUserRight(struct ndr_pull *ndr, int flags, struct lsa_EnumAccountsWithUserRight *r)
/* [<][>][^][v][top][bottom][index][help] */
8585 {
8586 uint32_t _ptr_name;
8587 TALLOC_CTX *_mem_save_handle_0;
8588 TALLOC_CTX *_mem_save_name_0;
8589 TALLOC_CTX *_mem_save_sids_0;
8590 if (flags & NDR_IN) {
8591 ZERO_STRUCT(r->out);
8592
8593 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8594 NDR_PULL_ALLOC(ndr, r->in.handle);
8595 }
8596 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8597 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8598 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8599 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8600 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
8601 if (_ptr_name) {
8602 NDR_PULL_ALLOC(ndr, r->in.name);
8603 } else {
8604 r->in.name = NULL;
8605 }
8606 if (r->in.name) {
8607 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8608 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, 0);
8609 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
8610 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
8611 }
8612 NDR_PULL_ALLOC(ndr, r->out.sids);
8613 ZERO_STRUCTP(r->out.sids);
8614 }
8615 if (flags & NDR_OUT) {
8616 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8617 NDR_PULL_ALLOC(ndr, r->out.sids);
8618 }
8619 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
8620 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
8621 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
8622 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
8623 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8624 }
8625 return NDR_ERR_SUCCESS;
8626 }
8627
8628 _PUBLIC_ void ndr_print_lsa_EnumAccountsWithUserRight(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccountsWithUserRight *r)
/* [<][>][^][v][top][bottom][index][help] */
8629 {
8630 ndr_print_struct(ndr, name, "lsa_EnumAccountsWithUserRight");
8631 ndr->depth++;
8632 if (flags & NDR_SET_VALUES) {
8633 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8634 }
8635 if (flags & NDR_IN) {
8636 ndr_print_struct(ndr, "in", "lsa_EnumAccountsWithUserRight");
8637 ndr->depth++;
8638 ndr_print_ptr(ndr, "handle", r->in.handle);
8639 ndr->depth++;
8640 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8641 ndr->depth--;
8642 ndr_print_ptr(ndr, "name", r->in.name);
8643 ndr->depth++;
8644 if (r->in.name) {
8645 ndr_print_lsa_String(ndr, "name", r->in.name);
8646 }
8647 ndr->depth--;
8648 ndr->depth--;
8649 }
8650 if (flags & NDR_OUT) {
8651 ndr_print_struct(ndr, "out", "lsa_EnumAccountsWithUserRight");
8652 ndr->depth++;
8653 ndr_print_ptr(ndr, "sids", r->out.sids);
8654 ndr->depth++;
8655 ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
8656 ndr->depth--;
8657 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8658 ndr->depth--;
8659 }
8660 ndr->depth--;
8661 }
8662
8663 static enum ndr_err_code ndr_push_lsa_EnumAccountRights(struct ndr_push *ndr, int flags, const struct lsa_EnumAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8664 {
8665 if (flags & NDR_IN) {
8666 if (r->in.handle == NULL) {
8667 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8668 }
8669 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8670 if (r->in.sid == NULL) {
8671 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8672 }
8673 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8674 }
8675 if (flags & NDR_OUT) {
8676 if (r->out.rights == NULL) {
8677 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8678 }
8679 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rights));
8680 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8681 }
8682 return NDR_ERR_SUCCESS;
8683 }
8684
8685 static enum ndr_err_code ndr_pull_lsa_EnumAccountRights(struct ndr_pull *ndr, int flags, struct lsa_EnumAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8686 {
8687 TALLOC_CTX *_mem_save_handle_0;
8688 TALLOC_CTX *_mem_save_sid_0;
8689 TALLOC_CTX *_mem_save_rights_0;
8690 if (flags & NDR_IN) {
8691 ZERO_STRUCT(r->out);
8692
8693 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8694 NDR_PULL_ALLOC(ndr, r->in.handle);
8695 }
8696 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8697 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8698 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8699 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8700 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8701 NDR_PULL_ALLOC(ndr, r->in.sid);
8702 }
8703 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8704 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8705 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8706 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8707 NDR_PULL_ALLOC(ndr, r->out.rights);
8708 ZERO_STRUCTP(r->out.rights);
8709 }
8710 if (flags & NDR_OUT) {
8711 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8712 NDR_PULL_ALLOC(ndr, r->out.rights);
8713 }
8714 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
8715 NDR_PULL_SET_MEM_CTX(ndr, r->out.rights, LIBNDR_FLAG_REF_ALLOC);
8716 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rights));
8717 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
8718 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8719 }
8720 return NDR_ERR_SUCCESS;
8721 }
8722
8723 _PUBLIC_ void ndr_print_lsa_EnumAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8724 {
8725 ndr_print_struct(ndr, name, "lsa_EnumAccountRights");
8726 ndr->depth++;
8727 if (flags & NDR_SET_VALUES) {
8728 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8729 }
8730 if (flags & NDR_IN) {
8731 ndr_print_struct(ndr, "in", "lsa_EnumAccountRights");
8732 ndr->depth++;
8733 ndr_print_ptr(ndr, "handle", r->in.handle);
8734 ndr->depth++;
8735 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8736 ndr->depth--;
8737 ndr_print_ptr(ndr, "sid", r->in.sid);
8738 ndr->depth++;
8739 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8740 ndr->depth--;
8741 ndr->depth--;
8742 }
8743 if (flags & NDR_OUT) {
8744 ndr_print_struct(ndr, "out", "lsa_EnumAccountRights");
8745 ndr->depth++;
8746 ndr_print_ptr(ndr, "rights", r->out.rights);
8747 ndr->depth++;
8748 ndr_print_lsa_RightSet(ndr, "rights", r->out.rights);
8749 ndr->depth--;
8750 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8751 ndr->depth--;
8752 }
8753 ndr->depth--;
8754 }
8755
8756 static enum ndr_err_code ndr_push_lsa_AddAccountRights(struct ndr_push *ndr, int flags, const struct lsa_AddAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8757 {
8758 if (flags & NDR_IN) {
8759 if (r->in.handle == NULL) {
8760 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8761 }
8762 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8763 if (r->in.sid == NULL) {
8764 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8765 }
8766 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8767 if (r->in.rights == NULL) {
8768 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8769 }
8770 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
8771 }
8772 if (flags & NDR_OUT) {
8773 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8774 }
8775 return NDR_ERR_SUCCESS;
8776 }
8777
8778 static enum ndr_err_code ndr_pull_lsa_AddAccountRights(struct ndr_pull *ndr, int flags, struct lsa_AddAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8779 {
8780 TALLOC_CTX *_mem_save_handle_0;
8781 TALLOC_CTX *_mem_save_sid_0;
8782 TALLOC_CTX *_mem_save_rights_0;
8783 if (flags & NDR_IN) {
8784 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8785 NDR_PULL_ALLOC(ndr, r->in.handle);
8786 }
8787 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8788 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8789 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8790 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8791 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8792 NDR_PULL_ALLOC(ndr, r->in.sid);
8793 }
8794 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8795 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8796 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8797 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8798 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8799 NDR_PULL_ALLOC(ndr, r->in.rights);
8800 }
8801 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
8802 NDR_PULL_SET_MEM_CTX(ndr, r->in.rights, LIBNDR_FLAG_REF_ALLOC);
8803 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
8804 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
8805 }
8806 if (flags & NDR_OUT) {
8807 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8808 }
8809 return NDR_ERR_SUCCESS;
8810 }
8811
8812 _PUBLIC_ void ndr_print_lsa_AddAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_AddAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8813 {
8814 ndr_print_struct(ndr, name, "lsa_AddAccountRights");
8815 ndr->depth++;
8816 if (flags & NDR_SET_VALUES) {
8817 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8818 }
8819 if (flags & NDR_IN) {
8820 ndr_print_struct(ndr, "in", "lsa_AddAccountRights");
8821 ndr->depth++;
8822 ndr_print_ptr(ndr, "handle", r->in.handle);
8823 ndr->depth++;
8824 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8825 ndr->depth--;
8826 ndr_print_ptr(ndr, "sid", r->in.sid);
8827 ndr->depth++;
8828 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8829 ndr->depth--;
8830 ndr_print_ptr(ndr, "rights", r->in.rights);
8831 ndr->depth++;
8832 ndr_print_lsa_RightSet(ndr, "rights", r->in.rights);
8833 ndr->depth--;
8834 ndr->depth--;
8835 }
8836 if (flags & NDR_OUT) {
8837 ndr_print_struct(ndr, "out", "lsa_AddAccountRights");
8838 ndr->depth++;
8839 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8840 ndr->depth--;
8841 }
8842 ndr->depth--;
8843 }
8844
8845 static enum ndr_err_code ndr_push_lsa_RemoveAccountRights(struct ndr_push *ndr, int flags, const struct lsa_RemoveAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8846 {
8847 if (flags & NDR_IN) {
8848 if (r->in.handle == NULL) {
8849 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8850 }
8851 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8852 if (r->in.sid == NULL) {
8853 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8854 }
8855 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8856 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.remove_all));
8857 if (r->in.rights == NULL) {
8858 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8859 }
8860 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
8861 }
8862 if (flags & NDR_OUT) {
8863 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8864 }
8865 return NDR_ERR_SUCCESS;
8866 }
8867
8868 static enum ndr_err_code ndr_pull_lsa_RemoveAccountRights(struct ndr_pull *ndr, int flags, struct lsa_RemoveAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8869 {
8870 TALLOC_CTX *_mem_save_handle_0;
8871 TALLOC_CTX *_mem_save_sid_0;
8872 TALLOC_CTX *_mem_save_rights_0;
8873 if (flags & NDR_IN) {
8874 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8875 NDR_PULL_ALLOC(ndr, r->in.handle);
8876 }
8877 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8878 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8879 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8880 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8881 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8882 NDR_PULL_ALLOC(ndr, r->in.sid);
8883 }
8884 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8885 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8886 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8887 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8888 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.remove_all));
8889 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8890 NDR_PULL_ALLOC(ndr, r->in.rights);
8891 }
8892 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
8893 NDR_PULL_SET_MEM_CTX(ndr, r->in.rights, LIBNDR_FLAG_REF_ALLOC);
8894 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
8895 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
8896 }
8897 if (flags & NDR_OUT) {
8898 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8899 }
8900 return NDR_ERR_SUCCESS;
8901 }
8902
8903 _PUBLIC_ void ndr_print_lsa_RemoveAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RemoveAccountRights *r)
/* [<][>][^][v][top][bottom][index][help] */
8904 {
8905 ndr_print_struct(ndr, name, "lsa_RemoveAccountRights");
8906 ndr->depth++;
8907 if (flags & NDR_SET_VALUES) {
8908 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8909 }
8910 if (flags & NDR_IN) {
8911 ndr_print_struct(ndr, "in", "lsa_RemoveAccountRights");
8912 ndr->depth++;
8913 ndr_print_ptr(ndr, "handle", r->in.handle);
8914 ndr->depth++;
8915 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8916 ndr->depth--;
8917 ndr_print_ptr(ndr, "sid", r->in.sid);
8918 ndr->depth++;
8919 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8920 ndr->depth--;
8921 ndr_print_uint8(ndr, "remove_all", r->in.remove_all);
8922 ndr_print_ptr(ndr, "rights", r->in.rights);
8923 ndr->depth++;
8924 ndr_print_lsa_RightSet(ndr, "rights", r->in.rights);
8925 ndr->depth--;
8926 ndr->depth--;
8927 }
8928 if (flags & NDR_OUT) {
8929 ndr_print_struct(ndr, "out", "lsa_RemoveAccountRights");
8930 ndr->depth++;
8931 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8932 ndr->depth--;
8933 }
8934 ndr->depth--;
8935 }
8936
8937 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfoBySid(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfoBySid *r)
/* [<][>][^][v][top][bottom][index][help] */
8938 {
8939 if (flags & NDR_IN) {
8940 if (r->in.handle == NULL) {
8941 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8942 }
8943 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8944 if (r->in.dom_sid == NULL) {
8945 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8946 }
8947 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
8948 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
8949 }
8950 if (flags & NDR_OUT) {
8951 if (r->out.info == NULL) {
8952 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8953 }
8954 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
8955 if (*r->out.info) {
8956 NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
8957 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
8958 }
8959 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8960 }
8961 return NDR_ERR_SUCCESS;
8962 }
8963
8964 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfoBySid(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfoBySid *r)
/* [<][>][^][v][top][bottom][index][help] */
8965 {
8966 uint32_t _ptr_info;
8967 TALLOC_CTX *_mem_save_handle_0;
8968 TALLOC_CTX *_mem_save_dom_sid_0;
8969 TALLOC_CTX *_mem_save_info_0;
8970 TALLOC_CTX *_mem_save_info_1;
8971 if (flags & NDR_IN) {
8972 ZERO_STRUCT(r->out);
8973
8974 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8975 NDR_PULL_ALLOC(ndr, r->in.handle);
8976 }
8977 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8978 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8979 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
8980 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8981 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8982 NDR_PULL_ALLOC(ndr, r->in.dom_sid);
8983 }
8984 _mem_save_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8985 NDR_PULL_SET_MEM_CTX(ndr, r->in.dom_sid, LIBNDR_FLAG_REF_ALLOC);
8986 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
8987 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_sid_0, LIBNDR_FLAG_REF_ALLOC);
8988 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
8989 NDR_PULL_ALLOC(ndr, r->out.info);
8990 ZERO_STRUCTP(r->out.info);
8991 }
8992 if (flags & NDR_OUT) {
8993 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8994 NDR_PULL_ALLOC(ndr, r->out.info);
8995 }
8996 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8997 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
8998 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8999 if (_ptr_info) {
9000 NDR_PULL_ALLOC(ndr, *r->out.info);
9001 } else {
9002 *r->out.info = NULL;
9003 }
9004 if (*r->out.info) {
9005 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
9006 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
9007 NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
9008 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9009 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
9010 }
9011 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9012 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9013 }
9014 return NDR_ERR_SUCCESS;
9015 }
9016
9017 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfoBySid(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfoBySid *r)
/* [<][>][^][v][top][bottom][index][help] */
9018 {
9019 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfoBySid");
9020 ndr->depth++;
9021 if (flags & NDR_SET_VALUES) {
9022 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9023 }
9024 if (flags & NDR_IN) {
9025 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfoBySid");
9026 ndr->depth++;
9027 ndr_print_ptr(ndr, "handle", r->in.handle);
9028 ndr->depth++;
9029 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9030 ndr->depth--;
9031 ndr_print_ptr(ndr, "dom_sid", r->in.dom_sid);
9032 ndr->depth++;
9033 ndr_print_dom_sid2(ndr, "dom_sid", r->in.dom_sid);
9034 ndr->depth--;
9035 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
9036 ndr->depth--;
9037 }
9038 if (flags & NDR_OUT) {
9039 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfoBySid");
9040 ndr->depth++;
9041 ndr_print_ptr(ndr, "info", r->out.info);
9042 ndr->depth++;
9043 ndr_print_ptr(ndr, "info", *r->out.info);
9044 ndr->depth++;
9045 if (*r->out.info) {
9046 ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
9047 ndr_print_lsa_TrustedDomainInfo(ndr, "info", *r->out.info);
9048 }
9049 ndr->depth--;
9050 ndr->depth--;
9051 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9052 ndr->depth--;
9053 }
9054 ndr->depth--;
9055 }
9056
9057 static enum ndr_err_code ndr_push_lsa_SetTrustedDomainInfo(struct ndr_push *ndr, int flags, const struct lsa_SetTrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
9058 {
9059 if (flags & NDR_IN) {
9060 if (r->in.handle == NULL) {
9061 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9062 }
9063 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9064 if (r->in.dom_sid == NULL) {
9065 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9066 }
9067 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
9068 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
9069 if (r->in.info == NULL) {
9070 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9071 }
9072 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
9073 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9074 }
9075 if (flags & NDR_OUT) {
9076 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9077 }
9078 return NDR_ERR_SUCCESS;
9079 }
9080
9081 static enum ndr_err_code ndr_pull_lsa_SetTrustedDomainInfo(struct ndr_pull *ndr, int flags, struct lsa_SetTrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
9082 {
9083 TALLOC_CTX *_mem_save_handle_0;
9084 TALLOC_CTX *_mem_save_dom_sid_0;
9085 TALLOC_CTX *_mem_save_info_0;
9086 if (flags & NDR_IN) {
9087 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9088 NDR_PULL_ALLOC(ndr, r->in.handle);
9089 }
9090 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9091 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9092 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9093 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9094 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9095 NDR_PULL_ALLOC(ndr, r->in.dom_sid);
9096 }
9097 _mem_save_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
9098 NDR_PULL_SET_MEM_CTX(ndr, r->in.dom_sid, LIBNDR_FLAG_REF_ALLOC);
9099 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
9100 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_sid_0, LIBNDR_FLAG_REF_ALLOC);
9101 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
9102 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9103 NDR_PULL_ALLOC(ndr, r->in.info);
9104 }
9105 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9106 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
9107 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
9108 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9109 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9110 }
9111 if (flags & NDR_OUT) {
9112 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9113 }
9114 return NDR_ERR_SUCCESS;
9115 }
9116
9117 _PUBLIC_ void ndr_print_lsa_SetTrustedDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetTrustedDomainInfo *r)
/* [<][>][^][v][top][bottom][index][help] */
9118 {
9119 ndr_print_struct(ndr, name, "lsa_SetTrustedDomainInfo");
9120 ndr->depth++;
9121 if (flags & NDR_SET_VALUES) {
9122 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9123 }
9124 if (flags & NDR_IN) {
9125 ndr_print_struct(ndr, "in", "lsa_SetTrustedDomainInfo");
9126 ndr->depth++;
9127 ndr_print_ptr(ndr, "handle", r->in.handle);
9128 ndr->depth++;
9129 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9130 ndr->depth--;
9131 ndr_print_ptr(ndr, "dom_sid", r->in.dom_sid);
9132 ndr->depth++;
9133 ndr_print_dom_sid2(ndr, "dom_sid", r->in.dom_sid);
9134 ndr->depth--;
9135 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
9136 ndr_print_ptr(ndr, "info", r->in.info);
9137 ndr->depth++;
9138 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
9139 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->in.info);
9140 ndr->depth--;
9141 ndr->depth--;
9142 }
9143 if (flags & NDR_OUT) {
9144 ndr_print_struct(ndr, "out", "lsa_SetTrustedDomainInfo");
9145 ndr->depth++;
9146 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9147 ndr->depth--;
9148 }
9149 ndr->depth--;
9150 }
9151
9152 static enum ndr_err_code ndr_push_lsa_DeleteTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_DeleteTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
9153 {
9154 if (flags & NDR_IN) {
9155 if (r->in.handle == NULL) {
9156 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9157 }
9158 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9159 if (r->in.dom_sid == NULL) {
9160 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9161 }
9162 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
9163 }
9164 if (flags & NDR_OUT) {
9165 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9166 }
9167 return NDR_ERR_SUCCESS;
9168 }
9169
9170 static enum ndr_err_code ndr_pull_lsa_DeleteTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_DeleteTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
9171 {
9172 TALLOC_CTX *_mem_save_handle_0;
9173 TALLOC_CTX *_mem_save_dom_sid_0;
9174 if (flags & NDR_IN) {
9175 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9176 NDR_PULL_ALLOC(ndr, r->in.handle);
9177 }
9178 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9179 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9180 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9181 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9182 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9183 NDR_PULL_ALLOC(ndr, r->in.dom_sid);
9184 }
9185 _mem_save_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
9186 NDR_PULL_SET_MEM_CTX(ndr, r->in.dom_sid, LIBNDR_FLAG_REF_ALLOC);
9187 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
9188 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_sid_0, LIBNDR_FLAG_REF_ALLOC);
9189 }
9190 if (flags & NDR_OUT) {
9191 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9192 }
9193 return NDR_ERR_SUCCESS;
9194 }
9195
9196 _PUBLIC_ void ndr_print_lsa_DeleteTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_DeleteTrustedDomain *r)
/* [<][>][^][v][top][bottom][index][help] */
9197 {
9198 ndr_print_struct(ndr, name, "lsa_DeleteTrustedDomain");
9199 ndr->depth++;
9200 if (flags & NDR_SET_VALUES) {
9201 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9202 }
9203 if (flags & NDR_IN) {
9204 ndr_print_struct(ndr, "in", "lsa_DeleteTrustedDomain");
9205 ndr->depth++;
9206 ndr_print_ptr(ndr, "handle", r->in.handle);
9207 ndr->depth++;
9208 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9209 ndr->depth--;
9210 ndr_print_ptr(ndr, "dom_sid", r->in.dom_sid);
9211 ndr->depth++;
9212 ndr_print_dom_sid2(ndr, "dom_sid", r->in.dom_sid);
9213 ndr->depth--;
9214 ndr->depth--;
9215 }
9216 if (flags & NDR_OUT) {
9217 ndr_print_struct(ndr, "out", "lsa_DeleteTrustedDomain");
9218 ndr->depth++;
9219 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9220 ndr->depth--;
9221 }
9222 ndr->depth--;
9223 }
9224
9225 static enum ndr_err_code ndr_push_lsa_StorePrivateData(struct ndr_push *ndr, int flags, const struct lsa_StorePrivateData *r)
/* [<][>][^][v][top][bottom][index][help] */
9226 {
9227 if (flags & NDR_IN) {
9228 }
9229 if (flags & NDR_OUT) {
9230 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9231 }
9232 return NDR_ERR_SUCCESS;
9233 }
9234
9235 static enum ndr_err_code ndr_pull_lsa_StorePrivateData(struct ndr_pull *ndr, int flags, struct lsa_StorePrivateData *r)
/* [<][>][^][v][top][bottom][index][help] */
9236 {
9237 if (flags & NDR_IN) {
9238 }
9239 if (flags & NDR_OUT) {
9240 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9241 }
9242 return NDR_ERR_SUCCESS;
9243 }
9244
9245 _PUBLIC_ void ndr_print_lsa_StorePrivateData(struct ndr_print *ndr, const char *name, int flags, const struct lsa_StorePrivateData *r)
/* [<][>][^][v][top][bottom][index][help] */
9246 {
9247 ndr_print_struct(ndr, name, "lsa_StorePrivateData");
9248 ndr->depth++;
9249 if (flags & NDR_SET_VALUES) {
9250 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9251 }
9252 if (flags & NDR_IN) {
9253 ndr_print_struct(ndr, "in", "lsa_StorePrivateData");
9254 ndr->depth++;
9255 ndr->depth--;
9256 }
9257 if (flags & NDR_OUT) {
9258 ndr_print_struct(ndr, "out", "lsa_StorePrivateData");
9259 ndr->depth++;
9260 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9261 ndr->depth--;
9262 }
9263 ndr->depth--;
9264 }
9265
9266 static enum ndr_err_code ndr_push_lsa_RetrievePrivateData(struct ndr_push *ndr, int flags, const struct lsa_RetrievePrivateData *r)
/* [<][>][^][v][top][bottom][index][help] */
9267 {
9268 if (flags & NDR_IN) {
9269 }
9270 if (flags & NDR_OUT) {
9271 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9272 }
9273 return NDR_ERR_SUCCESS;
9274 }
9275
9276 static enum ndr_err_code ndr_pull_lsa_RetrievePrivateData(struct ndr_pull *ndr, int flags, struct lsa_RetrievePrivateData *r)
/* [<][>][^][v][top][bottom][index][help] */
9277 {
9278 if (flags & NDR_IN) {
9279 }
9280 if (flags & NDR_OUT) {
9281 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9282 }
9283 return NDR_ERR_SUCCESS;
9284 }
9285
9286 _PUBLIC_ void ndr_print_lsa_RetrievePrivateData(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RetrievePrivateData *r)
/* [<][>][^][v][top][bottom][index][help] */
9287 {
9288 ndr_print_struct(ndr, name, "lsa_RetrievePrivateData");
9289 ndr->depth++;
9290 if (flags & NDR_SET_VALUES) {
9291 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9292 }
9293 if (flags & NDR_IN) {
9294 ndr_print_struct(ndr, "in", "lsa_RetrievePrivateData");
9295 ndr->depth++;
9296 ndr->depth--;
9297 }
9298 if (flags & NDR_OUT) {
9299 ndr_print_struct(ndr, "out", "lsa_RetrievePrivateData");
9300 ndr->depth++;
9301 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9302 ndr->depth--;
9303 }
9304 ndr->depth--;
9305 }
9306
9307 _PUBLIC_ enum ndr_err_code ndr_push_lsa_OpenPolicy2(struct ndr_push *ndr, int flags, const struct lsa_OpenPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9308 {
9309 if (flags & NDR_IN) {
9310 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
9311 if (r->in.system_name) {
9312 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
9313 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
9314 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
9315 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9316 }
9317 if (r->in.attr == NULL) {
9318 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9319 }
9320 NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
9321 NDR_CHECK(ndr_push_lsa_PolicyAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
9322 }
9323 if (flags & NDR_OUT) {
9324 if (r->out.handle == NULL) {
9325 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9326 }
9327 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.handle));
9328 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9329 }
9330 return NDR_ERR_SUCCESS;
9331 }
9332
9333 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_OpenPolicy2(struct ndr_pull *ndr, int flags, struct lsa_OpenPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9334 {
9335 uint32_t _ptr_system_name;
9336 TALLOC_CTX *_mem_save_system_name_0;
9337 TALLOC_CTX *_mem_save_attr_0;
9338 TALLOC_CTX *_mem_save_handle_0;
9339 if (flags & NDR_IN) {
9340 ZERO_STRUCT(r->out);
9341
9342 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
9343 if (_ptr_system_name) {
9344 NDR_PULL_ALLOC(ndr, r->in.system_name);
9345 } else {
9346 r->in.system_name = NULL;
9347 }
9348 if (r->in.system_name) {
9349 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9350 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
9351 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
9352 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
9353 if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
9354 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.system_name), ndr_get_array_length(ndr, &r->in.system_name));
9355 }
9356 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
9357 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
9358 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
9359 }
9360 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9361 NDR_PULL_ALLOC(ndr, r->in.attr);
9362 }
9363 _mem_save_attr_0 = NDR_PULL_GET_MEM_CTX(ndr);
9364 NDR_PULL_SET_MEM_CTX(ndr, r->in.attr, LIBNDR_FLAG_REF_ALLOC);
9365 NDR_CHECK(ndr_pull_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
9366 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_attr_0, LIBNDR_FLAG_REF_ALLOC);
9367 NDR_CHECK(ndr_pull_lsa_PolicyAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
9368 NDR_PULL_ALLOC(ndr, r->out.handle);
9369 ZERO_STRUCTP(r->out.handle);
9370 }
9371 if (flags & NDR_OUT) {
9372 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9373 NDR_PULL_ALLOC(ndr, r->out.handle);
9374 }
9375 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9376 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
9377 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.handle));
9378 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9379 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9380 }
9381 return NDR_ERR_SUCCESS;
9382 }
9383
9384 _PUBLIC_ void ndr_print_lsa_OpenPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9385 {
9386 ndr_print_struct(ndr, name, "lsa_OpenPolicy2");
9387 ndr->depth++;
9388 if (flags & NDR_SET_VALUES) {
9389 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9390 }
9391 if (flags & NDR_IN) {
9392 ndr_print_struct(ndr, "in", "lsa_OpenPolicy2");
9393 ndr->depth++;
9394 ndr_print_ptr(ndr, "system_name", r->in.system_name);
9395 ndr->depth++;
9396 if (r->in.system_name) {
9397 ndr_print_string(ndr, "system_name", r->in.system_name);
9398 }
9399 ndr->depth--;
9400 ndr_print_ptr(ndr, "attr", r->in.attr);
9401 ndr->depth++;
9402 ndr_print_lsa_ObjectAttribute(ndr, "attr", r->in.attr);
9403 ndr->depth--;
9404 ndr_print_lsa_PolicyAccessMask(ndr, "access_mask", r->in.access_mask);
9405 ndr->depth--;
9406 }
9407 if (flags & NDR_OUT) {
9408 ndr_print_struct(ndr, "out", "lsa_OpenPolicy2");
9409 ndr->depth++;
9410 ndr_print_ptr(ndr, "handle", r->out.handle);
9411 ndr->depth++;
9412 ndr_print_policy_handle(ndr, "handle", r->out.handle);
9413 ndr->depth--;
9414 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9415 ndr->depth--;
9416 }
9417 ndr->depth--;
9418 }
9419
9420 static enum ndr_err_code ndr_push_lsa_GetUserName(struct ndr_push *ndr, int flags, const struct lsa_GetUserName *r)
/* [<][>][^][v][top][bottom][index][help] */
9421 {
9422 if (flags & NDR_IN) {
9423 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
9424 if (r->in.system_name) {
9425 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
9426 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
9427 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
9428 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9429 }
9430 if (r->in.account_name == NULL) {
9431 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9432 }
9433 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.account_name));
9434 if (*r->in.account_name) {
9435 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.account_name));
9436 }
9437 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.authority_name));
9438 if (r->in.authority_name) {
9439 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.authority_name));
9440 if (*r->in.authority_name) {
9441 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.authority_name));
9442 }
9443 }
9444 }
9445 if (flags & NDR_OUT) {
9446 if (r->out.account_name == NULL) {
9447 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9448 }
9449 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.account_name));
9450 if (*r->out.account_name) {
9451 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.account_name));
9452 }
9453 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.authority_name));
9454 if (r->out.authority_name) {
9455 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.authority_name));
9456 if (*r->out.authority_name) {
9457 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.authority_name));
9458 }
9459 }
9460 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9461 }
9462 return NDR_ERR_SUCCESS;
9463 }
9464
9465 static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flags, struct lsa_GetUserName *r)
/* [<][>][^][v][top][bottom][index][help] */
9466 {
9467 uint32_t _ptr_system_name;
9468 uint32_t _ptr_account_name;
9469 uint32_t _ptr_authority_name;
9470 TALLOC_CTX *_mem_save_system_name_0;
9471 TALLOC_CTX *_mem_save_account_name_0;
9472 TALLOC_CTX *_mem_save_account_name_1;
9473 TALLOC_CTX *_mem_save_authority_name_0;
9474 TALLOC_CTX *_mem_save_authority_name_1;
9475 if (flags & NDR_IN) {
9476 ZERO_STRUCT(r->out);
9477
9478 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
9479 if (_ptr_system_name) {
9480 NDR_PULL_ALLOC(ndr, r->in.system_name);
9481 } else {
9482 r->in.system_name = NULL;
9483 }
9484 if (r->in.system_name) {
9485 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9486 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
9487 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
9488 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
9489 if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
9490 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.system_name), ndr_get_array_length(ndr, &r->in.system_name));
9491 }
9492 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
9493 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
9494 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
9495 }
9496 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9497 NDR_PULL_ALLOC(ndr, r->in.account_name);
9498 }
9499 _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9500 NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, LIBNDR_FLAG_REF_ALLOC);
9501 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
9502 if (_ptr_account_name) {
9503 NDR_PULL_ALLOC(ndr, *r->in.account_name);
9504 } else {
9505 *r->in.account_name = NULL;
9506 }
9507 if (*r->in.account_name) {
9508 _mem_save_account_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
9509 NDR_PULL_SET_MEM_CTX(ndr, *r->in.account_name, 0);
9510 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.account_name));
9511 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_1, 0);
9512 }
9513 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
9514 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
9515 if (_ptr_authority_name) {
9516 NDR_PULL_ALLOC(ndr, r->in.authority_name);
9517 } else {
9518 r->in.authority_name = NULL;
9519 }
9520 if (r->in.authority_name) {
9521 _mem_save_authority_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9522 NDR_PULL_SET_MEM_CTX(ndr, r->in.authority_name, 0);
9523 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
9524 if (_ptr_authority_name) {
9525 NDR_PULL_ALLOC(ndr, *r->in.authority_name);
9526 } else {
9527 *r->in.authority_name = NULL;
9528 }
9529 if (*r->in.authority_name) {
9530 _mem_save_authority_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
9531 NDR_PULL_SET_MEM_CTX(ndr, *r->in.authority_name, 0);
9532 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.authority_name));
9533 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_1, 0);
9534 }
9535 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_0, 0);
9536 }
9537 NDR_PULL_ALLOC(ndr, r->out.account_name);
9538 *r->out.account_name = *r->in.account_name;
9539 }
9540 if (flags & NDR_OUT) {
9541 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9542 NDR_PULL_ALLOC(ndr, r->out.account_name);
9543 }
9544 _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9545 NDR_PULL_SET_MEM_CTX(ndr, r->out.account_name, LIBNDR_FLAG_REF_ALLOC);
9546 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
9547 if (_ptr_account_name) {
9548 NDR_PULL_ALLOC(ndr, *r->out.account_name);
9549 } else {
9550 *r->out.account_name = NULL;
9551 }
9552 if (*r->out.account_name) {
9553 _mem_save_account_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
9554 NDR_PULL_SET_MEM_CTX(ndr, *r->out.account_name, 0);
9555 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.account_name));
9556 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_1, 0);
9557 }
9558 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
9559 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
9560 if (_ptr_authority_name) {
9561 NDR_PULL_ALLOC(ndr, r->out.authority_name);
9562 } else {
9563 r->out.authority_name = NULL;
9564 }
9565 if (r->out.authority_name) {
9566 _mem_save_authority_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9567 NDR_PULL_SET_MEM_CTX(ndr, r->out.authority_name, 0);
9568 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
9569 if (_ptr_authority_name) {
9570 NDR_PULL_ALLOC(ndr, *r->out.authority_name);
9571 } else {
9572 *r->out.authority_name = NULL;
9573 }
9574 if (*r->out.authority_name) {
9575 _mem_save_authority_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
9576 NDR_PULL_SET_MEM_CTX(ndr, *r->out.authority_name, 0);
9577 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.authority_name));
9578 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_1, 0);
9579 }
9580 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_0, 0);
9581 }
9582 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9583 }
9584 return NDR_ERR_SUCCESS;
9585 }
9586
9587 _PUBLIC_ void ndr_print_lsa_GetUserName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetUserName *r)
/* [<][>][^][v][top][bottom][index][help] */
9588 {
9589 ndr_print_struct(ndr, name, "lsa_GetUserName");
9590 ndr->depth++;
9591 if (flags & NDR_SET_VALUES) {
9592 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9593 }
9594 if (flags & NDR_IN) {
9595 ndr_print_struct(ndr, "in", "lsa_GetUserName");
9596 ndr->depth++;
9597 ndr_print_ptr(ndr, "system_name", r->in.system_name);
9598 ndr->depth++;
9599 if (r->in.system_name) {
9600 ndr_print_string(ndr, "system_name", r->in.system_name);
9601 }
9602 ndr->depth--;
9603 ndr_print_ptr(ndr, "account_name", r->in.account_name);
9604 ndr->depth++;
9605 ndr_print_ptr(ndr, "account_name", *r->in.account_name);
9606 ndr->depth++;
9607 if (*r->in.account_name) {
9608 ndr_print_lsa_String(ndr, "account_name", *r->in.account_name);
9609 }
9610 ndr->depth--;
9611 ndr->depth--;
9612 ndr_print_ptr(ndr, "authority_name", r->in.authority_name);
9613 ndr->depth++;
9614 if (r->in.authority_name) {
9615 ndr_print_ptr(ndr, "authority_name", *r->in.authority_name);
9616 ndr->depth++;
9617 if (*r->in.authority_name) {
9618 ndr_print_lsa_String(ndr, "authority_name", *r->in.authority_name);
9619 }
9620 ndr->depth--;
9621 }
9622 ndr->depth--;
9623 ndr->depth--;
9624 }
9625 if (flags & NDR_OUT) {
9626 ndr_print_struct(ndr, "out", "lsa_GetUserName");
9627 ndr->depth++;
9628 ndr_print_ptr(ndr, "account_name", r->out.account_name);
9629 ndr->depth++;
9630 ndr_print_ptr(ndr, "account_name", *r->out.account_name);
9631 ndr->depth++;
9632 if (*r->out.account_name) {
9633 ndr_print_lsa_String(ndr, "account_name", *r->out.account_name);
9634 }
9635 ndr->depth--;
9636 ndr->depth--;
9637 ndr_print_ptr(ndr, "authority_name", r->out.authority_name);
9638 ndr->depth++;
9639 if (r->out.authority_name) {
9640 ndr_print_ptr(ndr, "authority_name", *r->out.authority_name);
9641 ndr->depth++;
9642 if (*r->out.authority_name) {
9643 ndr_print_lsa_String(ndr, "authority_name", *r->out.authority_name);
9644 }
9645 ndr->depth--;
9646 }
9647 ndr->depth--;
9648 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9649 ndr->depth--;
9650 }
9651 ndr->depth--;
9652 }
9653
9654 static enum ndr_err_code ndr_push_lsa_QueryInfoPolicy2(struct ndr_push *ndr, int flags, const struct lsa_QueryInfoPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9655 {
9656 if (flags & NDR_IN) {
9657 if (r->in.handle == NULL) {
9658 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9659 }
9660 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9661 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
9662 }
9663 if (flags & NDR_OUT) {
9664 if (r->out.info == NULL) {
9665 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9666 }
9667 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
9668 if (*r->out.info) {
9669 NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
9670 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9671 }
9672 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9673 }
9674 return NDR_ERR_SUCCESS;
9675 }
9676
9677 static enum ndr_err_code ndr_pull_lsa_QueryInfoPolicy2(struct ndr_pull *ndr, int flags, struct lsa_QueryInfoPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9678 {
9679 uint32_t _ptr_info;
9680 TALLOC_CTX *_mem_save_handle_0;
9681 TALLOC_CTX *_mem_save_info_0;
9682 TALLOC_CTX *_mem_save_info_1;
9683 if (flags & NDR_IN) {
9684 ZERO_STRUCT(r->out);
9685
9686 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9687 NDR_PULL_ALLOC(ndr, r->in.handle);
9688 }
9689 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9690 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9691 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9692 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9693 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
9694 NDR_PULL_ALLOC(ndr, r->out.info);
9695 ZERO_STRUCTP(r->out.info);
9696 }
9697 if (flags & NDR_OUT) {
9698 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9699 NDR_PULL_ALLOC(ndr, r->out.info);
9700 }
9701 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9702 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
9703 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
9704 if (_ptr_info) {
9705 NDR_PULL_ALLOC(ndr, *r->out.info);
9706 } else {
9707 *r->out.info = NULL;
9708 }
9709 if (*r->out.info) {
9710 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
9711 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
9712 NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
9713 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9714 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
9715 }
9716 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9717 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9718 }
9719 return NDR_ERR_SUCCESS;
9720 }
9721
9722 _PUBLIC_ void ndr_print_lsa_QueryInfoPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryInfoPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9723 {
9724 ndr_print_struct(ndr, name, "lsa_QueryInfoPolicy2");
9725 ndr->depth++;
9726 if (flags & NDR_SET_VALUES) {
9727 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9728 }
9729 if (flags & NDR_IN) {
9730 ndr_print_struct(ndr, "in", "lsa_QueryInfoPolicy2");
9731 ndr->depth++;
9732 ndr_print_ptr(ndr, "handle", r->in.handle);
9733 ndr->depth++;
9734 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9735 ndr->depth--;
9736 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
9737 ndr->depth--;
9738 }
9739 if (flags & NDR_OUT) {
9740 ndr_print_struct(ndr, "out", "lsa_QueryInfoPolicy2");
9741 ndr->depth++;
9742 ndr_print_ptr(ndr, "info", r->out.info);
9743 ndr->depth++;
9744 ndr_print_ptr(ndr, "info", *r->out.info);
9745 ndr->depth++;
9746 if (*r->out.info) {
9747 ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
9748 ndr_print_lsa_PolicyInformation(ndr, "info", *r->out.info);
9749 }
9750 ndr->depth--;
9751 ndr->depth--;
9752 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9753 ndr->depth--;
9754 }
9755 ndr->depth--;
9756 }
9757
9758 static enum ndr_err_code ndr_push_lsa_SetInfoPolicy2(struct ndr_push *ndr, int flags, const struct lsa_SetInfoPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9759 {
9760 if (flags & NDR_IN) {
9761 if (r->in.handle == NULL) {
9762 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9763 }
9764 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9765 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
9766 if (r->in.info == NULL) {
9767 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9768 }
9769 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
9770 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9771 }
9772 if (flags & NDR_OUT) {
9773 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9774 }
9775 return NDR_ERR_SUCCESS;
9776 }
9777
9778 static enum ndr_err_code ndr_pull_lsa_SetInfoPolicy2(struct ndr_pull *ndr, int flags, struct lsa_SetInfoPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9779 {
9780 TALLOC_CTX *_mem_save_handle_0;
9781 TALLOC_CTX *_mem_save_info_0;
9782 if (flags & NDR_IN) {
9783 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9784 NDR_PULL_ALLOC(ndr, r->in.handle);
9785 }
9786 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9787 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9788 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9789 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9790 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
9791 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9792 NDR_PULL_ALLOC(ndr, r->in.info);
9793 }
9794 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9795 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
9796 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
9797 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9798 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9799 }
9800 if (flags & NDR_OUT) {
9801 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9802 }
9803 return NDR_ERR_SUCCESS;
9804 }
9805
9806 _PUBLIC_ void ndr_print_lsa_SetInfoPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInfoPolicy2 *r)
/* [<][>][^][v][top][bottom][index][help] */
9807 {
9808 ndr_print_struct(ndr, name, "lsa_SetInfoPolicy2");
9809 ndr->depth++;
9810 if (flags & NDR_SET_VALUES) {
9811 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9812 }
9813 if (flags & NDR_IN) {
9814 ndr_print_struct(ndr, "in", "lsa_SetInfoPolicy2");
9815 ndr->depth++;
9816 ndr_print_ptr(ndr, "handle", r->in.handle);
9817 ndr->depth++;
9818 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9819 ndr->depth--;
9820 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
9821 ndr_print_ptr(ndr, "info", r->in.info);
9822 ndr->depth++;
9823 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
9824 ndr_print_lsa_PolicyInformation(ndr, "info", r->in.info);
9825 ndr->depth--;
9826 ndr->depth--;
9827 }
9828 if (flags & NDR_OUT) {
9829 ndr_print_struct(ndr, "out", "lsa_SetInfoPolicy2");
9830 ndr->depth++;
9831 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9832 ndr->depth--;
9833 }
9834 ndr->depth--;
9835 }
9836
9837 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfoByName(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfoByName *r)
/* [<][>][^][v][top][bottom][index][help] */
9838 {
9839 if (flags & NDR_IN) {
9840 if (r->in.handle == NULL) {
9841 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9842 }
9843 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9844 if (r->in.trusted_domain == NULL) {
9845 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9846 }
9847 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trusted_domain));
9848 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
9849 }
9850 if (flags & NDR_OUT) {
9851 if (r->out.info == NULL) {
9852 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9853 }
9854 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
9855 if (*r->out.info) {
9856 NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
9857 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9858 }
9859 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9860 }
9861 return NDR_ERR_SUCCESS;
9862 }
9863
9864 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfoByName(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfoByName *r)
/* [<][>][^][v][top][bottom][index][help] */
9865 {
9866 uint32_t _ptr_info;
9867 TALLOC_CTX *_mem_save_handle_0;
9868 TALLOC_CTX *_mem_save_trusted_domain_0;
9869 TALLOC_CTX *_mem_save_info_0;
9870 TALLOC_CTX *_mem_save_info_1;
9871 if (flags & NDR_IN) {
9872 ZERO_STRUCT(r->out);
9873
9874 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9875 NDR_PULL_ALLOC(ndr, r->in.handle);
9876 }
9877 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9878 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9879 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9880 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9881 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9882 NDR_PULL_ALLOC(ndr, r->in.trusted_domain);
9883 }
9884 _mem_save_trusted_domain_0 = NDR_PULL_GET_MEM_CTX(ndr);
9885 NDR_PULL_SET_MEM_CTX(ndr, r->in.trusted_domain, LIBNDR_FLAG_REF_ALLOC);
9886 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trusted_domain));
9887 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trusted_domain_0, LIBNDR_FLAG_REF_ALLOC);
9888 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
9889 NDR_PULL_ALLOC(ndr, r->out.info);
9890 ZERO_STRUCTP(r->out.info);
9891 }
9892 if (flags & NDR_OUT) {
9893 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9894 NDR_PULL_ALLOC(ndr, r->out.info);
9895 }
9896 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9897 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
9898 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
9899 if (_ptr_info) {
9900 NDR_PULL_ALLOC(ndr, *r->out.info);
9901 } else {
9902 *r->out.info = NULL;
9903 }
9904 if (*r->out.info) {
9905 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
9906 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
9907 NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
9908 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9909 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
9910 }
9911 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9912 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9913 }
9914 return NDR_ERR_SUCCESS;
9915 }
9916
9917 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfoByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfoByName *r)
/* [<][>][^][v][top][bottom][index][help] */
9918 {
9919 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfoByName");
9920 ndr->depth++;
9921 if (flags & NDR_SET_VALUES) {
9922 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9923 }
9924 if (flags & NDR_IN) {
9925 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfoByName");
9926 ndr->depth++;
9927 ndr_print_ptr(ndr, "handle", r->in.handle);
9928 ndr->depth++;
9929 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9930 ndr->depth--;
9931 ndr_print_ptr(ndr, "trusted_domain", r->in.trusted_domain);
9932 ndr->depth++;
9933 ndr_print_lsa_String(ndr, "trusted_domain", r->in.trusted_domain);
9934 ndr->depth--;
9935 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
9936 ndr->depth--;
9937 }
9938 if (flags & NDR_OUT) {
9939 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfoByName");
9940 ndr->depth++;
9941 ndr_print_ptr(ndr, "info", r->out.info);
9942 ndr->depth++;
9943 ndr_print_ptr(ndr, "info", *r->out.info);
9944 ndr->depth++;
9945 if (*r->out.info) {
9946 ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
9947 ndr_print_lsa_TrustedDomainInfo(ndr, "info", *r->out.info);
9948 }
9949 ndr->depth--;
9950 ndr->depth--;
9951 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9952 ndr->depth--;
9953 }
9954 ndr->depth--;
9955 }
9956
9957 static enum ndr_err_code ndr_push_lsa_SetTrustedDomainInfoByName(struct ndr_push *ndr, int flags, const struct lsa_SetTrustedDomainInfoByName *r)
/* [<][>][^][v][top][bottom][index][help] */
9958 {
9959 if (flags & NDR_IN) {
9960 if (r->in.handle == NULL) {
9961 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9962 }
9963 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9964 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.trusted_domain));
9965 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
9966 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.info));
9967 if (r->in.info) {
9968 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
9969 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9970 }
9971 }
9972 if (flags & NDR_OUT) {
9973 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9974 }
9975 return NDR_ERR_SUCCESS;
9976 }
9977
9978 static enum ndr_err_code ndr_pull_lsa_SetTrustedDomainInfoByName(struct ndr_pull *ndr, int flags, struct lsa_SetTrustedDomainInfoByName *r)
/* [<][>][^][v][top][bottom][index][help] */
9979 {
9980 uint32_t _ptr_info;
9981 TALLOC_CTX *_mem_save_handle_0;
9982 TALLOC_CTX *_mem_save_info_0;
9983 if (flags & NDR_IN) {
9984 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9985 NDR_PULL_ALLOC(ndr, r->in.handle);
9986 }
9987 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9988 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9989 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
9990 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9991 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.trusted_domain));
9992 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
9993 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
9994 if (_ptr_info) {
9995 NDR_PULL_ALLOC(ndr, r->in.info);
9996 } else {
9997 r->in.info = NULL;
9998 }
9999 if (r->in.info) {
10000 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10001 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, 0);
10002 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
10003 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
10004 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
10005 }
10006 }
10007 if (flags & NDR_OUT) {
10008 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10009 }
10010 return NDR_ERR_SUCCESS;
10011 }
10012
10013 _PUBLIC_ void ndr_print_lsa_SetTrustedDomainInfoByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetTrustedDomainInfoByName *r)
/* [<][>][^][v][top][bottom][index][help] */
10014 {
10015 ndr_print_struct(ndr, name, "lsa_SetTrustedDomainInfoByName");
10016 ndr->depth++;
10017 if (flags & NDR_SET_VALUES) {
10018 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10019 }
10020 if (flags & NDR_IN) {
10021 ndr_print_struct(ndr, "in", "lsa_SetTrustedDomainInfoByName");
10022 ndr->depth++;
10023 ndr_print_ptr(ndr, "handle", r->in.handle);
10024 ndr->depth++;
10025 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10026 ndr->depth--;
10027 ndr_print_lsa_String(ndr, "trusted_domain", &r->in.trusted_domain);
10028 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
10029 ndr_print_ptr(ndr, "info", r->in.info);
10030 ndr->depth++;
10031 if (r->in.info) {
10032 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
10033 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->in.info);
10034 }
10035 ndr->depth--;
10036 ndr->depth--;
10037 }
10038 if (flags & NDR_OUT) {
10039 ndr_print_struct(ndr, "out", "lsa_SetTrustedDomainInfoByName");
10040 ndr->depth++;
10041 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10042 ndr->depth--;
10043 }
10044 ndr->depth--;
10045 }
10046
10047 static enum ndr_err_code ndr_push_lsa_EnumTrustedDomainsEx(struct ndr_push *ndr, int flags, const struct lsa_EnumTrustedDomainsEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10048 {
10049 if (flags & NDR_IN) {
10050 if (r->in.handle == NULL) {
10051 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10052 }
10053 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10054 if (r->in.resume_handle == NULL) {
10055 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10056 }
10057 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
10058 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
10059 }
10060 if (flags & NDR_OUT) {
10061 if (r->out.resume_handle == NULL) {
10062 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10063 }
10064 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
10065 if (r->out.domains == NULL) {
10066 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10067 }
10068 NDR_CHECK(ndr_push_lsa_DomainListEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
10069 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10070 }
10071 return NDR_ERR_SUCCESS;
10072 }
10073
10074 static enum ndr_err_code ndr_pull_lsa_EnumTrustedDomainsEx(struct ndr_pull *ndr, int flags, struct lsa_EnumTrustedDomainsEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10075 {
10076 TALLOC_CTX *_mem_save_handle_0;
10077 TALLOC_CTX *_mem_save_resume_handle_0;
10078 TALLOC_CTX *_mem_save_domains_0;
10079 if (flags & NDR_IN) {
10080 ZERO_STRUCT(r->out);
10081
10082 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10083 NDR_PULL_ALLOC(ndr, r->in.handle);
10084 }
10085 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10086 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10087 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10088 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10089 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10090 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
10091 }
10092 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10093 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
10094 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
10095 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
10096 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
10097 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
10098 *r->out.resume_handle = *r->in.resume_handle;
10099 NDR_PULL_ALLOC(ndr, r->out.domains);
10100 ZERO_STRUCTP(r->out.domains);
10101 }
10102 if (flags & NDR_OUT) {
10103 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10104 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
10105 }
10106 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10107 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
10108 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
10109 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
10110 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10111 NDR_PULL_ALLOC(ndr, r->out.domains);
10112 }
10113 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
10114 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
10115 NDR_CHECK(ndr_pull_lsa_DomainListEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
10116 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
10117 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10118 }
10119 return NDR_ERR_SUCCESS;
10120 }
10121
10122 _PUBLIC_ void ndr_print_lsa_EnumTrustedDomainsEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumTrustedDomainsEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10123 {
10124 ndr_print_struct(ndr, name, "lsa_EnumTrustedDomainsEx");
10125 ndr->depth++;
10126 if (flags & NDR_SET_VALUES) {
10127 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10128 }
10129 if (flags & NDR_IN) {
10130 ndr_print_struct(ndr, "in", "lsa_EnumTrustedDomainsEx");
10131 ndr->depth++;
10132 ndr_print_ptr(ndr, "handle", r->in.handle);
10133 ndr->depth++;
10134 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10135 ndr->depth--;
10136 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
10137 ndr->depth++;
10138 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
10139 ndr->depth--;
10140 ndr_print_uint32(ndr, "max_size", r->in.max_size);
10141 ndr->depth--;
10142 }
10143 if (flags & NDR_OUT) {
10144 ndr_print_struct(ndr, "out", "lsa_EnumTrustedDomainsEx");
10145 ndr->depth++;
10146 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
10147 ndr->depth++;
10148 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
10149 ndr->depth--;
10150 ndr_print_ptr(ndr, "domains", r->out.domains);
10151 ndr->depth++;
10152 ndr_print_lsa_DomainListEx(ndr, "domains", r->out.domains);
10153 ndr->depth--;
10154 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10155 ndr->depth--;
10156 }
10157 ndr->depth--;
10158 }
10159
10160 static enum ndr_err_code ndr_push_lsa_CreateTrustedDomainEx(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomainEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10161 {
10162 if (flags & NDR_IN) {
10163 if (r->in.policy_handle == NULL) {
10164 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10165 }
10166 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.policy_handle));
10167 if (r->in.info == NULL) {
10168 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10169 }
10170 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
10171 if (r->in.auth_info == NULL) {
10172 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10173 }
10174 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.auth_info));
10175 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
10176 }
10177 if (flags & NDR_OUT) {
10178 if (r->out.trustdom_handle == NULL) {
10179 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10180 }
10181 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
10182 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10183 }
10184 return NDR_ERR_SUCCESS;
10185 }
10186
10187 static enum ndr_err_code ndr_pull_lsa_CreateTrustedDomainEx(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomainEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10188 {
10189 TALLOC_CTX *_mem_save_policy_handle_0;
10190 TALLOC_CTX *_mem_save_info_0;
10191 TALLOC_CTX *_mem_save_auth_info_0;
10192 TALLOC_CTX *_mem_save_trustdom_handle_0;
10193 if (flags & NDR_IN) {
10194 ZERO_STRUCT(r->out);
10195
10196 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10197 NDR_PULL_ALLOC(ndr, r->in.policy_handle);
10198 }
10199 _mem_save_policy_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10200 NDR_PULL_SET_MEM_CTX(ndr, r->in.policy_handle, LIBNDR_FLAG_REF_ALLOC);
10201 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.policy_handle));
10202 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_policy_handle_0, LIBNDR_FLAG_REF_ALLOC);
10203 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10204 NDR_PULL_ALLOC(ndr, r->in.info);
10205 }
10206 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10207 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
10208 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
10209 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10210 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10211 NDR_PULL_ALLOC(ndr, r->in.auth_info);
10212 }
10213 _mem_save_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10214 NDR_PULL_SET_MEM_CTX(ndr, r->in.auth_info, LIBNDR_FLAG_REF_ALLOC);
10215 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.auth_info));
10216 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_auth_info_0, LIBNDR_FLAG_REF_ALLOC);
10217 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
10218 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
10219 ZERO_STRUCTP(r->out.trustdom_handle);
10220 }
10221 if (flags & NDR_OUT) {
10222 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10223 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
10224 }
10225 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10226 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
10227 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
10228 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
10229 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10230 }
10231 return NDR_ERR_SUCCESS;
10232 }
10233
10234 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomainEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomainEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10235 {
10236 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomainEx");
10237 ndr->depth++;
10238 if (flags & NDR_SET_VALUES) {
10239 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10240 }
10241 if (flags & NDR_IN) {
10242 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomainEx");
10243 ndr->depth++;
10244 ndr_print_ptr(ndr, "policy_handle", r->in.policy_handle);
10245 ndr->depth++;
10246 ndr_print_policy_handle(ndr, "policy_handle", r->in.policy_handle);
10247 ndr->depth--;
10248 ndr_print_ptr(ndr, "info", r->in.info);
10249 ndr->depth++;
10250 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info", r->in.info);
10251 ndr->depth--;
10252 ndr_print_ptr(ndr, "auth_info", r->in.auth_info);
10253 ndr->depth++;
10254 ndr_print_lsa_TrustDomainInfoAuthInfoInternal(ndr, "auth_info", r->in.auth_info);
10255 ndr->depth--;
10256 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
10257 ndr->depth--;
10258 }
10259 if (flags & NDR_OUT) {
10260 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomainEx");
10261 ndr->depth++;
10262 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
10263 ndr->depth++;
10264 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
10265 ndr->depth--;
10266 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10267 ndr->depth--;
10268 }
10269 ndr->depth--;
10270 }
10271
10272 static enum ndr_err_code ndr_push_lsa_CloseTrustedDomainEx(struct ndr_push *ndr, int flags, const struct lsa_CloseTrustedDomainEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10273 {
10274 if (flags & NDR_IN) {
10275 if (r->in.handle == NULL) {
10276 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10277 }
10278 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10279 }
10280 if (flags & NDR_OUT) {
10281 if (r->out.handle == NULL) {
10282 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10283 }
10284 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.handle));
10285 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10286 }
10287 return NDR_ERR_SUCCESS;
10288 }
10289
10290 static enum ndr_err_code ndr_pull_lsa_CloseTrustedDomainEx(struct ndr_pull *ndr, int flags, struct lsa_CloseTrustedDomainEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10291 {
10292 TALLOC_CTX *_mem_save_handle_0;
10293 if (flags & NDR_IN) {
10294 ZERO_STRUCT(r->out);
10295
10296 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10297 NDR_PULL_ALLOC(ndr, r->in.handle);
10298 }
10299 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10300 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10301 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10302 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10303 NDR_PULL_ALLOC(ndr, r->out.handle);
10304 *r->out.handle = *r->in.handle;
10305 }
10306 if (flags & NDR_OUT) {
10307 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10308 NDR_PULL_ALLOC(ndr, r->out.handle);
10309 }
10310 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10311 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
10312 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.handle));
10313 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10314 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10315 }
10316 return NDR_ERR_SUCCESS;
10317 }
10318
10319 _PUBLIC_ void ndr_print_lsa_CloseTrustedDomainEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CloseTrustedDomainEx *r)
/* [<][>][^][v][top][bottom][index][help] */
10320 {
10321 ndr_print_struct(ndr, name, "lsa_CloseTrustedDomainEx");
10322 ndr->depth++;
10323 if (flags & NDR_SET_VALUES) {
10324 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10325 }
10326 if (flags & NDR_IN) {
10327 ndr_print_struct(ndr, "in", "lsa_CloseTrustedDomainEx");
10328 ndr->depth++;
10329 ndr_print_ptr(ndr, "handle", r->in.handle);
10330 ndr->depth++;
10331 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10332 ndr->depth--;
10333 ndr->depth--;
10334 }
10335 if (flags & NDR_OUT) {
10336 ndr_print_struct(ndr, "out", "lsa_CloseTrustedDomainEx");
10337 ndr->depth++;
10338 ndr_print_ptr(ndr, "handle", r->out.handle);
10339 ndr->depth++;
10340 ndr_print_policy_handle(ndr, "handle", r->out.handle);
10341 ndr->depth--;
10342 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10343 ndr->depth--;
10344 }
10345 ndr->depth--;
10346 }
10347
10348 static enum ndr_err_code ndr_push_lsa_QueryDomainInformationPolicy(struct ndr_push *ndr, int flags, const struct lsa_QueryDomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
10349 {
10350 if (flags & NDR_IN) {
10351 if (r->in.handle == NULL) {
10352 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10353 }
10354 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10355 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10356 }
10357 if (flags & NDR_OUT) {
10358 if (r->out.info == NULL) {
10359 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10360 }
10361 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
10362 if (*r->out.info) {
10363 NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
10364 NDR_CHECK(ndr_push_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10365 }
10366 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10367 }
10368 return NDR_ERR_SUCCESS;
10369 }
10370
10371 static enum ndr_err_code ndr_pull_lsa_QueryDomainInformationPolicy(struct ndr_pull *ndr, int flags, struct lsa_QueryDomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
10372 {
10373 uint32_t _ptr_info;
10374 TALLOC_CTX *_mem_save_handle_0;
10375 TALLOC_CTX *_mem_save_info_0;
10376 TALLOC_CTX *_mem_save_info_1;
10377 if (flags & NDR_IN) {
10378 ZERO_STRUCT(r->out);
10379
10380 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10381 NDR_PULL_ALLOC(ndr, r->in.handle);
10382 }
10383 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10384 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10385 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10386 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10387 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10388 NDR_PULL_ALLOC(ndr, r->out.info);
10389 ZERO_STRUCTP(r->out.info);
10390 }
10391 if (flags & NDR_OUT) {
10392 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10393 NDR_PULL_ALLOC(ndr, r->out.info);
10394 }
10395 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10396 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10397 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
10398 if (_ptr_info) {
10399 NDR_PULL_ALLOC(ndr, *r->out.info);
10400 } else {
10401 *r->out.info = NULL;
10402 }
10403 if (*r->out.info) {
10404 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
10405 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
10406 NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
10407 NDR_CHECK(ndr_pull_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10408 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
10409 }
10410 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10411 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10412 }
10413 return NDR_ERR_SUCCESS;
10414 }
10415
10416 _PUBLIC_ void ndr_print_lsa_QueryDomainInformationPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryDomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
10417 {
10418 ndr_print_struct(ndr, name, "lsa_QueryDomainInformationPolicy");
10419 ndr->depth++;
10420 if (flags & NDR_SET_VALUES) {
10421 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10422 }
10423 if (flags & NDR_IN) {
10424 ndr_print_struct(ndr, "in", "lsa_QueryDomainInformationPolicy");
10425 ndr->depth++;
10426 ndr_print_ptr(ndr, "handle", r->in.handle);
10427 ndr->depth++;
10428 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10429 ndr->depth--;
10430 ndr_print_uint16(ndr, "level", r->in.level);
10431 ndr->depth--;
10432 }
10433 if (flags & NDR_OUT) {
10434 ndr_print_struct(ndr, "out", "lsa_QueryDomainInformationPolicy");
10435 ndr->depth++;
10436 ndr_print_ptr(ndr, "info", r->out.info);
10437 ndr->depth++;
10438 ndr_print_ptr(ndr, "info", *r->out.info);
10439 ndr->depth++;
10440 if (*r->out.info) {
10441 ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
10442 ndr_print_lsa_DomainInformationPolicy(ndr, "info", *r->out.info);
10443 }
10444 ndr->depth--;
10445 ndr->depth--;
10446 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10447 ndr->depth--;
10448 }
10449 ndr->depth--;
10450 }
10451
10452 static enum ndr_err_code ndr_push_lsa_SetDomainInformationPolicy(struct ndr_push *ndr, int flags, const struct lsa_SetDomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
10453 {
10454 if (flags & NDR_IN) {
10455 if (r->in.handle == NULL) {
10456 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10457 }
10458 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10459 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10460 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.info));
10461 if (r->in.info) {
10462 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
10463 NDR_CHECK(ndr_push_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
10464 }
10465 }
10466 if (flags & NDR_OUT) {
10467 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10468 }
10469 return NDR_ERR_SUCCESS;
10470 }
10471
10472 static enum ndr_err_code ndr_pull_lsa_SetDomainInformationPolicy(struct ndr_pull *ndr, int flags, struct lsa_SetDomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
10473 {
10474 uint32_t _ptr_info;
10475 TALLOC_CTX *_mem_save_handle_0;
10476 TALLOC_CTX *_mem_save_info_0;
10477 if (flags & NDR_IN) {
10478 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10479 NDR_PULL_ALLOC(ndr, r->in.handle);
10480 }
10481 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10482 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10483 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10484 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10485 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10486 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
10487 if (_ptr_info) {
10488 NDR_PULL_ALLOC(ndr, r->in.info);
10489 } else {
10490 r->in.info = NULL;
10491 }
10492 if (r->in.info) {
10493 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10494 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, 0);
10495 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
10496 NDR_CHECK(ndr_pull_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
10497 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
10498 }
10499 }
10500 if (flags & NDR_OUT) {
10501 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10502 }
10503 return NDR_ERR_SUCCESS;
10504 }
10505
10506 _PUBLIC_ void ndr_print_lsa_SetDomainInformationPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetDomainInformationPolicy *r)
/* [<][>][^][v][top][bottom][index][help] */
10507 {
10508 ndr_print_struct(ndr, name, "lsa_SetDomainInformationPolicy");
10509 ndr->depth++;
10510 if (flags & NDR_SET_VALUES) {
10511 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10512 }
10513 if (flags & NDR_IN) {
10514 ndr_print_struct(ndr, "in", "lsa_SetDomainInformationPolicy");
10515 ndr->depth++;
10516 ndr_print_ptr(ndr, "handle", r->in.handle);
10517 ndr->depth++;
10518 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10519 ndr->depth--;
10520 ndr_print_uint16(ndr, "level", r->in.level);
10521 ndr_print_ptr(ndr, "info", r->in.info);
10522 ndr->depth++;
10523 if (r->in.info) {
10524 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
10525 ndr_print_lsa_DomainInformationPolicy(ndr, "info", r->in.info);
10526 }
10527 ndr->depth--;
10528 ndr->depth--;
10529 }
10530 if (flags & NDR_OUT) {
10531 ndr_print_struct(ndr, "out", "lsa_SetDomainInformationPolicy");
10532 ndr->depth++;
10533 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10534 ndr->depth--;
10535 }
10536 ndr->depth--;
10537 }
10538
10539 static enum ndr_err_code ndr_push_lsa_OpenTrustedDomainByName(struct ndr_push *ndr, int flags, const struct lsa_OpenTrustedDomainByName *r)
/* [<][>][^][v][top][bottom][index][help] */
10540 {
10541 if (flags & NDR_IN) {
10542 if (r->in.handle == NULL) {
10543 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10544 }
10545 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10546 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
10547 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
10548 }
10549 if (flags & NDR_OUT) {
10550 if (r->out.trustdom_handle == NULL) {
10551 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10552 }
10553 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
10554 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10555 }
10556 return NDR_ERR_SUCCESS;
10557 }
10558
10559 static enum ndr_err_code ndr_pull_lsa_OpenTrustedDomainByName(struct ndr_pull *ndr, int flags, struct lsa_OpenTrustedDomainByName *r)
/* [<][>][^][v][top][bottom][index][help] */
10560 {
10561 TALLOC_CTX *_mem_save_handle_0;
10562 TALLOC_CTX *_mem_save_trustdom_handle_0;
10563 if (flags & NDR_IN) {
10564 ZERO_STRUCT(r->out);
10565
10566 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10567 NDR_PULL_ALLOC(ndr, r->in.handle);
10568 }
10569 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10570 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10571 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10572 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10573 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
10574 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
10575 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
10576 ZERO_STRUCTP(r->out.trustdom_handle);
10577 }
10578 if (flags & NDR_OUT) {
10579 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10580 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
10581 }
10582 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10583 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
10584 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
10585 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
10586 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10587 }
10588 return NDR_ERR_SUCCESS;
10589 }
10590
10591 _PUBLIC_ void ndr_print_lsa_OpenTrustedDomainByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenTrustedDomainByName *r)
/* [<][>][^][v][top][bottom][index][help] */
10592 {
10593 ndr_print_struct(ndr, name, "lsa_OpenTrustedDomainByName");
10594 ndr->depth++;
10595 if (flags & NDR_SET_VALUES) {
10596 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10597 }
10598 if (flags & NDR_IN) {
10599 ndr_print_struct(ndr, "in", "lsa_OpenTrustedDomainByName");
10600 ndr->depth++;
10601 ndr_print_ptr(ndr, "handle", r->in.handle);
10602 ndr->depth++;
10603 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10604 ndr->depth--;
10605 ndr_print_lsa_String(ndr, "name", &r->in.name);
10606 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
10607 ndr->depth--;
10608 }
10609 if (flags & NDR_OUT) {
10610 ndr_print_struct(ndr, "out", "lsa_OpenTrustedDomainByName");
10611 ndr->depth++;
10612 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
10613 ndr->depth++;
10614 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
10615 ndr->depth--;
10616 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10617 ndr->depth--;
10618 }
10619 ndr->depth--;
10620 }
10621
10622 static enum ndr_err_code ndr_push_lsa_TestCall(struct ndr_push *ndr, int flags, const struct lsa_TestCall *r)
/* [<][>][^][v][top][bottom][index][help] */
10623 {
10624 if (flags & NDR_IN) {
10625 }
10626 if (flags & NDR_OUT) {
10627 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10628 }
10629 return NDR_ERR_SUCCESS;
10630 }
10631
10632 static enum ndr_err_code ndr_pull_lsa_TestCall(struct ndr_pull *ndr, int flags, struct lsa_TestCall *r)
/* [<][>][^][v][top][bottom][index][help] */
10633 {
10634 if (flags & NDR_IN) {
10635 }
10636 if (flags & NDR_OUT) {
10637 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10638 }
10639 return NDR_ERR_SUCCESS;
10640 }
10641
10642 _PUBLIC_ void ndr_print_lsa_TestCall(struct ndr_print *ndr, const char *name, int flags, const struct lsa_TestCall *r)
/* [<][>][^][v][top][bottom][index][help] */
10643 {
10644 ndr_print_struct(ndr, name, "lsa_TestCall");
10645 ndr->depth++;
10646 if (flags & NDR_SET_VALUES) {
10647 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10648 }
10649 if (flags & NDR_IN) {
10650 ndr_print_struct(ndr, "in", "lsa_TestCall");
10651 ndr->depth++;
10652 ndr->depth--;
10653 }
10654 if (flags & NDR_OUT) {
10655 ndr_print_struct(ndr, "out", "lsa_TestCall");
10656 ndr->depth++;
10657 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10658 ndr->depth--;
10659 }
10660 ndr->depth--;
10661 }
10662
10663 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupSids2(struct ndr_push *ndr, int flags, const struct lsa_LookupSids2 *r)
/* [<][>][^][v][top][bottom][index][help] */
10664 {
10665 if (flags & NDR_IN) {
10666 if (r->in.handle == NULL) {
10667 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10668 }
10669 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10670 if (r->in.sids == NULL) {
10671 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10672 }
10673 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10674 if (r->in.names == NULL) {
10675 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10676 }
10677 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
10678 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10679 if (r->in.count == NULL) {
10680 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10681 }
10682 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
10683 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
10684 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
10685 }
10686 if (flags & NDR_OUT) {
10687 if (r->out.domains == NULL) {
10688 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10689 }
10690 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
10691 if (*r->out.domains) {
10692 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
10693 }
10694 if (r->out.names == NULL) {
10695 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10696 }
10697 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
10698 if (r->out.count == NULL) {
10699 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10700 }
10701 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
10702 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10703 }
10704 return NDR_ERR_SUCCESS;
10705 }
10706
10707 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupSids2(struct ndr_pull *ndr, int flags, struct lsa_LookupSids2 *r)
/* [<][>][^][v][top][bottom][index][help] */
10708 {
10709 uint32_t _ptr_domains;
10710 TALLOC_CTX *_mem_save_handle_0;
10711 TALLOC_CTX *_mem_save_sids_0;
10712 TALLOC_CTX *_mem_save_domains_0;
10713 TALLOC_CTX *_mem_save_domains_1;
10714 TALLOC_CTX *_mem_save_names_0;
10715 TALLOC_CTX *_mem_save_count_0;
10716 if (flags & NDR_IN) {
10717 ZERO_STRUCT(r->out);
10718
10719 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10720 NDR_PULL_ALLOC(ndr, r->in.handle);
10721 }
10722 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10723 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10724 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10725 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10726 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10727 NDR_PULL_ALLOC(ndr, r->in.sids);
10728 }
10729 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10730 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10731 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10732 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10733 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10734 NDR_PULL_ALLOC(ndr, r->in.names);
10735 }
10736 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
10737 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
10738 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
10739 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
10740 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10741 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10742 NDR_PULL_ALLOC(ndr, r->in.count);
10743 }
10744 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10745 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
10746 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
10747 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10748 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
10749 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
10750 NDR_PULL_ALLOC(ndr, r->out.domains);
10751 ZERO_STRUCTP(r->out.domains);
10752 NDR_PULL_ALLOC(ndr, r->out.names);
10753 *r->out.names = *r->in.names;
10754 NDR_PULL_ALLOC(ndr, r->out.count);
10755 *r->out.count = *r->in.count;
10756 }
10757 if (flags & NDR_OUT) {
10758 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10759 NDR_PULL_ALLOC(ndr, r->out.domains);
10760 }
10761 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
10762 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
10763 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
10764 if (_ptr_domains) {
10765 NDR_PULL_ALLOC(ndr, *r->out.domains);
10766 } else {
10767 *r->out.domains = NULL;
10768 }
10769 if (*r->out.domains) {
10770 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
10771 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
10772 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
10773 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
10774 }
10775 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
10776 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10777 NDR_PULL_ALLOC(ndr, r->out.names);
10778 }
10779 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
10780 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
10781 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
10782 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
10783 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10784 NDR_PULL_ALLOC(ndr, r->out.count);
10785 }
10786 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10787 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
10788 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
10789 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10790 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10791 }
10792 return NDR_ERR_SUCCESS;
10793 }
10794
10795 _PUBLIC_ void ndr_print_lsa_LookupSids2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids2 *r)
/* [<][>][^][v][top][bottom][index][help] */
10796 {
10797 ndr_print_struct(ndr, name, "lsa_LookupSids2");
10798 ndr->depth++;
10799 if (flags & NDR_SET_VALUES) {
10800 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10801 }
10802 if (flags & NDR_IN) {
10803 ndr_print_struct(ndr, "in", "lsa_LookupSids2");
10804 ndr->depth++;
10805 ndr_print_ptr(ndr, "handle", r->in.handle);
10806 ndr->depth++;
10807 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10808 ndr->depth--;
10809 ndr_print_ptr(ndr, "sids", r->in.sids);
10810 ndr->depth++;
10811 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
10812 ndr->depth--;
10813 ndr_print_ptr(ndr, "names", r->in.names);
10814 ndr->depth++;
10815 ndr_print_lsa_TransNameArray2(ndr, "names", r->in.names);
10816 ndr->depth--;
10817 ndr_print_uint16(ndr, "level", r->in.level);
10818 ndr_print_ptr(ndr, "count", r->in.count);
10819 ndr->depth++;
10820 ndr_print_uint32(ndr, "count", *r->in.count);
10821 ndr->depth--;
10822 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
10823 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
10824 ndr->depth--;
10825 }
10826 if (flags & NDR_OUT) {
10827 ndr_print_struct(ndr, "out", "lsa_LookupSids2");
10828 ndr->depth++;
10829 ndr_print_ptr(ndr, "domains", r->out.domains);
10830 ndr->depth++;
10831 ndr_print_ptr(ndr, "domains", *r->out.domains);
10832 ndr->depth++;
10833 if (*r->out.domains) {
10834 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
10835 }
10836 ndr->depth--;
10837 ndr->depth--;
10838 ndr_print_ptr(ndr, "names", r->out.names);
10839 ndr->depth++;
10840 ndr_print_lsa_TransNameArray2(ndr, "names", r->out.names);
10841 ndr->depth--;
10842 ndr_print_ptr(ndr, "count", r->out.count);
10843 ndr->depth++;
10844 ndr_print_uint32(ndr, "count", *r->out.count);
10845 ndr->depth--;
10846 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10847 ndr->depth--;
10848 }
10849 ndr->depth--;
10850 }
10851
10852 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames2(struct ndr_push *ndr, int flags, const struct lsa_LookupNames2 *r)
/* [<][>][^][v][top][bottom][index][help] */
10853 {
10854 uint32_t cntr_names_0;
10855 if (flags & NDR_IN) {
10856 if (r->in.handle == NULL) {
10857 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10858 }
10859 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10860 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
10861 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
10862 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10863 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
10864 }
10865 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10866 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
10867 }
10868 if (r->in.sids == NULL) {
10869 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10870 }
10871 NDR_CHECK(ndr_push_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10872 NDR_CHECK(ndr_push_lsa_LookupNamesLevel(ndr, NDR_SCALARS, r->in.level));
10873 if (r->in.count == NULL) {
10874 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10875 }
10876 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
10877 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.lookup_options));
10878 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.client_revision));
10879 }
10880 if (flags & NDR_OUT) {
10881 if (r->out.domains == NULL) {
10882 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10883 }
10884 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
10885 if (*r->out.domains) {
10886 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
10887 }
10888 if (r->out.sids == NULL) {
10889 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10890 }
10891 NDR_CHECK(ndr_push_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
10892 if (r->out.count == NULL) {
10893 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10894 }
10895 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
10896 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10897 }
10898 return NDR_ERR_SUCCESS;
10899 }
10900
10901 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames2(struct ndr_pull *ndr, int flags, struct lsa_LookupNames2 *r)
/* [<][>][^][v][top][bottom][index][help] */
10902 {
10903 uint32_t cntr_names_0;
10904 uint32_t _ptr_domains;
10905 TALLOC_CTX *_mem_save_handle_0;
10906 TALLOC_CTX *_mem_save_names_0;
10907 TALLOC_CTX *_mem_save_domains_0;
10908 TALLOC_CTX *_mem_save_domains_1;
10909 TALLOC_CTX *_mem_save_sids_0;
10910 TALLOC_CTX *_mem_save_count_0;
10911 if (flags & NDR_IN) {
10912 ZERO_STRUCT(r->out);
10913
10914 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10915 NDR_PULL_ALLOC(ndr, r->in.handle);
10916 }
10917 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10918 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10919 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
10920 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10921 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
10922 if (r->in.num_names > 1000) {
10923 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
10924 }
10925 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
10926 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
10927 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
10928 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
10929 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10930 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
10931 }
10932 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10933 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
10934 }
10935 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
10936 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10937 NDR_PULL_ALLOC(ndr, r->in.sids);
10938 }
10939 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10940 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10941 NDR_CHECK(ndr_pull_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10942 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10943 NDR_CHECK(ndr_pull_lsa_LookupNamesLevel(ndr, NDR_SCALARS, &r->in.level));
10944 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10945 NDR_PULL_ALLOC(ndr, r->in.count);
10946 }
10947 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10948 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
10949 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
10950 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10951 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.lookup_options));
10952 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.client_revision));
10953 NDR_PULL_ALLOC(ndr, r->out.domains);
10954 ZERO_STRUCTP(r->out.domains);
10955 NDR_PULL_ALLOC(ndr, r->out.sids);
10956 *r->out.sids = *r->in.sids;
10957 NDR_PULL_ALLOC(ndr, r->out.count);
10958 *r->out.count = *r->in.count;
10959 if (r->in.names) {
10960 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
10961 }
10962 }
10963 if (flags & NDR_OUT) {
10964 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10965 NDR_PULL_ALLOC(ndr, r->out.domains);
10966 }
10967 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
10968 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
10969 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
10970 if (_ptr_domains) {
10971 NDR_PULL_ALLOC(ndr, *r->out.domains);
10972 } else {
10973 *r->out.domains = NULL;
10974 }
10975 if (*r->out.domains) {
10976 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
10977 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
10978 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
10979 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
10980 }
10981 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
10982 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10983 NDR_PULL_ALLOC(ndr, r->out.sids);
10984 }
10985 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10986 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
10987 NDR_CHECK(ndr_pull_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
10988 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10989 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10990 NDR_PULL_ALLOC(ndr, r->out.count);
10991 }
10992 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10993 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
10994 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
10995 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10996 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10997 }
10998 return NDR_ERR_SUCCESS;
10999 }
11000
11001 _PUBLIC_ void ndr_print_lsa_LookupNames2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames2 *r)
/* [<][>][^][v][top][bottom][index][help] */
11002 {
11003 uint32_t cntr_names_0;
11004 ndr_print_struct(ndr, name, "lsa_LookupNames2");
11005 ndr->depth++;
11006 if (flags & NDR_SET_VALUES) {
11007 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11008 }
11009 if (flags & NDR_IN) {
11010 ndr_print_struct(ndr, "in", "lsa_LookupNames2");
11011 ndr->depth++;
11012 ndr_print_ptr(ndr, "handle", r->in.handle);
11013 ndr->depth++;
11014 ndr_print_policy_handle(ndr, "handle", r->in.handle);
11015 ndr->depth--;
11016 ndr_print_uint32(ndr, "num_names", r->in.num_names);
11017 ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->in.num_names);
11018 ndr->depth++;
11019 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
11020 char *idx_0=NULL;
11021 if (asprintf(&idx_0, "[%d]", cntr_names_0) != -1) {
11022 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
11023 free(idx_0);
11024 }
11025 }
11026 ndr->depth--;
11027 ndr_print_ptr(ndr, "sids", r->in.sids);
11028 ndr->depth++;
11029 ndr_print_lsa_TransSidArray2(ndr, "sids", r->in.sids);
11030 ndr->depth--;
11031 ndr_print_lsa_LookupNamesLevel(ndr, "level", r->in.level);
11032 ndr_print_ptr(ndr, "count", r->in.count);
11033 ndr->depth++;
11034 ndr_print_uint32(ndr, "count", *r->in.count);
11035 ndr->depth--;
11036 ndr_print_uint32(ndr, "lookup_options", r->in.lookup_options);
11037 ndr_print_uint32(ndr, "client_revision", r->in.client_revision);
11038 ndr->depth--;
11039 }
11040 if (flags & NDR_OUT) {
11041 ndr_print_struct(ndr, "out", "lsa_LookupNames2");
11042 ndr->depth++;
11043 ndr_print_ptr(ndr, "domains", r->out.domains);
11044 ndr->depth++;
11045 ndr_print_ptr(ndr, "domains", *r->out.domains);
11046 ndr->depth++;
11047 if (*r->out.domains) {
11048 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
11049 }
11050 ndr->depth--;
11051 ndr->depth--;
11052 ndr_print_ptr(ndr, "sids", r->out.sids);
11053 ndr->depth++;
11054 ndr_print_lsa_TransSidArray2(ndr, "sids", r->out.sids);
11055 ndr->depth--;
11056 ndr_print_ptr(ndr, "count", r->out.count);
11057 ndr->depth++;
11058 ndr_print_uint32(ndr, "count", *r->out.count);
11059 ndr->depth--;
11060 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11061 ndr->depth--;
11062 }
11063 ndr->depth--;
11064 }
11065
11066 static enum ndr_err_code ndr_push_lsa_CreateTrustedDomainEx2(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomainEx2 *r)
/* [<][>][^][v][top][bottom][index][help] */
11067 {
11068 if (flags & NDR_IN) {
11069 if (r->in.policy_handle == NULL) {
11070 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11071 }
11072 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.policy_handle));
11073 if (r->in.info == NULL) {
11074 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11075 }
11076 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
11077 if (r->in.auth_info == NULL) {
11078 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11079 }
11080 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.auth_info));
11081 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
11082 }
11083 if (flags & NDR_OUT) {
11084 if (r->out.trustdom_handle == NULL) {
11085 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11086 }
11087 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
11088 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11089 }
11090 return NDR_ERR_SUCCESS;
11091 }
11092
11093 static enum ndr_err_code ndr_pull_lsa_CreateTrustedDomainEx2(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomainEx2 *r)
/* [<][>][^][v][top][bottom][index][help] */
11094 {
11095 TALLOC_CTX *_mem_save_policy_handle_0;
11096 TALLOC_CTX *_mem_save_info_0;
11097 TALLOC_CTX *_mem_save_auth_info_0;
11098 TALLOC_CTX *_mem_save_trustdom_handle_0;
11099 if (flags & NDR_IN) {
11100 ZERO_STRUCT(r->out);
11101
11102 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11103 NDR_PULL_ALLOC(ndr, r->in.policy_handle);
11104 }
11105 _mem_save_policy_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11106 NDR_PULL_SET_MEM_CTX(ndr, r->in.policy_handle, LIBNDR_FLAG_REF_ALLOC);
11107 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.policy_handle));
11108 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_policy_handle_0, LIBNDR_FLAG_REF_ALLOC);
11109 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11110 NDR_PULL_ALLOC(ndr, r->in.info);
11111 }
11112 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
11113 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
11114 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
11115 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
11116 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11117 NDR_PULL_ALLOC(ndr, r->in.auth_info);
11118 }
11119 _mem_save_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
11120 NDR_PULL_SET_MEM_CTX(ndr, r->in.auth_info, LIBNDR_FLAG_REF_ALLOC);
11121 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfoInternal(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.auth_info));
11122 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_auth_info_0, LIBNDR_FLAG_REF_ALLOC);
11123 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
11124 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
11125 ZERO_STRUCTP(r->out.trustdom_handle);
11126 }
11127 if (flags & NDR_OUT) {
11128 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11129 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
11130 }
11131 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11132 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
11133 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.trustdom_handle));
11134 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
11135 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11136 }
11137 return NDR_ERR_SUCCESS;
11138 }
11139
11140 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomainEx2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomainEx2 *r)
/* [<][>][^][v][top][bottom][index][help] */
11141 {
11142 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomainEx2");
11143 ndr->depth++;
11144 if (flags & NDR_SET_VALUES) {
11145 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11146 }
11147 if (flags & NDR_IN) {
11148 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomainEx2");
11149 ndr->depth++;
11150 ndr_print_ptr(ndr, "policy_handle", r->in.policy_handle);
11151 ndr->depth++;
11152 ndr_print_policy_handle(ndr, "policy_handle", r->in.policy_handle);
11153 ndr->depth--;
11154 ndr_print_ptr(ndr, "info", r->in.info);
11155 ndr->depth++;
11156 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info", r->in.info);
11157 ndr->depth--;
11158 ndr_print_ptr(ndr, "auth_info", r->in.auth_info);
11159 ndr->depth++;
11160 ndr_print_lsa_TrustDomainInfoAuthInfoInternal(ndr, "auth_info", r->in.auth_info);
11161 ndr->depth--;
11162 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
11163 ndr->depth--;
11164 }
11165 if (flags & NDR_OUT) {
11166 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomainEx2");
11167 ndr->depth++;
11168 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
11169 ndr->depth++;
11170 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
11171 ndr->depth--;
11172 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11173 ndr->depth--;
11174 }
11175 ndr->depth--;
11176 }
11177
11178 static enum ndr_err_code ndr_push_lsa_CREDRWRITE(struct ndr_push *ndr, int flags, const struct lsa_CREDRWRITE *r)
/* [<][>][^][v][top][bottom][index][help] */
11179 {
11180 if (flags & NDR_IN) {
11181 }
11182 if (flags & NDR_OUT) {
11183 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11184 }
11185 return NDR_ERR_SUCCESS;
11186 }
11187
11188 static enum ndr_err_code ndr_pull_lsa_CREDRWRITE(struct ndr_pull *ndr, int flags, struct lsa_CREDRWRITE *r)
/* [<][>][^][v][top][bottom][index][help] */
11189 {
11190 if (flags & NDR_IN) {
11191 }
11192 if (flags & NDR_OUT) {
11193 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11194 }
11195 return NDR_ERR_SUCCESS;
11196 }
11197
11198 _PUBLIC_ void ndr_print_lsa_CREDRWRITE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRWRITE *r)
/* [<][>][^][v][top][bottom][index][help] */
11199 {
11200 ndr_print_struct(ndr, name, "lsa_CREDRWRITE");
11201 ndr->depth++;
11202 if (flags & NDR_SET_VALUES) {
11203 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11204 }
11205 if (flags & NDR_IN) {
11206 ndr_print_struct(ndr, "in", "lsa_CREDRWRITE");
11207 ndr->depth++;
11208 ndr->depth--;
11209 }
11210 if (flags & NDR_OUT) {
11211 ndr_print_struct(ndr, "out", "lsa_CREDRWRITE");
11212 ndr->depth++;
11213 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11214 ndr->depth--;
11215 }
11216 ndr->depth--;
11217 }
11218
11219 static enum ndr_err_code ndr_push_lsa_CREDRREAD(struct ndr_push *ndr, int flags, const struct lsa_CREDRREAD *r)
/* [<][>][^][v][top][bottom][index][help] */
11220 {
11221 if (flags & NDR_IN) {
11222 }
11223 if (flags & NDR_OUT) {
11224 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11225 }
11226 return NDR_ERR_SUCCESS;
11227 }
11228
11229 static enum ndr_err_code ndr_pull_lsa_CREDRREAD(struct ndr_pull *ndr, int flags, struct lsa_CREDRREAD *r)
/* [<][>][^][v][top][bottom][index][help] */
11230 {
11231 if (flags & NDR_IN) {
11232 }
11233 if (flags & NDR_OUT) {
11234 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11235 }
11236 return NDR_ERR_SUCCESS;
11237 }
11238
11239 _PUBLIC_ void ndr_print_lsa_CREDRREAD(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRREAD *r)
/* [<][>][^][v][top][bottom][index][help] */
11240 {
11241 ndr_print_struct(ndr, name, "lsa_CREDRREAD");
11242 ndr->depth++;
11243 if (flags & NDR_SET_VALUES) {
11244 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11245 }
11246 if (flags & NDR_IN) {
11247 ndr_print_struct(ndr, "in", "lsa_CREDRREAD");
11248 ndr->depth++;
11249 ndr->depth--;
11250 }
11251 if (flags & NDR_OUT) {
11252 ndr_print_struct(ndr, "out", "lsa_CREDRREAD");
11253 ndr->depth++;
11254 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11255 ndr->depth--;
11256 }
11257 ndr->depth--;
11258 }
11259
11260 static enum ndr_err_code ndr_push_lsa_CREDRENUMERATE(struct ndr_push *ndr, int flags, const struct lsa_CREDRENUMERATE *r)
/* [<][>][^][v][top][bottom][index][help] */
11261 {
11262 if (flags & NDR_IN) {
11263 }
11264 if (flags & NDR_OUT) {
11265 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11266 }
11267 return NDR_ERR_SUCCESS;
11268 }
11269
11270 static enum ndr_err_code ndr_pull_lsa_CREDRENUMERATE(struct ndr_pull *ndr, int flags, struct lsa_CREDRENUMERATE *r)
/* [<][>][^][v][top][bottom][index][help] */
11271 {
11272 if (flags & NDR_IN) {
11273 }
11274 if (flags & NDR_OUT) {
11275 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11276 }
11277 return NDR_ERR_SUCCESS;
11278 }
11279
11280 _PUBLIC_ void ndr_print_lsa_CREDRENUMERATE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRENUMERATE *r)
/* [<][>][^][v][top][bottom][index][help] */
11281 {
11282 ndr_print_struct(ndr, name, "lsa_CREDRENUMERATE");
11283 ndr->depth++;
11284 if (flags & NDR_SET_VALUES) {
11285 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11286 }
11287 if (flags & NDR_IN) {
11288 ndr_print_struct(ndr, "in", "lsa_CREDRENUMERATE");
11289 ndr->depth++;
11290 ndr->depth--;
11291 }
11292 if (flags & NDR_OUT) {
11293 ndr_print_struct(ndr, "out", "lsa_CREDRENUMERATE");
11294 ndr->depth++;
11295 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11296 ndr->depth--;
11297 }
11298 ndr->depth--;
11299 }
11300
11301 static enum ndr_err_code ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_push *ndr, int flags, const struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
/* [<][>][^][v][top][bottom][index][help] */
11302 {
11303 if (flags & NDR_IN) {
11304 }
11305 if (flags & NDR_OUT) {
11306 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11307 }
11308 return NDR_ERR_SUCCESS;
11309 }
11310
11311 static enum ndr_err_code ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_pull *ndr, int flags, struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
/* [<][>][^][v][top][bottom][index][help] */
11312 {
11313 if (flags & NDR_IN) {
11314 }
11315 if (flags & NDR_OUT) {
11316 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11317 }
11318 return NDR_ERR_SUCCESS;
11319 }
11320
11321 _PUBLIC_ void ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
/* [<][>][^][v][top][bottom][index][help] */
11322 {
11323 ndr_print_struct(ndr, name, "lsa_CREDRWRITEDOMAINCREDENTIALS");
11324 ndr->depth++;
11325 if (flags & NDR_SET_VALUES) {
11326 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11327 }
11328 if (flags & NDR_IN) {
11329 ndr_print_struct(ndr, "in", "lsa_CREDRWRITEDOMAINCREDENTIALS");
11330 ndr->depth++;
11331 ndr->depth--;
11332 }
11333 if (flags & NDR_OUT) {
11334 ndr_print_struct(ndr, "out", "lsa_CREDRWRITEDOMAINCREDENTIALS");
11335 ndr->depth++;
11336 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11337 ndr->depth--;
11338 }
11339 ndr->depth--;
11340 }
11341
11342 static enum ndr_err_code ndr_push_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_push *ndr, int flags, const struct lsa_CREDRREADDOMAINCREDENTIALS *r)
/* [<][>][^][v][top][bottom][index][help] */
11343 {
11344 if (flags & NDR_IN) {
11345 }
11346 if (flags & NDR_OUT) {
11347 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11348 }
11349 return NDR_ERR_SUCCESS;
11350 }
11351
11352 static enum ndr_err_code ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_pull *ndr, int flags, struct lsa_CREDRREADDOMAINCREDENTIALS *r)
/* [<][>][^][v][top][bottom][index][help] */
11353 {
11354 if (flags & NDR_IN) {
11355 }
11356 if (flags & NDR_OUT) {
11357 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11358 }
11359 return NDR_ERR_SUCCESS;
11360 }
11361
11362 _PUBLIC_ void ndr_print_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRREADDOMAINCREDENTIALS *r)
/* [<][>][^][v][top][bottom][index][help] */
11363 {
11364 ndr_print_struct(ndr, name, "lsa_CREDRREADDOMAINCREDENTIALS");
11365 ndr->depth++;
11366 if (flags & NDR_SET_VALUES) {
11367 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11368 }
11369 if (flags & NDR_IN) {
11370 ndr_print_struct(ndr, "in", "lsa_CREDRREADDOMAINCREDENTIALS");
11371 ndr->depth++;
11372 ndr->depth--;
11373 }
11374 if (flags & NDR_OUT) {
11375 ndr_print_struct(ndr, "out", "lsa_CREDRREADDOMAINCREDENTIALS");
11376 ndr->depth++;
11377 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11378 ndr->depth--;
11379 }
11380 ndr->depth--;
11381 }
11382
11383 static enum ndr_err_code ndr_push_lsa_CREDRDELETE(struct ndr_push *ndr, int flags, const struct lsa_CREDRDELETE *r)
/* [<][>][^][v][top][bottom][index][help] */
11384 {
11385 if (flags & NDR_IN) {
11386 }
11387 if (flags & NDR_OUT) {
11388 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11389 }
11390 return NDR_ERR_SUCCESS;
11391 }
11392
11393 static enum ndr_err_code ndr_pull_lsa_CREDRDELETE(struct ndr_pull *ndr, int flags, struct lsa_CREDRDELETE *r)
/* [<][>][^][v][top][bottom][index][help] */
11394 {
11395 if (flags & NDR_IN) {
11396 }
11397 if (flags & NDR_OUT) {
11398 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11399 }
11400 return NDR_ERR_SUCCESS;
11401 }
11402
11403 _PUBLIC_ void ndr_print_lsa_CREDRDELETE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRDELETE *r)
/* [<][>][^][v][top][bottom][index][help] */
11404 {
11405 ndr_print_struct(ndr, name, "lsa_CREDRDELETE");
11406 ndr->depth++;
11407 if (flags & NDR_SET_VALUES) {
11408 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11409 }
11410 if (flags & NDR_IN) {
11411 ndr_print_struct(ndr, "in", "lsa_CREDRDELETE");
11412 ndr->depth++;
11413 ndr->depth--;
11414 }
11415 if (flags & NDR_OUT) {
11416 ndr_print_struct(ndr, "out", "lsa_CREDRDELETE");
11417 ndr->depth++;
11418 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11419 ndr->depth--;
11420 }
11421 ndr->depth--;
11422 }
11423
11424 static enum ndr_err_code ndr_push_lsa_CREDRGETTARGETINFO(struct ndr_push *ndr, int flags, const struct lsa_CREDRGETTARGETINFO *r)
/* [<][>][^][v][top][bottom][index][help] */
11425 {
11426 if (flags & NDR_IN) {
11427 }
11428 if (flags & NDR_OUT) {
11429 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11430 }
11431 return NDR_ERR_SUCCESS;
11432 }
11433
11434 static enum ndr_err_code ndr_pull_lsa_CREDRGETTARGETINFO(struct ndr_pull *ndr, int flags, struct lsa_CREDRGETTARGETINFO *r)
/* [<][>][^][v][top][bottom][index][help] */
11435 {
11436 if (flags & NDR_IN) {
11437 }
11438 if (flags & NDR_OUT) {
11439 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11440 }
11441 return NDR_ERR_SUCCESS;
11442 }
11443
11444 _PUBLIC_ void ndr_print_lsa_CREDRGETTARGETINFO(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRGETTARGETINFO *r)
/* [<][>][^][v][top][bottom][index][help] */
11445 {
11446 ndr_print_struct(ndr, name, "lsa_CREDRGETTARGETINFO");
11447 ndr->depth++;
11448 if (flags & NDR_SET_VALUES) {
11449 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11450 }
11451 if (flags & NDR_IN) {
11452 ndr_print_struct(ndr, "in", "lsa_CREDRGETTARGETINFO");
11453 ndr->depth++;
11454 ndr->depth--;
11455 }
11456 if (flags & NDR_OUT) {
11457 ndr_print_struct(ndr, "out", "lsa_CREDRGETTARGETINFO");
11458 ndr->depth++;
11459 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11460 ndr->depth--;
11461 }
11462 ndr->depth--;
11463 }
11464
11465 static enum ndr_err_code ndr_push_lsa_CREDRPROFILELOADED(struct ndr_push *ndr, int flags, const struct lsa_CREDRPROFILELOADED *r)
/* [<][>][^][v][top][bottom][index][help] */
11466 {
11467 if (flags & NDR_IN) {
11468 }
11469 if (flags & NDR_OUT) {
11470 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11471 }
11472 return NDR_ERR_SUCCESS;
11473 }
11474
11475 static enum ndr_err_code ndr_pull_lsa_CREDRPROFILELOADED(struct ndr_pull *ndr, int flags, struct lsa_CREDRPROFILELOADED *r)
/* [<][>][^][v][top][bottom][index][help] */
11476 {
11477 if (flags & NDR_IN) {
11478 }
11479 if (flags & NDR_OUT) {
11480 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11481 }
11482 return NDR_ERR_SUCCESS;
11483 }
11484
11485 _PUBLIC_ void ndr_print_lsa_CREDRPROFILELOADED(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRPROFILELOADED *r)
/* [<][>][^][v][top][bottom][index][help] */
11486 {
11487 ndr_print_struct(ndr, name, "lsa_CREDRPROFILELOADED");
11488 ndr->depth++;
11489 if (flags & NDR_SET_VALUES) {
11490 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11491 }
11492 if (flags & NDR_IN) {
11493 ndr_print_struct(ndr, "in", "lsa_CREDRPROFILELOADED");
11494 ndr->depth++;
11495 ndr->depth--;
11496 }
11497 if (flags & NDR_OUT) {
11498 ndr_print_struct(ndr, "out", "lsa_CREDRPROFILELOADED");
11499 ndr->depth++;
11500 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11501 ndr->depth--;
11502 }
11503 ndr->depth--;
11504 }
11505
11506 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames3(struct ndr_push *ndr, int flags, const struct lsa_LookupNames3 *r)
/* [<][>][^][v][top][bottom][index][help] */
11507 {
11508 uint32_t cntr_names_0;
11509 if (flags & NDR_IN) {
11510 if (r->in.handle == NULL) {
11511 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11512 }
11513 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
11514 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
11515 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
11516 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
11517 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
11518 }
11519 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
11520 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
11521 }
11522 if (r->in.sids == NULL) {
11523 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11524 }
11525 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
11526 NDR_CHECK(ndr_push_lsa_LookupNamesLevel(ndr, NDR_SCALARS, r->in.level));
11527 if (r->in.count == NULL) {
11528 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11529 }
11530 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
11531 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.lookup_options));
11532 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.client_revision));
11533 }
11534 if (flags & NDR_OUT) {
11535 if (r->out.domains == NULL) {
11536 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11537 }
11538 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
11539 if (*r->out.domains) {
11540 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
11541 }
11542 if (r->out.sids == NULL) {
11543 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11544 }
11545 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
11546 if (r->out.count == NULL) {
11547 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11548 }
11549 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
11550 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11551 }
11552 return NDR_ERR_SUCCESS;
11553 }
11554
11555 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames3(struct ndr_pull *ndr, int flags, struct lsa_LookupNames3 *r)
/* [<][>][^][v][top][bottom][index][help] */
11556 {
11557 uint32_t cntr_names_0;
11558 uint32_t _ptr_domains;
11559 TALLOC_CTX *_mem_save_handle_0;
11560 TALLOC_CTX *_mem_save_names_0;
11561 TALLOC_CTX *_mem_save_domains_0;
11562 TALLOC_CTX *_mem_save_domains_1;
11563 TALLOC_CTX *_mem_save_sids_0;
11564 TALLOC_CTX *_mem_save_count_0;
11565 if (flags & NDR_IN) {
11566 ZERO_STRUCT(r->out);
11567
11568 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11569 NDR_PULL_ALLOC(ndr, r->in.handle);
11570 }
11571 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11572 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
11573 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
11574 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
11575 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
11576 if (r->in.num_names > 1000) {
11577 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
11578 }
11579 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
11580 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
11581 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
11582 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
11583 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
11584 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
11585 }
11586 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
11587 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
11588 }
11589 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
11590 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11591 NDR_PULL_ALLOC(ndr, r->in.sids);
11592 }
11593 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
11594 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
11595 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
11596 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
11597 NDR_CHECK(ndr_pull_lsa_LookupNamesLevel(ndr, NDR_SCALARS, &r->in.level));
11598 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11599 NDR_PULL_ALLOC(ndr, r->in.count);
11600 }
11601 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
11602 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
11603 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
11604 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
11605 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.lookup_options));
11606 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.client_revision));
11607 NDR_PULL_ALLOC(ndr, r->out.domains);
11608 ZERO_STRUCTP(r->out.domains);
11609 NDR_PULL_ALLOC(ndr, r->out.sids);
11610 *r->out.sids = *r->in.sids;
11611 NDR_PULL_ALLOC(ndr, r->out.count);
11612 *r->out.count = *r->in.count;
11613 if (r->in.names) {
11614 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
11615 }
11616 }
11617 if (flags & NDR_OUT) {
11618 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11619 NDR_PULL_ALLOC(ndr, r->out.domains);
11620 }
11621 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
11622 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
11623 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
11624 if (_ptr_domains) {
11625 NDR_PULL_ALLOC(ndr, *r->out.domains);
11626 } else {
11627 *r->out.domains = NULL;
11628 }
11629 if (*r->out.domains) {
11630 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
11631 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
11632 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
11633 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
11634 }
11635 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
11636 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11637 NDR_PULL_ALLOC(ndr, r->out.sids);
11638 }
11639 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
11640 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
11641 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
11642 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
11643 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11644 NDR_PULL_ALLOC(ndr, r->out.count);
11645 }
11646 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
11647 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
11648 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
11649 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
11650 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11651 }
11652 return NDR_ERR_SUCCESS;
11653 }
11654
11655 _PUBLIC_ void ndr_print_lsa_LookupNames3(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames3 *r)
/* [<][>][^][v][top][bottom][index][help] */
11656 {
11657 uint32_t cntr_names_0;
11658 ndr_print_struct(ndr, name, "lsa_LookupNames3");
11659 ndr->depth++;
11660 if (flags & NDR_SET_VALUES) {
11661 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11662 }
11663 if (flags & NDR_IN) {
11664 ndr_print_struct(ndr, "in", "lsa_LookupNames3");
11665 ndr->depth++;
11666 ndr_print_ptr(ndr, "handle", r->in.handle);
11667 ndr->depth++;
11668 ndr_print_policy_handle(ndr, "handle", r->in.handle);
11669 ndr->depth--;
11670 ndr_print_uint32(ndr, "num_names", r->in.num_names);
11671 ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->in.num_names);
11672 ndr->depth++;
11673 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
11674 char *idx_0=NULL;
11675 if (asprintf(&idx_0, "[%d]", cntr_names_0) != -1) {
11676 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
11677 free(idx_0);
11678 }
11679 }
11680 ndr->depth--;
11681 ndr_print_ptr(ndr, "sids", r->in.sids);
11682 ndr->depth++;
11683 ndr_print_lsa_TransSidArray3(ndr, "sids", r->in.sids);
11684 ndr->depth--;
11685 ndr_print_lsa_LookupNamesLevel(ndr, "level", r->in.level);
11686 ndr_print_ptr(ndr, "count", r->in.count);
11687 ndr->depth++;
11688 ndr_print_uint32(ndr, "count", *r->in.count);
11689 ndr->depth--;
11690 ndr_print_uint32(ndr, "lookup_options", r->in.lookup_options);
11691 ndr_print_uint32(ndr, "client_revision", r->in.client_revision);
11692 ndr->depth--;
11693 }
11694 if (flags & NDR_OUT) {
11695 ndr_print_struct(ndr, "out", "lsa_LookupNames3");
11696 ndr->depth++;
11697 ndr_print_ptr(ndr, "domains", r->out.domains);
11698 ndr->depth++;
11699 ndr_print_ptr(ndr, "domains", *r->out.domains);
11700 ndr->depth++;
11701 if (*r->out.domains) {
11702 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
11703 }
11704 ndr->depth--;
11705 ndr->depth--;
11706 ndr_print_ptr(ndr, "sids", r->out.sids);
11707 ndr->depth++;
11708 ndr_print_lsa_TransSidArray3(ndr, "sids", r->out.sids);
11709 ndr->depth--;
11710 ndr_print_ptr(ndr, "count", r->out.count);
11711 ndr->depth++;
11712 ndr_print_uint32(ndr, "count", *r->out.count);
11713 ndr->depth--;
11714 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11715 ndr->depth--;
11716 }
11717 ndr->depth--;
11718 }
11719
11720 static enum ndr_err_code ndr_push_lsa_CREDRGETSESSIONTYPES(struct ndr_push *ndr, int flags, const struct lsa_CREDRGETSESSIONTYPES *r)
/* [<][>][^][v][top][bottom][index][help] */
11721 {
11722 if (flags & NDR_IN) {
11723 }
11724 if (flags & NDR_OUT) {
11725 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11726 }
11727 return NDR_ERR_SUCCESS;
11728 }
11729
11730 static enum ndr_err_code ndr_pull_lsa_CREDRGETSESSIONTYPES(struct ndr_pull *ndr, int flags, struct lsa_CREDRGETSESSIONTYPES *r)
/* [<][>][^][v][top][bottom][index][help] */
11731 {
11732 if (flags & NDR_IN) {
11733 }
11734 if (flags & NDR_OUT) {
11735 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11736 }
11737 return NDR_ERR_SUCCESS;
11738 }
11739
11740 _PUBLIC_ void ndr_print_lsa_CREDRGETSESSIONTYPES(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRGETSESSIONTYPES *r)
/* [<][>][^][v][top][bottom][index][help] */
11741 {
11742 ndr_print_struct(ndr, name, "lsa_CREDRGETSESSIONTYPES");
11743 ndr->depth++;
11744 if (flags & NDR_SET_VALUES) {
11745 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11746 }
11747 if (flags & NDR_IN) {
11748 ndr_print_struct(ndr, "in", "lsa_CREDRGETSESSIONTYPES");
11749 ndr->depth++;
11750 ndr->depth--;
11751 }
11752 if (flags & NDR_OUT) {
11753 ndr_print_struct(ndr, "out", "lsa_CREDRGETSESSIONTYPES");
11754 ndr->depth++;
11755 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11756 ndr->depth--;
11757 }
11758 ndr->depth--;
11759 }
11760
11761 static enum ndr_err_code ndr_push_lsa_LSARREGISTERAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARREGISTERAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11762 {
11763 if (flags & NDR_IN) {
11764 }
11765 if (flags & NDR_OUT) {
11766 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11767 }
11768 return NDR_ERR_SUCCESS;
11769 }
11770
11771 static enum ndr_err_code ndr_pull_lsa_LSARREGISTERAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARREGISTERAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11772 {
11773 if (flags & NDR_IN) {
11774 }
11775 if (flags & NDR_OUT) {
11776 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11777 }
11778 return NDR_ERR_SUCCESS;
11779 }
11780
11781 _PUBLIC_ void ndr_print_lsa_LSARREGISTERAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARREGISTERAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11782 {
11783 ndr_print_struct(ndr, name, "lsa_LSARREGISTERAUDITEVENT");
11784 ndr->depth++;
11785 if (flags & NDR_SET_VALUES) {
11786 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11787 }
11788 if (flags & NDR_IN) {
11789 ndr_print_struct(ndr, "in", "lsa_LSARREGISTERAUDITEVENT");
11790 ndr->depth++;
11791 ndr->depth--;
11792 }
11793 if (flags & NDR_OUT) {
11794 ndr_print_struct(ndr, "out", "lsa_LSARREGISTERAUDITEVENT");
11795 ndr->depth++;
11796 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11797 ndr->depth--;
11798 }
11799 ndr->depth--;
11800 }
11801
11802 static enum ndr_err_code ndr_push_lsa_LSARGENAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARGENAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11803 {
11804 if (flags & NDR_IN) {
11805 }
11806 if (flags & NDR_OUT) {
11807 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11808 }
11809 return NDR_ERR_SUCCESS;
11810 }
11811
11812 static enum ndr_err_code ndr_pull_lsa_LSARGENAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARGENAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11813 {
11814 if (flags & NDR_IN) {
11815 }
11816 if (flags & NDR_OUT) {
11817 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11818 }
11819 return NDR_ERR_SUCCESS;
11820 }
11821
11822 _PUBLIC_ void ndr_print_lsa_LSARGENAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARGENAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11823 {
11824 ndr_print_struct(ndr, name, "lsa_LSARGENAUDITEVENT");
11825 ndr->depth++;
11826 if (flags & NDR_SET_VALUES) {
11827 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11828 }
11829 if (flags & NDR_IN) {
11830 ndr_print_struct(ndr, "in", "lsa_LSARGENAUDITEVENT");
11831 ndr->depth++;
11832 ndr->depth--;
11833 }
11834 if (flags & NDR_OUT) {
11835 ndr_print_struct(ndr, "out", "lsa_LSARGENAUDITEVENT");
11836 ndr->depth++;
11837 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11838 ndr->depth--;
11839 }
11840 ndr->depth--;
11841 }
11842
11843 static enum ndr_err_code ndr_push_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARUNREGISTERAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11844 {
11845 if (flags & NDR_IN) {
11846 }
11847 if (flags & NDR_OUT) {
11848 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11849 }
11850 return NDR_ERR_SUCCESS;
11851 }
11852
11853 static enum ndr_err_code ndr_pull_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARUNREGISTERAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11854 {
11855 if (flags & NDR_IN) {
11856 }
11857 if (flags & NDR_OUT) {
11858 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11859 }
11860 return NDR_ERR_SUCCESS;
11861 }
11862
11863 _PUBLIC_ void ndr_print_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARUNREGISTERAUDITEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
11864 {
11865 ndr_print_struct(ndr, name, "lsa_LSARUNREGISTERAUDITEVENT");
11866 ndr->depth++;
11867 if (flags & NDR_SET_VALUES) {
11868 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11869 }
11870 if (flags & NDR_IN) {
11871 ndr_print_struct(ndr, "in", "lsa_LSARUNREGISTERAUDITEVENT");
11872 ndr->depth++;
11873 ndr->depth--;
11874 }
11875 if (flags & NDR_OUT) {
11876 ndr_print_struct(ndr, "out", "lsa_LSARUNREGISTERAUDITEVENT");
11877 ndr->depth++;
11878 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11879 ndr->depth--;
11880 }
11881 ndr->depth--;
11882 }
11883
11884 static enum ndr_err_code ndr_push_lsa_lsaRQueryForestTrustInformation(struct ndr_push *ndr, int flags, const struct lsa_lsaRQueryForestTrustInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
11885 {
11886 if (flags & NDR_IN) {
11887 if (r->in.handle == NULL) {
11888 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11889 }
11890 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
11891 if (r->in.trusted_domain_name == NULL) {
11892 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11893 }
11894 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trusted_domain_name));
11895 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.unknown));
11896 }
11897 if (flags & NDR_OUT) {
11898 if (r->out.forest_trust_info == NULL) {
11899 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11900 }
11901 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.forest_trust_info));
11902 if (*r->out.forest_trust_info) {
11903 NDR_CHECK(ndr_push_lsa_ForestTrustInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.forest_trust_info));
11904 }
11905 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11906 }
11907 return NDR_ERR_SUCCESS;
11908 }
11909
11910 static enum ndr_err_code ndr_pull_lsa_lsaRQueryForestTrustInformation(struct ndr_pull *ndr, int flags, struct lsa_lsaRQueryForestTrustInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
11911 {
11912 uint32_t _ptr_forest_trust_info;
11913 TALLOC_CTX *_mem_save_handle_0;
11914 TALLOC_CTX *_mem_save_trusted_domain_name_0;
11915 TALLOC_CTX *_mem_save_forest_trust_info_0;
11916 TALLOC_CTX *_mem_save_forest_trust_info_1;
11917 if (flags & NDR_IN) {
11918 ZERO_STRUCT(r->out);
11919
11920 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11921 NDR_PULL_ALLOC(ndr, r->in.handle);
11922 }
11923 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11924 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
11925 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
11926 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
11927 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11928 NDR_PULL_ALLOC(ndr, r->in.trusted_domain_name);
11929 }
11930 _mem_save_trusted_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11931 NDR_PULL_SET_MEM_CTX(ndr, r->in.trusted_domain_name, LIBNDR_FLAG_REF_ALLOC);
11932 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trusted_domain_name));
11933 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trusted_domain_name_0, LIBNDR_FLAG_REF_ALLOC);
11934 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.unknown));
11935 NDR_PULL_ALLOC(ndr, r->out.forest_trust_info);
11936 ZERO_STRUCTP(r->out.forest_trust_info);
11937 }
11938 if (flags & NDR_OUT) {
11939 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11940 NDR_PULL_ALLOC(ndr, r->out.forest_trust_info);
11941 }
11942 _mem_save_forest_trust_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
11943 NDR_PULL_SET_MEM_CTX(ndr, r->out.forest_trust_info, LIBNDR_FLAG_REF_ALLOC);
11944 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_forest_trust_info));
11945 if (_ptr_forest_trust_info) {
11946 NDR_PULL_ALLOC(ndr, *r->out.forest_trust_info);
11947 } else {
11948 *r->out.forest_trust_info = NULL;
11949 }
11950 if (*r->out.forest_trust_info) {
11951 _mem_save_forest_trust_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
11952 NDR_PULL_SET_MEM_CTX(ndr, *r->out.forest_trust_info, 0);
11953 NDR_CHECK(ndr_pull_lsa_ForestTrustInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.forest_trust_info));
11954 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_forest_trust_info_1, 0);
11955 }
11956 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_forest_trust_info_0, LIBNDR_FLAG_REF_ALLOC);
11957 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11958 }
11959 return NDR_ERR_SUCCESS;
11960 }
11961
11962 _PUBLIC_ void ndr_print_lsa_lsaRQueryForestTrustInformation(struct ndr_print *ndr, const char *name, int flags, const struct lsa_lsaRQueryForestTrustInformation *r)
/* [<][>][^][v][top][bottom][index][help] */
11963 {
11964 ndr_print_struct(ndr, name, "lsa_lsaRQueryForestTrustInformation");
11965 ndr->depth++;
11966 if (flags & NDR_SET_VALUES) {
11967 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11968 }
11969 if (flags & NDR_IN) {
11970 ndr_print_struct(ndr, "in", "lsa_lsaRQueryForestTrustInformation");
11971 ndr->depth++;
11972 ndr_print_ptr(ndr, "handle", r->in.handle);
11973 ndr->depth++;
11974 ndr_print_policy_handle(ndr, "handle", r->in.handle);
11975 ndr->depth--;
11976 ndr_print_ptr(ndr, "trusted_domain_name", r->in.trusted_domain_name);
11977 ndr->depth++;
11978 ndr_print_lsa_String(ndr, "trusted_domain_name", r->in.trusted_domain_name);
11979 ndr->depth--;
11980 ndr_print_uint16(ndr, "unknown", r->in.unknown);
11981 ndr->depth--;
11982 }
11983 if (flags & NDR_OUT) {
11984 ndr_print_struct(ndr, "out", "lsa_lsaRQueryForestTrustInformation");
11985 ndr->depth++;
11986 ndr_print_ptr(ndr, "forest_trust_info", r->out.forest_trust_info);
11987 ndr->depth++;
11988 ndr_print_ptr(ndr, "forest_trust_info", *r->out.forest_trust_info);
11989 ndr->depth++;
11990 if (*r->out.forest_trust_info) {
11991 ndr_print_lsa_ForestTrustInformation(ndr, "forest_trust_info", *r->out.forest_trust_info);
11992 }
11993 ndr->depth--;
11994 ndr->depth--;
11995 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11996 ndr->depth--;
11997 }
11998 ndr->depth--;
11999 }
12000
12001 static enum ndr_err_code ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_push *ndr, int flags, const struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
/* [<][>][^][v][top][bottom][index][help] */
12002 {
12003 if (flags & NDR_IN) {
12004 }
12005 if (flags & NDR_OUT) {
12006 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12007 }
12008 return NDR_ERR_SUCCESS;
12009 }
12010
12011 static enum ndr_err_code ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_pull *ndr, int flags, struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
/* [<][>][^][v][top][bottom][index][help] */
12012 {
12013 if (flags & NDR_IN) {
12014 }
12015 if (flags & NDR_OUT) {
12016 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12017 }
12018 return NDR_ERR_SUCCESS;
12019 }
12020
12021 _PUBLIC_ void ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
/* [<][>][^][v][top][bottom][index][help] */
12022 {
12023 ndr_print_struct(ndr, name, "lsa_LSARSETFORESTTRUSTINFORMATION");
12024 ndr->depth++;
12025 if (flags & NDR_SET_VALUES) {
12026 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12027 }
12028 if (flags & NDR_IN) {
12029 ndr_print_struct(ndr, "in", "lsa_LSARSETFORESTTRUSTINFORMATION");
12030 ndr->depth++;
12031 ndr->depth--;
12032 }
12033 if (flags & NDR_OUT) {
12034 ndr_print_struct(ndr, "out", "lsa_LSARSETFORESTTRUSTINFORMATION");
12035 ndr->depth++;
12036 ndr_print_NTSTATUS(ndr, "result", r->out.result);
12037 ndr->depth--;
12038 }
12039 ndr->depth--;
12040 }
12041
12042 static enum ndr_err_code ndr_push_lsa_CREDRRENAME(struct ndr_push *ndr, int flags, const struct lsa_CREDRRENAME *r)
/* [<][>][^][v][top][bottom][index][help] */
12043 {
12044 if (flags & NDR_IN) {
12045 }
12046 if (flags & NDR_OUT) {
12047 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12048 }
12049 return NDR_ERR_SUCCESS;
12050 }
12051
12052 static enum ndr_err_code ndr_pull_lsa_CREDRRENAME(struct ndr_pull *ndr, int flags, struct lsa_CREDRRENAME *r)
/* [<][>][^][v][top][bottom][index][help] */
12053 {
12054 if (flags & NDR_IN) {
12055 }
12056 if (flags & NDR_OUT) {
12057 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12058 }
12059 return NDR_ERR_SUCCESS;
12060 }
12061
12062 _PUBLIC_ void ndr_print_lsa_CREDRRENAME(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRRENAME *r)
/* [<][>][^][v][top][bottom][index][help] */
12063 {
12064 ndr_print_struct(ndr, name, "lsa_CREDRRENAME");
12065 ndr->depth++;
12066 if (flags & NDR_SET_VALUES) {
12067 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12068 }
12069 if (flags & NDR_IN) {
12070 ndr_print_struct(ndr, "in", "lsa_CREDRRENAME");
12071 ndr->depth++;
12072 ndr->depth--;
12073 }
12074 if (flags & NDR_OUT) {
12075 ndr_print_struct(ndr, "out", "lsa_CREDRRENAME");
12076 ndr->depth++;
12077 ndr_print_NTSTATUS(ndr, "result", r->out.result);
12078 ndr->depth--;
12079 }
12080 ndr->depth--;
12081 }
12082
12083 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupSids3(struct ndr_push *ndr, int flags, const struct lsa_LookupSids3 *r)
/* [<][>][^][v][top][bottom][index][help] */
12084 {
12085 if (flags & NDR_IN) {
12086 if (r->in.sids == NULL) {
12087 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12088 }
12089 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
12090 if (r->in.names == NULL) {
12091 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12092 }
12093 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
12094 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
12095 if (r->in.count == NULL) {
12096 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12097 }
12098 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
12099 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
12100 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
12101 }
12102 if (flags & NDR_OUT) {
12103 if (r->out.domains == NULL) {
12104 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12105 }
12106 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
12107 if (*r->out.domains) {
12108 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
12109 }
12110 if (r->out.names == NULL) {
12111 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12112 }
12113 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
12114 if (r->out.count == NULL) {
12115 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12116 }
12117 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
12118 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12119 }
12120 return NDR_ERR_SUCCESS;
12121 }
12122
12123 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupSids3(struct ndr_pull *ndr, int flags, struct lsa_LookupSids3 *r)
/* [<][>][^][v][top][bottom][index][help] */
12124 {
12125 uint32_t _ptr_domains;
12126 TALLOC_CTX *_mem_save_sids_0;
12127 TALLOC_CTX *_mem_save_domains_0;
12128 TALLOC_CTX *_mem_save_domains_1;
12129 TALLOC_CTX *_mem_save_names_0;
12130 TALLOC_CTX *_mem_save_count_0;
12131 if (flags & NDR_IN) {
12132 ZERO_STRUCT(r->out);
12133
12134 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12135 NDR_PULL_ALLOC(ndr, r->in.sids);
12136 }
12137 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
12138 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
12139 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
12140 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
12141 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12142 NDR_PULL_ALLOC(ndr, r->in.names);
12143 }
12144 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
12145 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
12146 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
12147 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
12148 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
12149 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12150 NDR_PULL_ALLOC(ndr, r->in.count);
12151 }
12152 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
12153 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
12154 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
12155 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
12156 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
12157 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
12158 NDR_PULL_ALLOC(ndr, r->out.domains);
12159 ZERO_STRUCTP(r->out.domains);
12160 NDR_PULL_ALLOC(ndr, r->out.names);
12161 *r->out.names = *r->in.names;
12162 NDR_PULL_ALLOC(ndr, r->out.count);
12163 *r->out.count = *r->in.count;
12164 }
12165 if (flags & NDR_OUT) {
12166 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12167 NDR_PULL_ALLOC(ndr, r->out.domains);
12168 }
12169 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
12170 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
12171 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
12172 if (_ptr_domains) {
12173 NDR_PULL_ALLOC(ndr, *r->out.domains);
12174 } else {
12175 *r->out.domains = NULL;
12176 }
12177 if (*r->out.domains) {
12178 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
12179 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
12180 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
12181 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
12182 }
12183 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
12184 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12185 NDR_PULL_ALLOC(ndr, r->out.names);
12186 }
12187 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
12188 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
12189 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
12190 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
12191 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12192 NDR_PULL_ALLOC(ndr, r->out.count);
12193 }
12194 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
12195 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
12196 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
12197 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
12198 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12199 }
12200 return NDR_ERR_SUCCESS;
12201 }
12202
12203 _PUBLIC_ void ndr_print_lsa_LookupSids3(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids3 *r)
/* [<][>][^][v][top][bottom][index][help] */
12204 {
12205 ndr_print_struct(ndr, name, "lsa_LookupSids3");
12206 ndr->depth++;
12207 if (flags & NDR_SET_VALUES) {
12208 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12209 }
12210 if (flags & NDR_IN) {
12211 ndr_print_struct(ndr, "in", "lsa_LookupSids3");
12212 ndr->depth++;
12213 ndr_print_ptr(ndr, "sids", r->in.sids);
12214 ndr->depth++;
12215 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
12216 ndr->depth--;
12217 ndr_print_ptr(ndr, "names", r->in.names);
12218 ndr->depth++;
12219 ndr_print_lsa_TransNameArray2(ndr, "names", r->in.names);
12220 ndr->depth--;
12221 ndr_print_uint16(ndr, "level", r->in.level);
12222 ndr_print_ptr(ndr, "count", r->in.count);
12223 ndr->depth++;
12224 ndr_print_uint32(ndr, "count", *r->in.count);
12225 ndr->depth--;
12226 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
12227 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
12228 ndr->depth--;
12229 }
12230 if (flags & NDR_OUT) {
12231 ndr_print_struct(ndr, "out", "lsa_LookupSids3");
12232 ndr->depth++;
12233 ndr_print_ptr(ndr, "domains", r->out.domains);
12234 ndr->depth++;
12235 ndr_print_ptr(ndr, "domains", *r->out.domains);
12236 ndr->depth++;
12237 if (*r->out.domains) {
12238 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
12239 }
12240 ndr->depth--;
12241 ndr->depth--;
12242 ndr_print_ptr(ndr, "names", r->out.names);
12243 ndr->depth++;
12244 ndr_print_lsa_TransNameArray2(ndr, "names", r->out.names);
12245 ndr->depth--;
12246 ndr_print_ptr(ndr, "count", r->out.count);
12247 ndr->depth++;
12248 ndr_print_uint32(ndr, "count", *r->out.count);
12249 ndr->depth--;
12250 ndr_print_NTSTATUS(ndr, "result", r->out.result);
12251 ndr->depth--;
12252 }
12253 ndr->depth--;
12254 }
12255
12256 static enum ndr_err_code ndr_push_lsa_LookupNames4(struct ndr_push *ndr, int flags, const struct lsa_LookupNames4 *r)
/* [<][>][^][v][top][bottom][index][help] */
12257 {
12258 uint32_t cntr_names_0;
12259 if (flags & NDR_IN) {
12260 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
12261 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
12262 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
12263 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
12264 }
12265 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
12266 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
12267 }
12268 if (r->in.sids == NULL) {
12269 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12270 }
12271 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
12272 NDR_CHECK(ndr_push_lsa_LookupNamesLevel(ndr, NDR_SCALARS, r->in.level));
12273 if (r->in.count == NULL) {
12274 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12275 }
12276 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
12277 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.lookup_options));
12278 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.client_revision));
12279 }
12280 if (flags & NDR_OUT) {
12281 if (r->out.domains == NULL) {
12282 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12283 }
12284 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
12285 if (*r->out.domains) {
12286 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
12287 }
12288 if (r->out.sids == NULL) {
12289 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12290 }
12291 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
12292 if (r->out.count == NULL) {
12293 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12294 }
12295 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
12296 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12297 }
12298 return NDR_ERR_SUCCESS;
12299 }
12300
12301 static enum ndr_err_code ndr_pull_lsa_LookupNames4(struct ndr_pull *ndr, int flags, struct lsa_LookupNames4 *r)
/* [<][>][^][v][top][bottom][index][help] */
12302 {
12303 uint32_t cntr_names_0;
12304 uint32_t _ptr_domains;
12305 TALLOC_CTX *_mem_save_names_0;
12306 TALLOC_CTX *_mem_save_domains_0;
12307 TALLOC_CTX *_mem_save_domains_1;
12308 TALLOC_CTX *_mem_save_sids_0;
12309 TALLOC_CTX *_mem_save_count_0;
12310 if (flags & NDR_IN) {
12311 ZERO_STRUCT(r->out);
12312
12313 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
12314 if (r->in.num_names > 1000) {
12315 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
12316 }
12317 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
12318 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
12319 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
12320 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
12321 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
12322 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
12323 }
12324 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
12325 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
12326 }
12327 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
12328 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12329 NDR_PULL_ALLOC(ndr, r->in.sids);
12330 }
12331 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
12332 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
12333 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
12334 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
12335 NDR_CHECK(ndr_pull_lsa_LookupNamesLevel(ndr, NDR_SCALARS, &r->in.level));
12336 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12337 NDR_PULL_ALLOC(ndr, r->in.count);
12338 }
12339 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
12340 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
12341 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
12342 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
12343 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.lookup_options));
12344 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.client_revision));
12345 NDR_PULL_ALLOC(ndr, r->out.domains);
12346 ZERO_STRUCTP(r->out.domains);
12347 NDR_PULL_ALLOC(ndr, r->out.sids);
12348 *r->out.sids = *r->in.sids;
12349 NDR_PULL_ALLOC(ndr, r->out.count);
12350 *r->out.count = *r->in.count;
12351 if (r->in.names) {
12352 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
12353 }
12354 }
12355 if (flags & NDR_OUT) {
12356 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12357 NDR_PULL_ALLOC(ndr, r->out.domains);
12358 }
12359 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
12360 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
12361 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
12362 if (_ptr_domains) {
12363 NDR_PULL_ALLOC(ndr, *r->out.domains);
12364 } else {
12365 *r->out.domains = NULL;
12366 }
12367 if (*r->out.domains) {
12368 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
12369 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
12370 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
12371 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
12372 }
12373 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
12374 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12375 NDR_PULL_ALLOC(ndr, r->out.sids);
12376 }
12377 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
12378 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
12379 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
12380 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
12381 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12382 NDR_PULL_ALLOC(ndr, r->out.count);
12383 }
12384 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
12385 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
12386 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
12387 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
12388 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12389 }
12390 return NDR_ERR_SUCCESS;
12391 }
12392
12393 _PUBLIC_ void ndr_print_lsa_LookupNames4(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames4 *r)
/* [<][>][^][v][top][bottom][index][help] */
12394 {
12395 uint32_t cntr_names_0;
12396 ndr_print_struct(ndr, name, "lsa_LookupNames4");
12397 ndr->depth++;
12398 if (flags & NDR_SET_VALUES) {
12399 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12400 }
12401 if (flags & NDR_IN) {
12402 ndr_print_struct(ndr, "in", "lsa_LookupNames4");
12403 ndr->depth++;
12404 ndr_print_uint32(ndr, "num_names", r->in.num_names);
12405 ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->in.num_names);
12406 ndr->depth++;
12407 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
12408 char *idx_0=NULL;
12409 if (asprintf(&idx_0, "[%d]", cntr_names_0) != -1) {
12410 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
12411 free(idx_0);
12412 }
12413 }
12414 ndr->depth--;
12415 ndr_print_ptr(ndr, "sids", r->in.sids);
12416 ndr->depth++;
12417 ndr_print_lsa_TransSidArray3(ndr, "sids", r->in.sids);
12418 ndr->depth--;
12419 ndr_print_lsa_LookupNamesLevel(ndr, "level", r->in.level);
12420 ndr_print_ptr(ndr, "count", r->in.count);
12421 ndr->depth++;
12422 ndr_print_uint32(ndr, "count", *r->in.count);
12423 ndr->depth--;
12424 ndr_print_uint32(ndr, "lookup_options", r->in.lookup_options);
12425 ndr_print_uint32(ndr, "client_revision", r->in.client_revision);
12426 ndr->depth--;
12427 }
12428 if (flags & NDR_OUT) {
12429 ndr_print_struct(ndr, "out", "lsa_LookupNames4");
12430 ndr->depth++;
12431 ndr_print_ptr(ndr, "domains", r->out.domains);
12432 ndr->depth++;
12433 ndr_print_ptr(ndr, "domains", *r->out.domains);
12434 ndr->depth++;
12435 if (*r->out.domains) {
12436 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
12437 }
12438 ndr->depth--;
12439 ndr->depth--;
12440 ndr_print_ptr(ndr, "sids", r->out.sids);
12441 ndr->depth++;
12442 ndr_print_lsa_TransSidArray3(ndr, "sids", r->out.sids);
12443 ndr->depth--;
12444 ndr_print_ptr(ndr, "count", r->out.count);
12445 ndr->depth++;
12446 ndr_print_uint32(ndr, "count", *r->out.count);
12447 ndr->depth--;
12448 ndr_print_NTSTATUS(ndr, "result", r->out.result);
12449 ndr->depth--;
12450 }
12451 ndr->depth--;
12452 }
12453
12454 static enum ndr_err_code ndr_push_lsa_LSAROPENPOLICYSCE(struct ndr_push *ndr, int flags, const struct lsa_LSAROPENPOLICYSCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12455 {
12456 if (flags & NDR_IN) {
12457 }
12458 if (flags & NDR_OUT) {
12459 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12460 }
12461 return NDR_ERR_SUCCESS;
12462 }
12463
12464 static enum ndr_err_code ndr_pull_lsa_LSAROPENPOLICYSCE(struct ndr_pull *ndr, int flags, struct lsa_LSAROPENPOLICYSCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12465 {
12466 if (flags & NDR_IN) {
12467 }
12468 if (flags & NDR_OUT) {
12469 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12470 }
12471 return NDR_ERR_SUCCESS;
12472 }
12473
12474 _PUBLIC_ void ndr_print_lsa_LSAROPENPOLICYSCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSAROPENPOLICYSCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12475 {
12476 ndr_print_struct(ndr, name, "lsa_LSAROPENPOLICYSCE");
12477 ndr->depth++;
12478 if (flags & NDR_SET_VALUES) {
12479 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12480 }
12481 if (flags & NDR_IN) {
12482 ndr_print_struct(ndr, "in", "lsa_LSAROPENPOLICYSCE");
12483 ndr->depth++;
12484 ndr->depth--;
12485 }
12486 if (flags & NDR_OUT) {
12487 ndr_print_struct(ndr, "out", "lsa_LSAROPENPOLICYSCE");
12488 ndr->depth++;
12489 ndr_print_NTSTATUS(ndr, "result", r->out.result);
12490 ndr->depth--;
12491 }
12492 ndr->depth--;
12493 }
12494
12495 static enum ndr_err_code ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_push *ndr, int flags, const struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12496 {
12497 if (flags & NDR_IN) {
12498 }
12499 if (flags & NDR_OUT) {
12500 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12501 }
12502 return NDR_ERR_SUCCESS;
12503 }
12504
12505 static enum ndr_err_code ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_pull *ndr, int flags, struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12506 {
12507 if (flags & NDR_IN) {
12508 }
12509 if (flags & NDR_OUT) {
12510 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12511 }
12512 return NDR_ERR_SUCCESS;
12513 }
12514
12515 _PUBLIC_ void ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12516 {
12517 ndr_print_struct(ndr, name, "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
12518 ndr->depth++;
12519 if (flags & NDR_SET_VALUES) {
12520 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12521 }
12522 if (flags & NDR_IN) {
12523 ndr_print_struct(ndr, "in", "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
12524 ndr->depth++;
12525 ndr->depth--;
12526 }
12527 if (flags & NDR_OUT) {
12528 ndr_print_struct(ndr, "out", "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
12529 ndr->depth++;
12530 ndr_print_NTSTATUS(ndr, "result", r->out.result);
12531 ndr->depth--;
12532 }
12533 ndr->depth--;
12534 }
12535
12536 static enum ndr_err_code ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_push *ndr, int flags, const struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12537 {
12538 if (flags & NDR_IN) {
12539 }
12540 if (flags & NDR_OUT) {
12541 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12542 }
12543 return NDR_ERR_SUCCESS;
12544 }
12545
12546 static enum ndr_err_code ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_pull *ndr, int flags, struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12547 {
12548 if (flags & NDR_IN) {
12549 }
12550 if (flags & NDR_OUT) {
12551 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12552 }
12553 return NDR_ERR_SUCCESS;
12554 }
12555
12556 _PUBLIC_ void ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
/* [<][>][^][v][top][bottom][index][help] */
12557 {
12558 ndr_print_struct(ndr, name, "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
12559 ndr->depth++;
12560 if (flags & NDR_SET_VALUES) {
12561 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12562 }
12563 if (flags & NDR_IN) {
12564 ndr_print_struct(ndr, "in", "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
12565 ndr->depth++;
12566 ndr->depth--;
12567 }
12568 if (flags & NDR_OUT) {
12569 ndr_print_struct(ndr, "out", "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
12570 ndr->depth++;
12571 ndr_print_NTSTATUS(ndr, "result", r->out.result);
12572 ndr->depth--;
12573 }
12574 ndr->depth--;
12575 }
12576
12577 static enum ndr_err_code ndr_push_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARADTREPORTSECURITYEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
12578 {
12579 if (flags & NDR_IN) {
12580 }
12581 if (flags & NDR_OUT) {
12582 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12583 }
12584 return NDR_ERR_SUCCESS;
12585 }
12586
12587 static enum ndr_err_code ndr_pull_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARADTREPORTSECURITYEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
12588 {
12589 if (flags & NDR_IN) {
12590 }
12591 if (flags & NDR_OUT) {
12592 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12593 }
12594 return NDR_ERR_SUCCESS;
12595 }
12596
12597 _PUBLIC_ void ndr_print_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTREPORTSECURITYEVENT *r)
/* [<][>][^][v][top][bottom][index][help] */
12598 {
12599 ndr_print_struct(ndr, name, "lsa_LSARADTREPORTSECURITYEVENT");
12600 ndr->depth++;
12601 if (flags & NDR_SET_VALUES) {
12602 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12603 }
12604 if (flags & NDR_IN) {
12605 ndr_print_struct(ndr, "in", "lsa_LSARADTREPORTSECURITYEVENT");
12606 ndr->depth++;
12607 ndr->depth--;
12608 }
12609 if (flags & NDR_OUT) {
12610 ndr_print_struct(ndr, "out", "lsa_LSARADTREPORTSECURITYEVENT");
12611 ndr->depth++;
12612 ndr_print_NTSTATUS(ndr, "result", r->out.result);
12613 ndr->depth--;
12614 }
12615 ndr->depth--;
12616 }
12617
12618 static const struct ndr_interface_call lsarpc_calls[] = {
12619 {
12620 "lsa_Close",
12621 sizeof(struct lsa_Close),
12622 (ndr_push_flags_fn_t) ndr_push_lsa_Close,
12623 (ndr_pull_flags_fn_t) ndr_pull_lsa_Close,
12624 (ndr_print_function_t) ndr_print_lsa_Close,
12625 false,
12626 },
12627 {
12628 "lsa_Delete",
12629 sizeof(struct lsa_Delete),
12630 (ndr_push_flags_fn_t) ndr_push_lsa_Delete,
12631 (ndr_pull_flags_fn_t) ndr_pull_lsa_Delete,
12632 (ndr_print_function_t) ndr_print_lsa_Delete,
12633 false,
12634 },
12635 {
12636 "lsa_EnumPrivs",
12637 sizeof(struct lsa_EnumPrivs),
12638 (ndr_push_flags_fn_t) ndr_push_lsa_EnumPrivs,
12639 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumPrivs,
12640 (ndr_print_function_t) ndr_print_lsa_EnumPrivs,
12641 false,
12642 },
12643 {
12644 "lsa_QuerySecurity",
12645 sizeof(struct lsa_QuerySecurity),
12646 (ndr_push_flags_fn_t) ndr_push_lsa_QuerySecurity,
12647 (ndr_pull_flags_fn_t) ndr_pull_lsa_QuerySecurity,
12648 (ndr_print_function_t) ndr_print_lsa_QuerySecurity,
12649 false,
12650 },
12651 {
12652 "lsa_SetSecObj",
12653 sizeof(struct lsa_SetSecObj),
12654 (ndr_push_flags_fn_t) ndr_push_lsa_SetSecObj,
12655 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSecObj,
12656 (ndr_print_function_t) ndr_print_lsa_SetSecObj,
12657 false,
12658 },
12659 {
12660 "lsa_ChangePassword",
12661 sizeof(struct lsa_ChangePassword),
12662 (ndr_push_flags_fn_t) ndr_push_lsa_ChangePassword,
12663 (ndr_pull_flags_fn_t) ndr_pull_lsa_ChangePassword,
12664 (ndr_print_function_t) ndr_print_lsa_ChangePassword,
12665 false,
12666 },
12667 {
12668 "lsa_OpenPolicy",
12669 sizeof(struct lsa_OpenPolicy),
12670 (ndr_push_flags_fn_t) ndr_push_lsa_OpenPolicy,
12671 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenPolicy,
12672 (ndr_print_function_t) ndr_print_lsa_OpenPolicy,
12673 false,
12674 },
12675 {
12676 "lsa_QueryInfoPolicy",
12677 sizeof(struct lsa_QueryInfoPolicy),
12678 (ndr_push_flags_fn_t) ndr_push_lsa_QueryInfoPolicy,
12679 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryInfoPolicy,
12680 (ndr_print_function_t) ndr_print_lsa_QueryInfoPolicy,
12681 false,
12682 },
12683 {
12684 "lsa_SetInfoPolicy",
12685 sizeof(struct lsa_SetInfoPolicy),
12686 (ndr_push_flags_fn_t) ndr_push_lsa_SetInfoPolicy,
12687 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInfoPolicy,
12688 (ndr_print_function_t) ndr_print_lsa_SetInfoPolicy,
12689 false,
12690 },
12691 {
12692 "lsa_ClearAuditLog",
12693 sizeof(struct lsa_ClearAuditLog),
12694 (ndr_push_flags_fn_t) ndr_push_lsa_ClearAuditLog,
12695 (ndr_pull_flags_fn_t) ndr_pull_lsa_ClearAuditLog,
12696 (ndr_print_function_t) ndr_print_lsa_ClearAuditLog,
12697 false,
12698 },
12699 {
12700 "lsa_CreateAccount",
12701 sizeof(struct lsa_CreateAccount),
12702 (ndr_push_flags_fn_t) ndr_push_lsa_CreateAccount,
12703 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateAccount,
12704 (ndr_print_function_t) ndr_print_lsa_CreateAccount,
12705 false,
12706 },
12707 {
12708 "lsa_EnumAccounts",
12709 sizeof(struct lsa_EnumAccounts),
12710 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccounts,
12711 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccounts,
12712 (ndr_print_function_t) ndr_print_lsa_EnumAccounts,
12713 false,
12714 },
12715 {
12716 "lsa_CreateTrustedDomain",
12717 sizeof(struct lsa_CreateTrustedDomain),
12718 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomain,
12719 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomain,
12720 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomain,
12721 false,
12722 },
12723 {
12724 "lsa_EnumTrustDom",
12725 sizeof(struct lsa_EnumTrustDom),
12726 (ndr_push_flags_fn_t) ndr_push_lsa_EnumTrustDom,
12727 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumTrustDom,
12728 (ndr_print_function_t) ndr_print_lsa_EnumTrustDom,
12729 false,
12730 },
12731 {
12732 "lsa_LookupNames",
12733 sizeof(struct lsa_LookupNames),
12734 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames,
12735 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames,
12736 (ndr_print_function_t) ndr_print_lsa_LookupNames,
12737 false,
12738 },
12739 {
12740 "lsa_LookupSids",
12741 sizeof(struct lsa_LookupSids),
12742 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids,
12743 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids,
12744 (ndr_print_function_t) ndr_print_lsa_LookupSids,
12745 false,
12746 },
12747 {
12748 "lsa_CreateSecret",
12749 sizeof(struct lsa_CreateSecret),
12750 (ndr_push_flags_fn_t) ndr_push_lsa_CreateSecret,
12751 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateSecret,
12752 (ndr_print_function_t) ndr_print_lsa_CreateSecret,
12753 false,
12754 },
12755 {
12756 "lsa_OpenAccount",
12757 sizeof(struct lsa_OpenAccount),
12758 (ndr_push_flags_fn_t) ndr_push_lsa_OpenAccount,
12759 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenAccount,
12760 (ndr_print_function_t) ndr_print_lsa_OpenAccount,
12761 false,
12762 },
12763 {
12764 "lsa_EnumPrivsAccount",
12765 sizeof(struct lsa_EnumPrivsAccount),
12766 (ndr_push_flags_fn_t) ndr_push_lsa_EnumPrivsAccount,
12767 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumPrivsAccount,
12768 (ndr_print_function_t) ndr_print_lsa_EnumPrivsAccount,
12769 false,
12770 },
12771 {
12772 "lsa_AddPrivilegesToAccount",
12773 sizeof(struct lsa_AddPrivilegesToAccount),
12774 (ndr_push_flags_fn_t) ndr_push_lsa_AddPrivilegesToAccount,
12775 (ndr_pull_flags_fn_t) ndr_pull_lsa_AddPrivilegesToAccount,
12776 (ndr_print_function_t) ndr_print_lsa_AddPrivilegesToAccount,
12777 false,
12778 },
12779 {
12780 "lsa_RemovePrivilegesFromAccount",
12781 sizeof(struct lsa_RemovePrivilegesFromAccount),
12782 (ndr_push_flags_fn_t) ndr_push_lsa_RemovePrivilegesFromAccount,
12783 (ndr_pull_flags_fn_t) ndr_pull_lsa_RemovePrivilegesFromAccount,
12784 (ndr_print_function_t) ndr_print_lsa_RemovePrivilegesFromAccount,
12785 false,
12786 },
12787 {
12788 "lsa_GetQuotasForAccount",
12789 sizeof(struct lsa_GetQuotasForAccount),
12790 (ndr_push_flags_fn_t) ndr_push_lsa_GetQuotasForAccount,
12791 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetQuotasForAccount,
12792 (ndr_print_function_t) ndr_print_lsa_GetQuotasForAccount,
12793 false,
12794 },
12795 {
12796 "lsa_SetQuotasForAccount",
12797 sizeof(struct lsa_SetQuotasForAccount),
12798 (ndr_push_flags_fn_t) ndr_push_lsa_SetQuotasForAccount,
12799 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetQuotasForAccount,
12800 (ndr_print_function_t) ndr_print_lsa_SetQuotasForAccount,
12801 false,
12802 },
12803 {
12804 "lsa_GetSystemAccessAccount",
12805 sizeof(struct lsa_GetSystemAccessAccount),
12806 (ndr_push_flags_fn_t) ndr_push_lsa_GetSystemAccessAccount,
12807 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetSystemAccessAccount,
12808 (ndr_print_function_t) ndr_print_lsa_GetSystemAccessAccount,
12809 false,
12810 },
12811 {
12812 "lsa_SetSystemAccessAccount",
12813 sizeof(struct lsa_SetSystemAccessAccount),
12814 (ndr_push_flags_fn_t) ndr_push_lsa_SetSystemAccessAccount,
12815 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSystemAccessAccount,
12816 (ndr_print_function_t) ndr_print_lsa_SetSystemAccessAccount,
12817 false,
12818 },
12819 {
12820 "lsa_OpenTrustedDomain",
12821 sizeof(struct lsa_OpenTrustedDomain),
12822 (ndr_push_flags_fn_t) ndr_push_lsa_OpenTrustedDomain,
12823 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenTrustedDomain,
12824 (ndr_print_function_t) ndr_print_lsa_OpenTrustedDomain,
12825 false,
12826 },
12827 {
12828 "lsa_QueryTrustedDomainInfo",
12829 sizeof(struct lsa_QueryTrustedDomainInfo),
12830 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfo,
12831 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfo,
12832 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfo,
12833 false,
12834 },
12835 {
12836 "lsa_SetInformationTrustedDomain",
12837 sizeof(struct lsa_SetInformationTrustedDomain),
12838 (ndr_push_flags_fn_t) ndr_push_lsa_SetInformationTrustedDomain,
12839 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInformationTrustedDomain,
12840 (ndr_print_function_t) ndr_print_lsa_SetInformationTrustedDomain,
12841 false,
12842 },
12843 {
12844 "lsa_OpenSecret",
12845 sizeof(struct lsa_OpenSecret),
12846 (ndr_push_flags_fn_t) ndr_push_lsa_OpenSecret,
12847 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenSecret,
12848 (ndr_print_function_t) ndr_print_lsa_OpenSecret,
12849 false,
12850 },
12851 {
12852 "lsa_SetSecret",
12853 sizeof(struct lsa_SetSecret),
12854 (ndr_push_flags_fn_t) ndr_push_lsa_SetSecret,
12855 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSecret,
12856 (ndr_print_function_t) ndr_print_lsa_SetSecret,
12857 false,
12858 },
12859 {
12860 "lsa_QuerySecret",
12861 sizeof(struct lsa_QuerySecret),
12862 (ndr_push_flags_fn_t) ndr_push_lsa_QuerySecret,
12863 (ndr_pull_flags_fn_t) ndr_pull_lsa_QuerySecret,
12864 (ndr_print_function_t) ndr_print_lsa_QuerySecret,
12865 false,
12866 },
12867 {
12868 "lsa_LookupPrivValue",
12869 sizeof(struct lsa_LookupPrivValue),
12870 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivValue,
12871 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivValue,
12872 (ndr_print_function_t) ndr_print_lsa_LookupPrivValue,
12873 false,
12874 },
12875 {
12876 "lsa_LookupPrivName",
12877 sizeof(struct lsa_LookupPrivName),
12878 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivName,
12879 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivName,
12880 (ndr_print_function_t) ndr_print_lsa_LookupPrivName,
12881 false,
12882 },
12883 {
12884 "lsa_LookupPrivDisplayName",
12885 sizeof(struct lsa_LookupPrivDisplayName),
12886 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivDisplayName,
12887 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivDisplayName,
12888 (ndr_print_function_t) ndr_print_lsa_LookupPrivDisplayName,
12889 false,
12890 },
12891 {
12892 "lsa_DeleteObject",
12893 sizeof(struct lsa_DeleteObject),
12894 (ndr_push_flags_fn_t) ndr_push_lsa_DeleteObject,
12895 (ndr_pull_flags_fn_t) ndr_pull_lsa_DeleteObject,
12896 (ndr_print_function_t) ndr_print_lsa_DeleteObject,
12897 false,
12898 },
12899 {
12900 "lsa_EnumAccountsWithUserRight",
12901 sizeof(struct lsa_EnumAccountsWithUserRight),
12902 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccountsWithUserRight,
12903 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccountsWithUserRight,
12904 (ndr_print_function_t) ndr_print_lsa_EnumAccountsWithUserRight,
12905 false,
12906 },
12907 {
12908 "lsa_EnumAccountRights",
12909 sizeof(struct lsa_EnumAccountRights),
12910 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccountRights,
12911 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccountRights,
12912 (ndr_print_function_t) ndr_print_lsa_EnumAccountRights,
12913 false,
12914 },
12915 {
12916 "lsa_AddAccountRights",
12917 sizeof(struct lsa_AddAccountRights),
12918 (ndr_push_flags_fn_t) ndr_push_lsa_AddAccountRights,
12919 (ndr_pull_flags_fn_t) ndr_pull_lsa_AddAccountRights,
12920 (ndr_print_function_t) ndr_print_lsa_AddAccountRights,
12921 false,
12922 },
12923 {
12924 "lsa_RemoveAccountRights",
12925 sizeof(struct lsa_RemoveAccountRights),
12926 (ndr_push_flags_fn_t) ndr_push_lsa_RemoveAccountRights,
12927 (ndr_pull_flags_fn_t) ndr_pull_lsa_RemoveAccountRights,
12928 (ndr_print_function_t) ndr_print_lsa_RemoveAccountRights,
12929 false,
12930 },
12931 {
12932 "lsa_QueryTrustedDomainInfoBySid",
12933 sizeof(struct lsa_QueryTrustedDomainInfoBySid),
12934 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfoBySid,
12935 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfoBySid,
12936 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfoBySid,
12937 false,
12938 },
12939 {
12940 "lsa_SetTrustedDomainInfo",
12941 sizeof(struct lsa_SetTrustedDomainInfo),
12942 (ndr_push_flags_fn_t) ndr_push_lsa_SetTrustedDomainInfo,
12943 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetTrustedDomainInfo,
12944 (ndr_print_function_t) ndr_print_lsa_SetTrustedDomainInfo,
12945 false,
12946 },
12947 {
12948 "lsa_DeleteTrustedDomain",
12949 sizeof(struct lsa_DeleteTrustedDomain),
12950 (ndr_push_flags_fn_t) ndr_push_lsa_DeleteTrustedDomain,
12951 (ndr_pull_flags_fn_t) ndr_pull_lsa_DeleteTrustedDomain,
12952 (ndr_print_function_t) ndr_print_lsa_DeleteTrustedDomain,
12953 false,
12954 },
12955 {
12956 "lsa_StorePrivateData",
12957 sizeof(struct lsa_StorePrivateData),
12958 (ndr_push_flags_fn_t) ndr_push_lsa_StorePrivateData,
12959 (ndr_pull_flags_fn_t) ndr_pull_lsa_StorePrivateData,
12960 (ndr_print_function_t) ndr_print_lsa_StorePrivateData,
12961 false,
12962 },
12963 {
12964 "lsa_RetrievePrivateData",
12965 sizeof(struct lsa_RetrievePrivateData),
12966 (ndr_push_flags_fn_t) ndr_push_lsa_RetrievePrivateData,
12967 (ndr_pull_flags_fn_t) ndr_pull_lsa_RetrievePrivateData,
12968 (ndr_print_function_t) ndr_print_lsa_RetrievePrivateData,
12969 false,
12970 },
12971 {
12972 "lsa_OpenPolicy2",
12973 sizeof(struct lsa_OpenPolicy2),
12974 (ndr_push_flags_fn_t) ndr_push_lsa_OpenPolicy2,
12975 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenPolicy2,
12976 (ndr_print_function_t) ndr_print_lsa_OpenPolicy2,
12977 false,
12978 },
12979 {
12980 "lsa_GetUserName",
12981 sizeof(struct lsa_GetUserName),
12982 (ndr_push_flags_fn_t) ndr_push_lsa_GetUserName,
12983 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetUserName,
12984 (ndr_print_function_t) ndr_print_lsa_GetUserName,
12985 false,
12986 },
12987 {
12988 "lsa_QueryInfoPolicy2",
12989 sizeof(struct lsa_QueryInfoPolicy2),
12990 (ndr_push_flags_fn_t) ndr_push_lsa_QueryInfoPolicy2,
12991 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryInfoPolicy2,
12992 (ndr_print_function_t) ndr_print_lsa_QueryInfoPolicy2,
12993 false,
12994 },
12995 {
12996 "lsa_SetInfoPolicy2",
12997 sizeof(struct lsa_SetInfoPolicy2),
12998 (ndr_push_flags_fn_t) ndr_push_lsa_SetInfoPolicy2,
12999 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInfoPolicy2,
13000 (ndr_print_function_t) ndr_print_lsa_SetInfoPolicy2,
13001 false,
13002 },
13003 {
13004 "lsa_QueryTrustedDomainInfoByName",
13005 sizeof(struct lsa_QueryTrustedDomainInfoByName),
13006 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfoByName,
13007 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfoByName,
13008 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfoByName,
13009 false,
13010 },
13011 {
13012 "lsa_SetTrustedDomainInfoByName",
13013 sizeof(struct lsa_SetTrustedDomainInfoByName),
13014 (ndr_push_flags_fn_t) ndr_push_lsa_SetTrustedDomainInfoByName,
13015 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetTrustedDomainInfoByName,
13016 (ndr_print_function_t) ndr_print_lsa_SetTrustedDomainInfoByName,
13017 false,
13018 },
13019 {
13020 "lsa_EnumTrustedDomainsEx",
13021 sizeof(struct lsa_EnumTrustedDomainsEx),
13022 (ndr_push_flags_fn_t) ndr_push_lsa_EnumTrustedDomainsEx,
13023 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumTrustedDomainsEx,
13024 (ndr_print_function_t) ndr_print_lsa_EnumTrustedDomainsEx,
13025 false,
13026 },
13027 {
13028 "lsa_CreateTrustedDomainEx",
13029 sizeof(struct lsa_CreateTrustedDomainEx),
13030 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomainEx,
13031 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomainEx,
13032 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomainEx,
13033 false,
13034 },
13035 {
13036 "lsa_CloseTrustedDomainEx",
13037 sizeof(struct lsa_CloseTrustedDomainEx),
13038 (ndr_push_flags_fn_t) ndr_push_lsa_CloseTrustedDomainEx,
13039 (ndr_pull_flags_fn_t) ndr_pull_lsa_CloseTrustedDomainEx,
13040 (ndr_print_function_t) ndr_print_lsa_CloseTrustedDomainEx,
13041 false,
13042 },
13043 {
13044 "lsa_QueryDomainInformationPolicy",
13045 sizeof(struct lsa_QueryDomainInformationPolicy),
13046 (ndr_push_flags_fn_t) ndr_push_lsa_QueryDomainInformationPolicy,
13047 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryDomainInformationPolicy,
13048 (ndr_print_function_t) ndr_print_lsa_QueryDomainInformationPolicy,
13049 false,
13050 },
13051 {
13052 "lsa_SetDomainInformationPolicy",
13053 sizeof(struct lsa_SetDomainInformationPolicy),
13054 (ndr_push_flags_fn_t) ndr_push_lsa_SetDomainInformationPolicy,
13055 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetDomainInformationPolicy,
13056 (ndr_print_function_t) ndr_print_lsa_SetDomainInformationPolicy,
13057 false,
13058 },
13059 {
13060 "lsa_OpenTrustedDomainByName",
13061 sizeof(struct lsa_OpenTrustedDomainByName),
13062 (ndr_push_flags_fn_t) ndr_push_lsa_OpenTrustedDomainByName,
13063 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenTrustedDomainByName,
13064 (ndr_print_function_t) ndr_print_lsa_OpenTrustedDomainByName,
13065 false,
13066 },
13067 {
13068 "lsa_TestCall",
13069 sizeof(struct lsa_TestCall),
13070 (ndr_push_flags_fn_t) ndr_push_lsa_TestCall,
13071 (ndr_pull_flags_fn_t) ndr_pull_lsa_TestCall,
13072 (ndr_print_function_t) ndr_print_lsa_TestCall,
13073 false,
13074 },
13075 {
13076 "lsa_LookupSids2",
13077 sizeof(struct lsa_LookupSids2),
13078 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids2,
13079 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids2,
13080 (ndr_print_function_t) ndr_print_lsa_LookupSids2,
13081 false,
13082 },
13083 {
13084 "lsa_LookupNames2",
13085 sizeof(struct lsa_LookupNames2),
13086 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames2,
13087 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames2,
13088 (ndr_print_function_t) ndr_print_lsa_LookupNames2,
13089 false,
13090 },
13091 {
13092 "lsa_CreateTrustedDomainEx2",
13093 sizeof(struct lsa_CreateTrustedDomainEx2),
13094 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomainEx2,
13095 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomainEx2,
13096 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomainEx2,
13097 false,
13098 },
13099 {
13100 "lsa_CREDRWRITE",
13101 sizeof(struct lsa_CREDRWRITE),
13102 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRWRITE,
13103 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRWRITE,
13104 (ndr_print_function_t) ndr_print_lsa_CREDRWRITE,
13105 false,
13106 },
13107 {
13108 "lsa_CREDRREAD",
13109 sizeof(struct lsa_CREDRREAD),
13110 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRREAD,
13111 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRREAD,
13112 (ndr_print_function_t) ndr_print_lsa_CREDRREAD,
13113 false,
13114 },
13115 {
13116 "lsa_CREDRENUMERATE",
13117 sizeof(struct lsa_CREDRENUMERATE),
13118 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRENUMERATE,
13119 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRENUMERATE,
13120 (ndr_print_function_t) ndr_print_lsa_CREDRENUMERATE,
13121 false,
13122 },
13123 {
13124 "lsa_CREDRWRITEDOMAINCREDENTIALS",
13125 sizeof(struct lsa_CREDRWRITEDOMAINCREDENTIALS),
13126 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS,
13127 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS,
13128 (ndr_print_function_t) ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS,
13129 false,
13130 },
13131 {
13132 "lsa_CREDRREADDOMAINCREDENTIALS",
13133 sizeof(struct lsa_CREDRREADDOMAINCREDENTIALS),
13134 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRREADDOMAINCREDENTIALS,
13135 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS,
13136 (ndr_print_function_t) ndr_print_lsa_CREDRREADDOMAINCREDENTIALS,
13137 false,
13138 },
13139 {
13140 "lsa_CREDRDELETE",
13141 sizeof(struct lsa_CREDRDELETE),
13142 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRDELETE,
13143 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRDELETE,
13144 (ndr_print_function_t) ndr_print_lsa_CREDRDELETE,
13145 false,
13146 },
13147 {
13148 "lsa_CREDRGETTARGETINFO",
13149 sizeof(struct lsa_CREDRGETTARGETINFO),
13150 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRGETTARGETINFO,
13151 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRGETTARGETINFO,
13152 (ndr_print_function_t) ndr_print_lsa_CREDRGETTARGETINFO,
13153 false,
13154 },
13155 {
13156 "lsa_CREDRPROFILELOADED",
13157 sizeof(struct lsa_CREDRPROFILELOADED),
13158 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRPROFILELOADED,
13159 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRPROFILELOADED,
13160 (ndr_print_function_t) ndr_print_lsa_CREDRPROFILELOADED,
13161 false,
13162 },
13163 {
13164 "lsa_LookupNames3",
13165 sizeof(struct lsa_LookupNames3),
13166 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames3,
13167 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames3,
13168 (ndr_print_function_t) ndr_print_lsa_LookupNames3,
13169 false,
13170 },
13171 {
13172 "lsa_CREDRGETSESSIONTYPES",
13173 sizeof(struct lsa_CREDRGETSESSIONTYPES),
13174 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRGETSESSIONTYPES,
13175 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRGETSESSIONTYPES,
13176 (ndr_print_function_t) ndr_print_lsa_CREDRGETSESSIONTYPES,
13177 false,
13178 },
13179 {
13180 "lsa_LSARREGISTERAUDITEVENT",
13181 sizeof(struct lsa_LSARREGISTERAUDITEVENT),
13182 (ndr_push_flags_fn_t) ndr_push_lsa_LSARREGISTERAUDITEVENT,
13183 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARREGISTERAUDITEVENT,
13184 (ndr_print_function_t) ndr_print_lsa_LSARREGISTERAUDITEVENT,
13185 false,
13186 },
13187 {
13188 "lsa_LSARGENAUDITEVENT",
13189 sizeof(struct lsa_LSARGENAUDITEVENT),
13190 (ndr_push_flags_fn_t) ndr_push_lsa_LSARGENAUDITEVENT,
13191 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARGENAUDITEVENT,
13192 (ndr_print_function_t) ndr_print_lsa_LSARGENAUDITEVENT,
13193 false,
13194 },
13195 {
13196 "lsa_LSARUNREGISTERAUDITEVENT",
13197 sizeof(struct lsa_LSARUNREGISTERAUDITEVENT),
13198 (ndr_push_flags_fn_t) ndr_push_lsa_LSARUNREGISTERAUDITEVENT,
13199 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARUNREGISTERAUDITEVENT,
13200 (ndr_print_function_t) ndr_print_lsa_LSARUNREGISTERAUDITEVENT,
13201 false,
13202 },
13203 {
13204 "lsa_lsaRQueryForestTrustInformation",
13205 sizeof(struct lsa_lsaRQueryForestTrustInformation),
13206 (ndr_push_flags_fn_t) ndr_push_lsa_lsaRQueryForestTrustInformation,
13207 (ndr_pull_flags_fn_t) ndr_pull_lsa_lsaRQueryForestTrustInformation,
13208 (ndr_print_function_t) ndr_print_lsa_lsaRQueryForestTrustInformation,
13209 false,
13210 },
13211 {
13212 "lsa_LSARSETFORESTTRUSTINFORMATION",
13213 sizeof(struct lsa_LSARSETFORESTTRUSTINFORMATION),
13214 (ndr_push_flags_fn_t) ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION,
13215 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION,
13216 (ndr_print_function_t) ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION,
13217 false,
13218 },
13219 {
13220 "lsa_CREDRRENAME",
13221 sizeof(struct lsa_CREDRRENAME),
13222 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRRENAME,
13223 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRRENAME,
13224 (ndr_print_function_t) ndr_print_lsa_CREDRRENAME,
13225 false,
13226 },
13227 {
13228 "lsa_LookupSids3",
13229 sizeof(struct lsa_LookupSids3),
13230 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids3,
13231 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids3,
13232 (ndr_print_function_t) ndr_print_lsa_LookupSids3,
13233 false,
13234 },
13235 {
13236 "lsa_LookupNames4",
13237 sizeof(struct lsa_LookupNames4),
13238 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames4,
13239 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames4,
13240 (ndr_print_function_t) ndr_print_lsa_LookupNames4,
13241 false,
13242 },
13243 {
13244 "lsa_LSAROPENPOLICYSCE",
13245 sizeof(struct lsa_LSAROPENPOLICYSCE),
13246 (ndr_push_flags_fn_t) ndr_push_lsa_LSAROPENPOLICYSCE,
13247 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSAROPENPOLICYSCE,
13248 (ndr_print_function_t) ndr_print_lsa_LSAROPENPOLICYSCE,
13249 false,
13250 },
13251 {
13252 "lsa_LSARADTREGISTERSECURITYEVENTSOURCE",
13253 sizeof(struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE),
13254 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
13255 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
13256 (ndr_print_function_t) ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
13257 false,
13258 },
13259 {
13260 "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE",
13261 sizeof(struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE),
13262 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
13263 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
13264 (ndr_print_function_t) ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
13265 false,
13266 },
13267 {
13268 "lsa_LSARADTREPORTSECURITYEVENT",
13269 sizeof(struct lsa_LSARADTREPORTSECURITYEVENT),
13270 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTREPORTSECURITYEVENT,
13271 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTREPORTSECURITYEVENT,
13272 (ndr_print_function_t) ndr_print_lsa_LSARADTREPORTSECURITYEVENT,
13273 false,
13274 },
13275 { NULL, 0, NULL, NULL, NULL, false }
13276 };
13277
13278 static const char * const lsarpc_endpoint_strings[] = {
13279 "ncacn_np:[\\pipe\\lsarpc]",
13280 "ncacn_np:[\\pipe\\netlogon]",
13281 "ncacn_np:[\\pipe\\lsass]",
13282 "ncacn_ip_tcp:",
13283 "ncalrpc:",
13284 };
13285
13286 static const struct ndr_interface_string_array lsarpc_endpoints = {
13287 .count = 5,
13288 .names = lsarpc_endpoint_strings
13289 };
13290
13291 static const char * const lsarpc_authservice_strings[] = {
13292 "host",
13293 };
13294
13295 static const struct ndr_interface_string_array lsarpc_authservices = {
13296 .count = 1,
13297 .names = lsarpc_authservice_strings
13298 };
13299
13300
13301 const struct ndr_interface_table ndr_table_lsarpc = {
13302 .name = "lsarpc",
13303 .syntax_id = {
13304 {0x12345778,0x1234,0xabcd,{0xef,0x00},{0x01,0x23,0x45,0x67,0x89,0xab}},
13305 NDR_LSARPC_VERSION
13306 },
13307 .helpstring = NDR_LSARPC_HELPSTRING,
13308 .num_calls = 82,
13309 .calls = lsarpc_calls,
13310 .endpoints = &lsarpc_endpoints,
13311 .authservices = &lsarpc_authservices
13312 };
13313