|
|
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
/* File created by MIDL compiler version 6.00.0361 */ /* Compiler settings for lsarpc.idl, lsasrv.acf:
Oicf, W1, Zp8, env=Win32 (32b run) protocol : dce , ms_ext, c_ext, oldnames, robust error checks: allocation ref bounds_check enum stub_data , no_format_optimization VC __declspec() decoration level: __declspec(uuid()), __declspec(selectany), __declspec(novtable) DECLSPEC_UUID(), MIDL_INTERFACE() */ //@@MIDL_FILE_HEADING( )
#pragma warning( disable: 4049 ) /* more than 64k source lines */
/* verify that the <rpcndr.h> version is high enough to compile this file*/ #ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include "rpc.h"
#include "rpcndr.h"
#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__
#ifndef __lsarpc_h__
#define __lsarpc_h__
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif
/* Forward Declarations */
/* header files for imported files */ #include "lsaimp.h"
#ifdef __cplusplus
extern "C"{ #endif
void * __RPC_USER MIDL_user_allocate(size_t); void __RPC_USER MIDL_user_free( void * );
#ifndef __lsarpc_INTERFACE_DEFINED__
#define __lsarpc_INTERFACE_DEFINED__
/* interface lsarpc */ /* [implicit_handle][strict_context_handle][unique][ms_union][version][uuid] */
#define LSA_LOOKUP_REVISION_1 0x1
#define LSA_LOOKUP_REVISION_2 0x2
#define LSA_LOOKUP_REVISION_LATEST LSA_LOOKUP_REVISION_2
#define LSA_CLIENT_PRE_NT5 0x1
#define LSA_CLIENT_NT5 0x2
#define LSA_CLIENT_LATEST 0x2
typedef /* [handle] */ LPWSTR PLSAPR_SERVER_NAME;
typedef /* [handle] */ LPWSTR *PPLSAPR_SERVER_NAME;
typedef /* [context_handle] */ PVOID LSAPR_HANDLE;
typedef LSAPR_HANDLE *PLSAPR_HANDLE;
#pragma warning(disable:4200)
typedef struct _LSAPR_SID { UCHAR Revision; UCHAR SubAuthorityCount; SID_IDENTIFIER_AUTHORITY IdentifierAuthority; /* [size_is] */ ULONG SubAuthority[ 1 ]; } LSAPR_SID;
typedef struct _LSAPR_SID *PLSAPR_SID;
typedef struct _LSAPR_SID **PPLSAPR_SID;
#pragma warning(default:4200)
typedef struct _LSAPR_SID_INFORMATION { PLSAPR_SID Sid; } LSAPR_SID_INFORMATION;
typedef struct _LSAPR_SID_INFORMATION *PLSAPR_SID_INFORMATION;
#define LSA_MAXIMUM_LOOKUP_SIDS_COUNT 0x5000
typedef struct _LSAPR_SID_ENUM_BUFFER { /* [range] */ ULONG Entries; /* [size_is] */ PLSAPR_SID_INFORMATION SidInfo; } LSAPR_SID_ENUM_BUFFER;
typedef struct _LSAPR_SID_ENUM_BUFFER *PLSAPR_SID_ENUM_BUFFER;
typedef struct _LSAPR_ACCOUNT_INFORMATION { PLSAPR_SID Sid; } LSAPR_ACCOUNT_INFORMATION;
typedef struct _LSAPR_ACCOUNT_INFORMATION *PLSAPR_ACCOUNT_INFORMATION;
typedef struct _LSAPR_ACCOUNT_ENUM_BUFFER { ULONG EntriesRead; /* [size_is] */ PLSAPR_ACCOUNT_INFORMATION Information; } LSAPR_ACCOUNT_ENUM_BUFFER;
typedef struct _LSAPR_ACCOUNT_ENUM_BUFFER *PLSAPR_ACCOUNT_ENUM_BUFFER;
typedef struct _LSAPR_UNICODE_STRING { USHORT Length; USHORT MaximumLength; /* [length_is][size_is] */ PWSTR Buffer; } LSAPR_UNICODE_STRING;
typedef struct _LSAPR_UNICODE_STRING *PLSAPR_UNICODE_STRING;
typedef struct _LSAPR_STRING { USHORT Length; USHORT MaximumLength; /* [size_is] */ PCHAR Buffer; } LSAPR_STRING;
typedef struct _LSAPR_STRING *PLSAPR_STRING;
typedef struct _LSAPR_STRING LSAPR_ANSI_STRING;
typedef struct _LSAPR_STRING *PLSAPR_ANSI_STRING;
#pragma warning(disable:4200)
typedef struct _LSAPR_ACL { UCHAR AclRevision; UCHAR Sbz1; USHORT AclSize; /* [size_is] */ UCHAR Dummy1[ 1 ]; } LSAPR_ACL;
typedef struct _LSAPR_ACL *PLSAPR_ACL;
#pragma warning(default:4200)
typedef struct _LSAPR_SECURITY_DESCRIPTOR { UCHAR Revision; UCHAR Sbz1; SECURITY_DESCRIPTOR_CONTROL Control; PLSAPR_SID Owner; PLSAPR_SID Group; PLSAPR_ACL Sacl; PLSAPR_ACL Dacl; } LSAPR_SECURITY_DESCRIPTOR;
typedef struct _LSAPR_SECURITY_DESCRIPTOR *PLSAPR_SECURITY_DESCRIPTOR;
typedef struct _LSAPR_SR_SECURITY_DESCRIPTOR { /* [range] */ ULONG Length; /* [size_is] */ PUCHAR SecurityDescriptor; } LSAPR_SR_SECURITY_DESCRIPTOR;
typedef struct _LSAPR_SR_SECURITY_DESCRIPTOR *PLSAPR_SR_SECURITY_DESCRIPTOR;
typedef struct _LSAPR_LUID_AND_ATTRIBUTES { OLD_LARGE_INTEGER Luid; ULONG Attributes; } LSAPR_LUID_AND_ATTRIBUTES;
typedef struct _LSAPR_LUID_AND_ATTRIBUTES *PLSAPR_LUID_AND_ATTRIBUTES;
#pragma warning(disable:4200)
typedef struct _LSAPR_PRIVILEGE_SET { /* [range] */ ULONG PrivilegeCount; ULONG Control; /* [size_is] */ LSAPR_LUID_AND_ATTRIBUTES Privilege[ 1 ]; } LSAPR_PRIVILEGE_SET;
typedef struct _LSAPR_PRIVILEGE_SET *PLSAPR_PRIVILEGE_SET;
typedef struct _LSAPR_PRIVILEGE_SET **PPLSAPR_PRIVILEGE_SET;
#pragma warning(default:4200)
typedef struct _LSAPR_POLICY_PRIVILEGE_DEF { LSAPR_UNICODE_STRING Name; LUID LocalValue; } LSAPR_POLICY_PRIVILEGE_DEF;
typedef struct _LSAPR_POLICY_PRIVILEGE_DEF *PLSAPR_POLICY_PRIVILEGE_DEF;
typedef struct _LSAPR_PRIVILEGE_ENUM_BUFFER { ULONG Entries; /* [size_is] */ PLSAPR_POLICY_PRIVILEGE_DEF Privileges; } LSAPR_PRIVILEGE_ENUM_BUFFER;
typedef struct _LSAPR_PRIVILEGE_ENUM_BUFFER *PLSAPR_PRIVILEGE_ENUM_BUFFER;
typedef struct _LSAPR_OBJECT_ATTRIBUTES { ULONG Length; PUCHAR RootDirectory; PSTRING ObjectName; ULONG Attributes; PLSAPR_SECURITY_DESCRIPTOR SecurityDescriptor; PSECURITY_QUALITY_OF_SERVICE SecurityQualityOfService; } LSAPR_OBJECT_ATTRIBUTES;
typedef struct _LSAPR_OBJECT_ATTRIBUTES *PLSAPR_OBJECT_ATTRIBUTES;
typedef struct _LSAPR_CR_CLEAR_VALUE { ULONG Length; ULONG MaximumLength; /* [length_is][size_is] */ PUCHAR Buffer; } LSAPR_CR_CLEAR_VALUE;
typedef struct _LSAPR_CR_CLEAR_VALUE *PLSAPR_CR_CLEAR_VALUE;
typedef struct _LSAPR_CR_CIPHER_VALUE { /* [range] */ ULONG Length; /* [range] */ ULONG MaximumLength; /* [length_is][size_is] */ PUCHAR Buffer; } LSAPR_CR_CIPHER_VALUE;
typedef /* [allocate] */ struct _LSAPR_CR_CIPHER_VALUE *PLSAPR_CR_CIPHER_VALUE;
typedef struct _LSAPR_TRUST_INFORMATION { LSAPR_UNICODE_STRING Name; PLSAPR_SID Sid; } LSAPR_TRUST_INFORMATION;
typedef struct _LSAPR_TRUST_INFORMATION *PLSAPR_TRUST_INFORMATION;
typedef struct _LSAPR_TRUST_INFORMATION_EX { LSAPR_UNICODE_STRING DomainName; LSAPR_UNICODE_STRING FlatName; PLSAPR_SID Sid; BOOLEAN DomainNamesDiffer; ULONG TrustAttributes; } LSAPR_TRUST_INFORMATION_EX;
typedef struct _LSAPR_TRUST_INFORMATION_EX *PLSAPR_TRUST_INFORMATION_EX;
typedef struct _LSAPR_TRUSTED_ENUM_BUFFER { ULONG EntriesRead; /* [size_is] */ PLSAPR_TRUST_INFORMATION Information; } LSAPR_TRUSTED_ENUM_BUFFER;
typedef struct _LSAPR_TRUSTED_ENUM_BUFFER *PLSAPR_TRUSTED_ENUM_BUFFER;
typedef struct _LSAPR_REFERENCED_DOMAIN_LIST { ULONG Entries; /* [size_is] */ PLSAPR_TRUST_INFORMATION Domains; ULONG MaxEntries; } LSAPR_REFERENCED_DOMAIN_LIST;
typedef struct _LSAPR_REFERENCED_DOMAIN_LIST *PLSAPR_REFERENCED_DOMAIN_LIST;
#define LSA_LOOKUP_SID_FOUND_BY_HISTORY 0x00000001
#define LSA_LOOKUP_SID_XFOREST_REF 0x00000002
typedef struct _LSAPR_TRANSLATED_SID_EX { SID_NAME_USE Use; ULONG RelativeId; LONG DomainIndex; ULONG Flags; } LSAPR_TRANSLATED_SID_EX;
typedef struct _LSAPR_TRANSLATED_SID_EX *PLSAPR_TRANSLATED_SID_EX;
typedef struct _LSAPR_TRANSLATED_SID_EX2 { SID_NAME_USE Use; PLSAPR_SID Sid; LONG DomainIndex; ULONG Flags; } LSAPR_TRANSLATED_SID_EX2;
typedef struct _LSAPR_TRANSLATED_SID_EX2 *PLSAPR_TRANSLATED_SID_EX2;
#define LSA_MAXIMUM_LOOKUP_NAMES_COUNT 1000
typedef struct _LSAPR_TRANSLATED_SIDS { /* [range] */ ULONG Entries; /* [size_is] */ PLSA_TRANSLATED_SID Sids; } LSAPR_TRANSLATED_SIDS;
typedef struct _LSAPR_TRANSLATED_SIDS *PLSAPR_TRANSLATED_SIDS;
typedef struct _LSAPR_TRANSLATED_SIDS_EX { /* [range] */ ULONG Entries; /* [size_is] */ PLSAPR_TRANSLATED_SID_EX Sids; } LSAPR_TRANSLATED_SIDS_EX;
typedef struct _LSAPR_TRANSLATED_SIDS_EX *PLSAPR_TRANSLATED_SIDS_EX;
typedef struct _LSAPR_TRANSLATED_SIDS_EX2 { /* [range] */ ULONG Entries; /* [size_is] */ PLSAPR_TRANSLATED_SID_EX2 Sids; } LSAPR_TRANSLATED_SIDS_EX2;
typedef struct _LSAPR_TRANSLATED_SIDS_EX2 *PLSAPR_TRANSLATED_SIDS_EX2;
typedef struct _LSAPR_TRANSLATED_NAME { SID_NAME_USE Use; LSAPR_UNICODE_STRING Name; LONG DomainIndex; } LSAPR_TRANSLATED_NAME;
typedef struct _LSAPR_TRANSLATED_NAME *PLSAPR_TRANSLATED_NAME;
#define LSA_LOOKUP_NAME_NOT_SAM_ACCOUNT_NAME 0x00000001
#define LSA_LOOKUP_NAME_XFOREST_REF 0x00000002
typedef struct _LSAPR_TRANSLATED_NAME_EX { SID_NAME_USE Use; LSAPR_UNICODE_STRING Name; LONG DomainIndex; ULONG Flags; } LSAPR_TRANSLATED_NAME_EX;
typedef struct _LSAPR_TRANSLATED_NAME_EX *PLSAPR_TRANSLATED_NAME_EX;
typedef struct _LSAPR_TRANSLATED_NAMES { /* [range] */ ULONG Entries; /* [size_is] */ PLSAPR_TRANSLATED_NAME Names; } LSAPR_TRANSLATED_NAMES;
typedef struct _LSAPR_TRANSLATED_NAMES *PLSAPR_TRANSLATED_NAMES;
typedef struct _LSAPR_TRANSLATED_NAMES_EX { /* [range] */ ULONG Entries; /* [size_is] */ PLSAPR_TRANSLATED_NAME_EX Names; } LSAPR_TRANSLATED_NAMES_EX;
typedef struct _LSAPR_TRANSLATED_NAMES_EX *PLSAPR_TRANSLATED_NAMES_EX;
typedef struct _LSAPR_POLICY_ACCOUNT_DOM_INFO { LSAPR_UNICODE_STRING DomainName; PLSAPR_SID DomainSid; } LSAPR_POLICY_ACCOUNT_DOM_INFO;
typedef struct _LSAPR_POLICY_ACCOUNT_DOM_INFO *PLSAPR_POLICY_ACCOUNT_DOM_INFO;
typedef struct _LSAPR_POLICY_PRIMARY_DOM_INFO { LSAPR_UNICODE_STRING Name; PLSAPR_SID Sid; } LSAPR_POLICY_PRIMARY_DOM_INFO;
typedef struct _LSAPR_POLICY_PRIMARY_DOM_INFO *PLSAPR_POLICY_PRIMARY_DOM_INFO;
typedef struct _LSAPR_POLICY_DNS_DOMAIN_INFO { LSAPR_UNICODE_STRING Name; LSAPR_UNICODE_STRING DnsDomainName; LSAPR_UNICODE_STRING DnsForestName; GUID DomainGuid; PLSAPR_SID Sid; } LSAPR_POLICY_DNS_DOMAIN_INFO;
typedef struct _LSAPR_POLICY_DNS_DOMAIN_INFO *PLSAPR_POLICY_DNS_DOMAIN_INFO;
typedef struct _LSAPR_POLICY_PD_ACCOUNT_INFO { LSAPR_UNICODE_STRING Name; } LSAPR_POLICY_PD_ACCOUNT_INFO;
typedef struct _LSAPR_POLICY_PD_ACCOUNT_INFO *PLSAPR_POLICY_PD_ACCOUNT_INFO;
typedef struct _LSAPR_POLICY_REPLICA_SRCE_INFO { LSAPR_UNICODE_STRING ReplicaSource; LSAPR_UNICODE_STRING ReplicaAccountName; } LSAPR_POLICY_REPLICA_SRCE_INFO;
typedef struct _LSAPR_POLICY_REPLICA_SRCE_INFO *PLSAPR_POLICY_REPLICA_SRCE_INFO;
typedef struct _LSAPR_POLICY_AUDIT_EVENTS_INFO { BOOLEAN AuditingMode; /* [size_is] */ PPOLICY_AUDIT_EVENT_OPTIONS EventAuditingOptions; /* [range] */ ULONG MaximumAuditEventCount; } LSAPR_POLICY_AUDIT_EVENTS_INFO;
typedef struct _LSAPR_POLICY_AUDIT_EVENTS_INFO *PLSAPR_POLICY_AUDIT_EVENTS_INFO;
typedef /* [switch_type] */ union _LSAPR_POLICY_INFORMATION { /* [case()] */ POLICY_AUDIT_LOG_INFO PolicyAuditLogInfo; /* [case()] */ LSAPR_POLICY_AUDIT_EVENTS_INFO PolicyAuditEventsInfo; /* [case()] */ LSAPR_POLICY_PRIMARY_DOM_INFO PolicyPrimaryDomainInfo; /* [case()] */ LSAPR_POLICY_ACCOUNT_DOM_INFO PolicyAccountDomainInfo; /* [case()] */ LSAPR_POLICY_PD_ACCOUNT_INFO PolicyPdAccountInfo; /* [case()] */ POLICY_LSA_SERVER_ROLE_INFO PolicyServerRoleInfo; /* [case()] */ LSAPR_POLICY_REPLICA_SRCE_INFO PolicyReplicaSourceInfo; /* [case()] */ POLICY_DEFAULT_QUOTA_INFO PolicyDefaultQuotaInfo; /* [case()] */ POLICY_MODIFICATION_INFO PolicyModificationInfo; /* [case()] */ POLICY_AUDIT_FULL_SET_INFO PolicyAuditFullSetInfo; /* [case()] */ POLICY_AUDIT_FULL_QUERY_INFO PolicyAuditFullQueryInfo; /* [case()] */ LSAPR_POLICY_DNS_DOMAIN_INFO PolicyDnsDomainInfo; /* [case()] */ LSAPR_POLICY_DNS_DOMAIN_INFO PolicyDnsDomainInfoInt; } LSAPR_POLICY_INFORMATION;
typedef LSAPR_POLICY_INFORMATION *PLSAPR_POLICY_INFORMATION;
typedef struct _LSAPR_POLICY_DOMAIN_EFS_INFO { ULONG InfoLength; /* [size_is] */ PUCHAR EfsBlob; } LSAPR_POLICY_DOMAIN_EFS_INFO;
typedef struct _LSAPR_POLICY_DOMAIN_EFS_INFO *PLSAPR_POLICY_DOMAIN_EFS_INFO;
typedef /* [switch_type] */ union _LSAPR_POLICY_DOMAIN_INFORMATION { /* [case()] */ LSAPR_POLICY_DOMAIN_EFS_INFO PolicyDomainEfsInfo; /* [case()] */ POLICY_DOMAIN_KERBEROS_TICKET_INFO PolicyDomainKerbTicketInfo; } LSAPR_POLICY_DOMAIN_INFORMATION;
typedef LSAPR_POLICY_DOMAIN_INFORMATION *PLSAPR_POLICY_DOMAIN_INFORMATION;
typedef struct _LSAPR_TRUSTED_DOMAIN_NAME_INFO { LSAPR_UNICODE_STRING Name; } LSAPR_TRUSTED_DOMAIN_NAME_INFO;
typedef struct _LSAPR_TRUSTED_DOMAIN_NAME_INFO *PLSAPR_TRUSTED_DOMAIN_NAME_INFO;
typedef struct _LSAPR_TRUSTED_CONTROLLERS_INFO { /* [range] */ ULONG Entries; /* [size_is] */ PLSAPR_UNICODE_STRING Names; } LSAPR_TRUSTED_CONTROLLERS_INFO;
typedef struct _LSAPR_TRUSTED_CONTROLLERS_INFO *PLSAPR_TRUSTED_CONTROLLERS_INFO;
typedef struct _LSAPR_TRUSTED_PASSWORD_INFO { PLSAPR_CR_CIPHER_VALUE Password; PLSAPR_CR_CIPHER_VALUE OldPassword; } LSAPR_TRUSTED_PASSWORD_INFO;
typedef struct _LSAPR_TRUSTED_PASSWORD_INFO *PLSAPR_TRUSTED_PASSWORD_INFO;
typedef struct _LSAPR_TRUSTED_DOMAIN_INFORMATION_EX { LSAPR_UNICODE_STRING Name; LSAPR_UNICODE_STRING FlatName; PLSAPR_SID Sid; ULONG TrustDirection; ULONG TrustType; ULONG TrustAttributes; } LSAPR_TRUSTED_DOMAIN_INFORMATION_EX;
typedef struct _LSAPR_TRUSTED_DOMAIN_INFORMATION_EX *PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX;
typedef struct _LSAPR_AUTH_INFORMATION { LARGE_INTEGER LastUpdateTime; ULONG AuthType; /* [range] */ ULONG AuthInfoLength; /* [size_is] */ PUCHAR AuthInfo; } LSAPR_AUTH_INFORMATION;
typedef struct _LSAPR_AUTH_INFORMATION *PLSAPR_AUTH_INFORMATION;
typedef struct _LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION { ULONG IncomingAuthInfos; PLSAPR_AUTH_INFORMATION IncomingAuthenticationInformation; PLSAPR_AUTH_INFORMATION IncomingPreviousAuthenticationInformation; ULONG OutgoingAuthInfos; PLSAPR_AUTH_INFORMATION OutgoingAuthenticationInformation; PLSAPR_AUTH_INFORMATION OutgoingPreviousAuthenticationInformation; } LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION;
typedef struct _LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION *PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION;
typedef struct _LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION { LSAPR_TRUSTED_DOMAIN_INFORMATION_EX Information; TRUSTED_POSIX_OFFSET_INFO PosixOffset; LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION AuthInformation; } LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION;
typedef struct _LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION *PLSAPR_TRUSTED_DOMAIN_FULL_INFORMATION;
typedef LSAPR_TRUST_INFORMATION LSAPR_TRUSTED_DOMAIN_INFORMATION_BASIC;
typedef PLSAPR_TRUST_INFORMATION PLSAPR_TRUSTED_DOMAIN_INFORMATION_BASIC;
typedef struct _LSAPR_TRUSTED_DOMAIN_AUTH_BLOB { /* [range] */ ULONG AuthSize; /* [size_is] */ PUCHAR AuthBlob; } LSAPR_TRUSTED_DOMAIN_AUTH_BLOB;
typedef struct _LSAPR_TRUSTED_DOMAIN_AUTH_BLOB *PLSAPR_TRUSTED_DOMAIN_AUTH_BLOB;
typedef struct _LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL { LSAPR_TRUSTED_DOMAIN_AUTH_BLOB AuthBlob; } LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL;
typedef struct _LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL *PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL;
typedef struct _LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION_INTERNAL { LSAPR_TRUSTED_DOMAIN_INFORMATION_EX Information; TRUSTED_POSIX_OFFSET_INFO PosixOffset; LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL AuthInformation; } LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION_INTERNAL;
typedef struct _LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION_INTERNAL *PLSAPR_TRUSTED_DOMAIN_FULL_INFORMATION_INTERNAL;
typedef struct _LSAPR_TRUSTED_DOMAIN_INFORMATION_EX2 { LSAPR_UNICODE_STRING Name; LSAPR_UNICODE_STRING FlatName; PLSAPR_SID Sid; ULONG TrustDirection; ULONG TrustType; ULONG TrustAttributes; ULONG ForestTrustLength; /* [size_is] */ PUCHAR ForestTrustInfo; } LSAPR_TRUSTED_DOMAIN_INFORMATION_EX2;
typedef struct _LSAPR_TRUSTED_DOMAIN_INFORMATION_EX2 *PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX2;
typedef struct _LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION2 { LSAPR_TRUSTED_DOMAIN_INFORMATION_EX2 Information; TRUSTED_POSIX_OFFSET_INFO PosixOffset; LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION AuthInformation; } LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION2;
typedef struct _LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION2 *PLSAPR_TRUSTED_DOMAIN_FULL_INFORMATION2;
typedef /* [switch_type] */ union _LSAPR_TRUSTED_DOMAIN_INFO { /* [case()] */ LSAPR_TRUSTED_DOMAIN_NAME_INFO TrustedDomainNameInfo; /* [case()] */ LSAPR_TRUSTED_CONTROLLERS_INFO TrustedControllersInfo; /* [case()] */ TRUSTED_POSIX_OFFSET_INFO TrustedPosixOffsetInfo; /* [case()] */ LSAPR_TRUSTED_PASSWORD_INFO TrustedPasswordInfo; /* [case()] */ LSAPR_TRUSTED_DOMAIN_INFORMATION_BASIC TrustedDomainInfoBasic; /* [case()] */ LSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInfoEx; /* [case()] */ LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION TrustedAuthInfo; /* [case()] */ LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION TrustedFullInfo; /* [case()] */ LSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL TrustedAuthInfoInternal; /* [case()] */ LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION_INTERNAL TrustedFullInfoInternal; /* [case()] */ LSAPR_TRUSTED_DOMAIN_INFORMATION_EX2 TrustedDomainInfoEx2; /* [case()] */ LSAPR_TRUSTED_DOMAIN_FULL_INFORMATION2 TrustedFullInfo2; } LSAPR_TRUSTED_DOMAIN_INFO;
typedef LSAPR_TRUSTED_DOMAIN_INFO *PLSAPR_TRUSTED_DOMAIN_INFO;
typedef PLSAPR_UNICODE_STRING PLSAPR_UNICODE_STRING_ARRAY;
typedef struct _LSAPR_USER_RIGHT_SET { /* [range] */ ULONG Entries; /* [size_is] */ PLSAPR_UNICODE_STRING_ARRAY UserRights; } LSAPR_USER_RIGHT_SET;
typedef struct _LSAPR_USER_RIGHT_SET *PLSAPR_USER_RIGHT_SET;
typedef struct _LSAPR_TRUSTED_ENUM_BUFFER_EX { ULONG EntriesRead; /* [size_is] */ PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX EnumerationBuffer; } LSAPR_TRUSTED_ENUM_BUFFER_EX;
typedef struct _LSAPR_TRUSTED_ENUM_BUFFER_EX *PLSAPR_TRUSTED_ENUM_BUFFER_EX;
typedef struct _LSAPR_TEST_INTERNAL_PARAMETER_BLOB { /* [range] */ ULONG Size; /* [size_is] */ PUCHAR Argument; } LSAPR_TEST_INTERNAL_PARAMETER_BLOB;
typedef struct _LSAPR_TEST_INTERNAL_PARAMETER_BLOB *PLSAPR_TEST_INTERNAL_PARAMETER_BLOB;
typedef struct _LSAPR_TEST_INTERNAL_ARG_LIST { /* [range] */ ULONG Items; /* [size_is] */ PLSAPR_TEST_INTERNAL_PARAMETER_BLOB Arg; } LSAPR_TEST_INTERNAL_ARG_LIST;
typedef struct _LSAPR_TEST_INTERNAL_ARG_LIST *PLSAPR_TEST_INTERNAL_ARG_LIST;
typedef enum _LSAPR_TEST_INTERNAL_ROUTINES { LsaTest_IEnumerateSecrets = 0, LsaTest_IQueryDomainOrgInfo = LsaTest_IEnumerateSecrets + 1, LsaTest_ISetTrustedDomainAuthBlobs = LsaTest_IQueryDomainOrgInfo + 1, LsaTest_IUpgradeRegistryToDs = LsaTest_ISetTrustedDomainAuthBlobs + 1, LsaTest_ISamSetDomainObjectProperties = LsaTest_IUpgradeRegistryToDs + 1, LsaTest_ISamSetDomainBuiltinGroupMembership = LsaTest_ISamSetDomainObjectProperties + 1, LsaTest_ISamSetInterdomainTrustPassword = LsaTest_ISamSetDomainBuiltinGroupMembership + 1, LsaTest_IRegisterPolicyChangeNotificationCallback = LsaTest_ISamSetInterdomainTrustPassword + 1, LsaTest_IUnregisterPolicyChangeNotificationCallback = LsaTest_IRegisterPolicyChangeNotificationCallback + 1, LsaTest_IUnregisterAllPolicyChangeNotificationCallback = LsaTest_IUnregisterPolicyChangeNotificationCallback + 1, LsaTest_IStartTransaction = LsaTest_IUnregisterAllPolicyChangeNotificationCallback + 1, LsaTest_IApplyTransaction = LsaTest_IStartTransaction + 1, LsaTest_ITrustDomFixup = LsaTest_IApplyTransaction + 1, LsaTest_ISetServerRoleForBoot = LsaTest_ITrustDomFixup + 1, LsaTest_IQueryForestTrustInfo = LsaTest_ISetServerRoleForBoot + 1, LsaTest_IBreak = LsaTest_IQueryForestTrustInfo + 1, LsaTest_IQueryTrustedDomainAuthBlobs = LsaTest_IBreak + 1, LsaTest_IQueryNt4Owf = LsaTest_IQueryTrustedDomainAuthBlobs + 1 } LSAPR_TEST_INTERNAL_ROUTINES;
/* [notify] */ NTSTATUS LsarClose( /* [out][in] */ LSAPR_HANDLE *ObjectHandle);
/* [notify] */ NTSTATUS LsarDelete( /* [in] */ LSAPR_HANDLE ObjectHandle);
/* [notify] */ NTSTATUS LsarEnumeratePrivileges( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [out][in] */ PLSA_ENUMERATION_HANDLE EnumerationContext, /* [out] */ PLSAPR_PRIVILEGE_ENUM_BUFFER EnumerationBuffer, /* [in] */ ULONG PreferedMaximumLength);
/* [notify] */ NTSTATUS LsarQuerySecurityObject( /* [in] */ LSAPR_HANDLE ObjectHandle, /* [in] */ SECURITY_INFORMATION SecurityInformation, /* [out] */ PLSAPR_SR_SECURITY_DESCRIPTOR *SecurityDescriptor);
/* [notify] */ NTSTATUS LsarSetSecurityObject( /* [in] */ LSAPR_HANDLE ObjectHandle, /* [in] */ SECURITY_INFORMATION SecurityInformation, /* [in] */ PLSAPR_SR_SECURITY_DESCRIPTOR SecurityDescriptor);
/* [notify] */ NTSTATUS LsarChangePassword( /* [in] */ PLSAPR_UNICODE_STRING ServerName, /* [in] */ PLSAPR_UNICODE_STRING DomainName, /* [in] */ PLSAPR_UNICODE_STRING AccountName, /* [in] */ PLSAPR_UNICODE_STRING OldPassword, /* [in] */ PLSAPR_UNICODE_STRING NewPassword);
/* [notify] */ NTSTATUS LsarOpenPolicy( /* [unique][in] */ PLSAPR_SERVER_NAME SystemName, /* [in] */ PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *PolicyHandle);
/* [notify] */ NTSTATUS LsarQueryInformationPolicy( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ POLICY_INFORMATION_CLASS InformationClass, /* [switch_is][out] */ PLSAPR_POLICY_INFORMATION *PolicyInformation);
/* [notify] */ NTSTATUS LsarSetInformationPolicy( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ POLICY_INFORMATION_CLASS InformationClass, /* [switch_is][in] */ PLSAPR_POLICY_INFORMATION PolicyInformation);
/* [notify] */ NTSTATUS LsarClearAuditLog( /* [in] */ LSAPR_HANDLE PolicyHandle);
/* [notify] */ NTSTATUS LsarCreateAccount( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID AccountSid, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *AccountHandle);
/* [notify] */ NTSTATUS LsarEnumerateAccounts( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [out][in] */ PLSA_ENUMERATION_HANDLE EnumerationContext, /* [out] */ PLSAPR_ACCOUNT_ENUM_BUFFER EnumerationBuffer, /* [in] */ ULONG PreferedMaximumLength);
/* [notify] */ NTSTATUS LsarCreateTrustedDomain( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_TRUST_INFORMATION TrustedDomainInformation, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *TrustedDomainHandle);
/* [notify] */ NTSTATUS LsarEnumerateTrustedDomains( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [out][in] */ PLSA_ENUMERATION_HANDLE EnumerationContext, /* [out] */ PLSAPR_TRUSTED_ENUM_BUFFER EnumerationBuffer, /* [in] */ ULONG PreferedMaximumLength);
/* [notify] */ NTSTATUS LsarLookupNames( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [range][in] */ ULONG Count, /* [size_is][in] */ PLSAPR_UNICODE_STRING Names, /* [out] */ PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, /* [out][in] */ PLSAPR_TRANSLATED_SIDS TranslatedSids, /* [in] */ LSAP_LOOKUP_LEVEL LookupLevel, /* [out][in] */ PULONG MappedCount);
/* [notify] */ NTSTATUS LsarLookupSids( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID_ENUM_BUFFER SidEnumBuffer, /* [out] */ PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, /* [out][in] */ PLSAPR_TRANSLATED_NAMES TranslatedNames, /* [in] */ LSAP_LOOKUP_LEVEL LookupLevel, /* [out][in] */ PULONG MappedCount);
/* [notify] */ NTSTATUS LsarCreateSecret( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING SecretName, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *SecretHandle);
/* [notify] */ NTSTATUS LsarOpenAccount( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID AccountSid, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *AccountHandle);
/* [notify] */ NTSTATUS LsarEnumeratePrivilegesAccount( /* [in] */ LSAPR_HANDLE AccountHandle, /* [out] */ PLSAPR_PRIVILEGE_SET *Privileges);
/* [notify] */ NTSTATUS LsarAddPrivilegesToAccount( /* [in] */ LSAPR_HANDLE AccountHandle, /* [in] */ PLSAPR_PRIVILEGE_SET Privileges);
/* [notify] */ NTSTATUS LsarRemovePrivilegesFromAccount( /* [in] */ LSAPR_HANDLE AccountHandle, /* [in] */ BOOLEAN AllPrivileges, /* [unique][in] */ PLSAPR_PRIVILEGE_SET Privileges);
/* [notify] */ NTSTATUS LsarGetQuotasForAccount( /* [in] */ LSAPR_HANDLE AccountHandle, /* [out] */ PQUOTA_LIMITS QuotaLimits);
/* [notify] */ NTSTATUS LsarSetQuotasForAccount( /* [in] */ LSAPR_HANDLE AccountHandle, /* [in] */ PQUOTA_LIMITS QuotaLimits);
/* [notify] */ NTSTATUS LsarGetSystemAccessAccount( /* [in] */ LSAPR_HANDLE AccountHandle, /* [out] */ PULONG SystemAccess);
/* [notify] */ NTSTATUS LsarSetSystemAccessAccount( /* [in] */ LSAPR_HANDLE AccountHandle, /* [in] */ ULONG SystemAccess);
/* [notify] */ NTSTATUS LsarOpenTrustedDomain( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID TrustedDomainSid, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *TrustedDomainHandle);
/* [notify] */ NTSTATUS LsarQueryInfoTrustedDomain( /* [in] */ LSAPR_HANDLE TrustedDomainHandle, /* [in] */ TRUSTED_INFORMATION_CLASS InformationClass, /* [switch_is][out] */ PLSAPR_TRUSTED_DOMAIN_INFO *TrustedDomainInformation);
/* [notify] */ NTSTATUS LsarSetInformationTrustedDomain( /* [in] */ LSAPR_HANDLE TrustedDomainHandle, /* [in] */ TRUSTED_INFORMATION_CLASS InformationClass, /* [switch_is][in] */ PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation);
/* [notify] */ NTSTATUS LsarOpenSecret( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING SecretName, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *SecretHandle);
/* [notify] */ NTSTATUS LsarSetSecret( /* [in] */ LSAPR_HANDLE SecretHandle, /* [unique][in] */ PLSAPR_CR_CIPHER_VALUE EncryptedCurrentValue, /* [unique][in] */ PLSAPR_CR_CIPHER_VALUE EncryptedOldValue);
/* [notify] */ NTSTATUS LsarQuerySecret( /* [in] */ LSAPR_HANDLE SecretHandle, /* [unique][out][in] */ PLSAPR_CR_CIPHER_VALUE *EncryptedCurrentValue, /* [unique][out][in] */ PLARGE_INTEGER CurrentValueSetTime, /* [unique][out][in] */ PLSAPR_CR_CIPHER_VALUE *EncryptedOldValue, /* [unique][out][in] */ PLARGE_INTEGER OldValueSetTime);
/* [notify] */ NTSTATUS LsarLookupPrivilegeValue( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING Name, /* [out] */ PLUID Value);
/* [notify] */ NTSTATUS LsarLookupPrivilegeName( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLUID Value, /* [out] */ PLSAPR_UNICODE_STRING *Name);
/* [notify] */ NTSTATUS LsarLookupPrivilegeDisplayName( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING Name, /* [in] */ SHORT ClientLanguage, /* [in] */ SHORT ClientSystemDefaultLanguage, /* [out] */ PLSAPR_UNICODE_STRING *DisplayName, /* [out] */ PWORD LanguageReturned);
/* [notify] */ NTSTATUS LsarDeleteObject( /* [out][in] */ LSAPR_HANDLE *ObjectHandle);
/* [notify] */ NTSTATUS LsarEnumerateAccountsWithUserRight( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [unique][in] */ PLSAPR_UNICODE_STRING UserRight, /* [out] */ PLSAPR_ACCOUNT_ENUM_BUFFER EnumerationBuffer);
/* [notify] */ NTSTATUS LsarEnumerateAccountRights( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID AccountSid, /* [out] */ PLSAPR_USER_RIGHT_SET UserRights);
/* [notify] */ NTSTATUS LsarAddAccountRights( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID AccountSid, /* [in] */ PLSAPR_USER_RIGHT_SET UserRights);
/* [notify] */ NTSTATUS LsarRemoveAccountRights( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID AccountSid, /* [in] */ BOOLEAN AllRights, /* [in] */ PLSAPR_USER_RIGHT_SET UserRights);
/* [notify] */ NTSTATUS LsarQueryTrustedDomainInfo( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID TrustedDomainSid, /* [in] */ TRUSTED_INFORMATION_CLASS InformationClass, /* [switch_is][out] */ PLSAPR_TRUSTED_DOMAIN_INFO *TrustedDomainInformation);
/* [notify] */ NTSTATUS LsarSetTrustedDomainInfo( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID TrustedDomainSid, /* [in] */ TRUSTED_INFORMATION_CLASS InformationClass, /* [switch_is][in] */ PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation);
/* [notify] */ NTSTATUS LsarDeleteTrustedDomain( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID TrustedDomainSid);
/* [notify] */ NTSTATUS LsarStorePrivateData( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING KeyName, /* [unique][in] */ PLSAPR_CR_CIPHER_VALUE EncryptedData);
/* [notify] */ NTSTATUS LsarRetrievePrivateData( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING KeyName, /* [out][in] */ PLSAPR_CR_CIPHER_VALUE *EncryptedData);
/* [notify] */ NTSTATUS LsarOpenPolicy2( /* [string][unique][in] */ PLSAPR_SERVER_NAME SystemName, /* [in] */ PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *PolicyHandle);
/* [notify] */ NTSTATUS LsarGetUserName( /* [string][unique][in] */ PLSAPR_SERVER_NAME SystemName, /* [out][in] */ PLSAPR_UNICODE_STRING *UserName, /* [unique][out][in] */ PLSAPR_UNICODE_STRING *DomainName);
/* [notify] */ NTSTATUS LsarQueryInformationPolicy2( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ POLICY_INFORMATION_CLASS InformationClass, /* [switch_is][out] */ PLSAPR_POLICY_INFORMATION *PolicyInformation);
/* [notify] */ NTSTATUS LsarSetInformationPolicy2( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ POLICY_INFORMATION_CLASS InformationClass, /* [switch_is][in] */ PLSAPR_POLICY_INFORMATION PolicyInformation);
/* [notify] */ NTSTATUS LsarQueryTrustedDomainInfoByName( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING TrustedDomainName, /* [in] */ TRUSTED_INFORMATION_CLASS InformationClass, /* [switch_is][out] */ PLSAPR_TRUSTED_DOMAIN_INFO *TrustedDomainInformation);
/* [notify] */ NTSTATUS LsarSetTrustedDomainInfoByName( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING TrustedDomainName, /* [in] */ TRUSTED_INFORMATION_CLASS InformationClass, /* [switch_is][in] */ PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation);
/* [notify] */ NTSTATUS LsarEnumerateTrustedDomainsEx( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [out][in] */ PLSA_ENUMERATION_HANDLE EnumerationContext, /* [out] */ PLSAPR_TRUSTED_ENUM_BUFFER_EX EnumerationBuffer, /* [in] */ ULONG PreferedMaximumLength);
/* [notify] */ NTSTATUS LsarCreateTrustedDomainEx( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInformation, /* [in] */ PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION AuthenticationInformation, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *TrustedDomainHandle);
/* [notify] */ NTSTATUS LsarSetPolicyReplicationHandle( /* [out][in] */ PLSAPR_HANDLE PolicyHandle);
/* [notify] */ NTSTATUS LsarQueryDomainInformationPolicy( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ POLICY_DOMAIN_INFORMATION_CLASS InformationClass, /* [switch_is][out] */ PLSAPR_POLICY_DOMAIN_INFORMATION *PolicyDomainInformation);
/* [notify] */ NTSTATUS LsarSetDomainInformationPolicy( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ POLICY_DOMAIN_INFORMATION_CLASS InformationClass, /* [switch_is][unique][in] */ PLSAPR_POLICY_DOMAIN_INFORMATION PolicyDomainInformation);
/* [notify] */ NTSTATUS LsarOpenTrustedDomainByName( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_UNICODE_STRING TrustedDomainName, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *TrustedDomainHandle);
NTSTATUS LsaITestCall( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ LSAPR_TEST_INTERNAL_ROUTINES Call, /* [in] */ PLSAPR_TEST_INTERNAL_ARG_LIST InputArgs, /* [out] */ PLSAPR_TEST_INTERNAL_ARG_LIST *OuputArgs);
NTSTATUS LsarLookupSids2( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_SID_ENUM_BUFFER SidEnumBuffer, /* [out] */ PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, /* [out][in] */ PLSAPR_TRANSLATED_NAMES_EX TranslatedNames, /* [in] */ LSAP_LOOKUP_LEVEL LookupLevel, /* [out][in] */ PULONG MappedCount, /* [in] */ ULONG LookupOptions, /* [in] */ ULONG ClientRevision);
NTSTATUS LsarLookupNames2( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [range][in] */ ULONG Count, /* [size_is][in] */ PLSAPR_UNICODE_STRING Names, /* [out] */ PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, /* [out][in] */ PLSAPR_TRANSLATED_SIDS_EX TranslatedSids, /* [in] */ LSAP_LOOKUP_LEVEL LookupLevel, /* [out][in] */ PULONG MappedCount, /* [in] */ ULONG LookupOptions, /* [in] */ ULONG ClientRevision);
NTSTATUS LsarCreateTrustedDomainEx2( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInformation, /* [in] */ PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL AuthenticationInformation, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *TrustedDomainHandle);
NTSTATUS CredrWrite( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [in] */ PENCRYPTED_CREDENTIALW Credential, /* [in] */ ULONG Flags);
NTSTATUS CredrRead( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [string][in] */ wchar_t *TargetName, /* [in] */ ULONG Type, /* [in] */ ULONG Flags, /* [out] */ PENCRYPTED_CREDENTIALW *Credential);
typedef PENCRYPTED_CREDENTIALW *PPENCRYPTED_CREDENTIALW;
typedef struct _CREDENTIAL_ARRAY { ULONG CredentialCount; /* [size_is][unique] */ PPENCRYPTED_CREDENTIALW Credentials; } CREDENTIAL_ARRAY;
typedef struct _CREDENTIAL_ARRAY *PCREDENTIAL_ARRAY;
NTSTATUS CredrEnumerate( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [string][unique][in] */ wchar_t *Filter, /* [in] */ ULONG Flags, /* [out] */ PCREDENTIAL_ARRAY CredentialArray);
NTSTATUS CredrWriteDomainCredentials( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [in] */ PCREDENTIAL_TARGET_INFORMATIONW TargetInfo, /* [in] */ PENCRYPTED_CREDENTIALW Credential, /* [in] */ ULONG Flags);
NTSTATUS CredrReadDomainCredentials( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [in] */ PCREDENTIAL_TARGET_INFORMATIONW TargetInfo, /* [in] */ ULONG Flags, /* [out] */ PCREDENTIAL_ARRAY CredentialArray);
NTSTATUS CredrDelete( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [string][in] */ wchar_t *TargetName, /* [in] */ ULONG Type, /* [in] */ ULONG Flags);
NTSTATUS CredrGetTargetInfo( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [string][in] */ wchar_t *TargetName, /* [in] */ ULONG Flags, /* [out] */ PCREDENTIAL_TARGET_INFORMATIONW *TargetInfo);
NTSTATUS CredrProfileLoaded( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName);
NTSTATUS LsarLookupNames3( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [range][in] */ ULONG Count, /* [size_is][in] */ PLSAPR_UNICODE_STRING Names, /* [out] */ PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, /* [out][in] */ PLSAPR_TRANSLATED_SIDS_EX2 TranslatedSids, /* [in] */ LSAP_LOOKUP_LEVEL LookupLevel, /* [out][in] */ PULONG MappedCount, /* [in] */ ULONG LookupOptions, /* [in] */ ULONG ClientRevision);
NTSTATUS CredrGetSessionTypes( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [range][in] */ ULONG MaximumPersistCount, /* [size_is][out] */ ULONG *MaximumPersist);
NTSTATUS LsarRegisterAuditEvent( /* [in] */ PAUTHZ_AUDIT_EVENT_TYPE_OLD pAuditEventType, /* [out] */ AUDIT_HANDLE *phAuditContext);
NTSTATUS LsarGenAuditEvent( /* [in] */ AUDIT_HANDLE hAuditContext, /* [in] */ DWORD Flags, /* [in] */ AUDIT_PARAMS *pAuditParams);
NTSTATUS LsarUnregisterAuditEvent( /* [out][in] */ AUDIT_HANDLE *phAuditContext);
NTSTATUS LsarQueryForestTrustInformation( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSA_UNICODE_STRING TrustedDomainName, /* [in] */ LSA_FOREST_TRUST_RECORD_TYPE HighestRecordType, /* [out] */ PLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo);
NTSTATUS LsarSetForestTrustInformation( /* [in] */ LSAPR_HANDLE PolicyHandle, /* [in] */ PLSA_UNICODE_STRING TrustedDomainName, /* [in] */ LSA_FOREST_TRUST_RECORD_TYPE HighestRecordType, /* [in] */ PLSA_FOREST_TRUST_INFORMATION ForestTrustInfo, /* [in] */ BOOLEAN CheckOnly, /* [out] */ PLSA_FOREST_TRUST_COLLISION_INFORMATION *CollisionInfo);
NTSTATUS CredrRename( /* [string][unique][in] */ PLSAPR_SERVER_NAME ServerName, /* [string][in] */ wchar_t *OldTargetName, /* [string][in] */ wchar_t *NewTargetName, /* [in] */ ULONG Type, /* [in] */ ULONG Flags);
NTSTATUS LsarLookupSids3( /* [in] */ handle_t RpcHandle, /* [in] */ PLSAPR_SID_ENUM_BUFFER SidEnumBuffer, /* [out] */ PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, /* [out][in] */ PLSAPR_TRANSLATED_NAMES_EX TranslatedNames, /* [in] */ LSAP_LOOKUP_LEVEL LookupLevel, /* [out][in] */ PULONG MappedCount, /* [in] */ ULONG LookupOptions, /* [in] */ ULONG ClientRevision);
NTSTATUS LsarLookupNames4( /* [in] */ handle_t RpcHandle, /* [range][in] */ ULONG Count, /* [size_is][in] */ PLSAPR_UNICODE_STRING Names, /* [out] */ PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, /* [out][in] */ PLSAPR_TRANSLATED_SIDS_EX2 TranslatedSids, /* [in] */ LSAP_LOOKUP_LEVEL LookupLevel, /* [out][in] */ PULONG MappedCount, /* [in] */ ULONG LookupOptions, /* [in] */ ULONG ClientRevision);
NTSTATUS LsarOpenPolicySce( /* [unique][in] */ PLSAPR_SERVER_NAME SystemName, /* [in] */ PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes, /* [in] */ ACCESS_MASK DesiredAccess, /* [out] */ LSAPR_HANDLE *PolicyHandle);
typedef struct _LSA_SECURITY_EVENT { DWORD dwFlags; DWORD dwCategoryId; DWORD dwAuditId; PAUDIT_PARAMS pAuditParams; } LSA_SECURITY_EVENT;
typedef struct _LSA_SECURITY_EVENT *PLSA_SECURITY_EVENT;
typedef /* [context_handle] */ PVOID SECURITY_SOURCE_HANDLE;
typedef /* [context_handle] */ PVOID *PSECURITY_SOURCE_HANDLE;
typedef /* [handle] */ LPCWSTR PSECURITY_SOURCE_NAME;
typedef /* [handle] */ LPCWSTR *PPSECURITY_SOURCE_NAME;
NTSTATUS LsarAdtRegisterSecurityEventSource( /* [in] */ DWORD dwFlags, /* [string][unique][in] */ PSECURITY_SOURCE_NAME szEventSourceName, /* [out] */ SECURITY_SOURCE_HANDLE *phSecuritySource);
NTSTATUS LsarAdtUnregisterSecurityEventSource( /* [in] */ DWORD dwFlags, /* [out][in] */ SECURITY_SOURCE_HANDLE *phSecuritySource);
NTSTATUS LsarAdtReportSecurityEvent( /* [in] */ DWORD dwFlags, /* [in] */ SECURITY_SOURCE_HANDLE hSource, /* [in] */ DWORD dwAuditId, /* [in] */ SID *pSid, /* [in] */ PAUDIT_PARAMS pParams);
extern handle_t IgnoreThisHandle;
extern RPC_IF_HANDLE lsarpc_ClientIfHandle; extern RPC_IF_HANDLE lsarpc_ServerIfHandle; #endif /* __lsarpc_INTERFACE_DEFINED__ */
/* Additional Prototypes for ALL interfaces */
handle_t __RPC_USER PAUTHZ_AUDIT_EVENT_TYPE_OLD_bind ( PAUTHZ_AUDIT_EVENT_TYPE_OLD ); void __RPC_USER PAUTHZ_AUDIT_EVENT_TYPE_OLD_unbind( PAUTHZ_AUDIT_EVENT_TYPE_OLD, handle_t ); handle_t __RPC_USER PLSAPR_SERVER_NAME_bind ( PLSAPR_SERVER_NAME ); void __RPC_USER PLSAPR_SERVER_NAME_unbind( PLSAPR_SERVER_NAME, handle_t ); handle_t __RPC_USER PSECURITY_SOURCE_NAME_bind ( PSECURITY_SOURCE_NAME ); void __RPC_USER PSECURITY_SOURCE_NAME_unbind( PSECURITY_SOURCE_NAME, handle_t );
void __RPC_USER AUDIT_HANDLE_rundown( AUDIT_HANDLE ); void __RPC_USER LSAPR_HANDLE_rundown( LSAPR_HANDLE ); void __RPC_USER SECURITY_SOURCE_HANDLE_rundown( SECURITY_SOURCE_HANDLE );
void LsarClose_notify( void);
void LsarDelete_notify( void);
void LsarEnumeratePrivileges_notify( void);
void LsarQuerySecurityObject_notify( void);
void LsarSetSecurityObject_notify( void);
void LsarChangePassword_notify( void);
void LsarOpenPolicy_notify( void);
void LsarQueryInformationPolicy_notify( void);
void LsarSetInformationPolicy_notify( void);
void LsarClearAuditLog_notify( void);
void LsarCreateAccount_notify( void);
void LsarEnumerateAccounts_notify( void);
void LsarCreateTrustedDomain_notify( void);
void LsarEnumerateTrustedDomains_notify( void);
void LsarLookupNames_notify( void);
void LsarLookupSids_notify( void);
void LsarCreateSecret_notify( void);
void LsarOpenAccount_notify( void);
void LsarEnumeratePrivilegesAccount_notify( void);
void LsarAddPrivilegesToAccount_notify( void);
void LsarRemovePrivilegesFromAccount_notify( void);
void LsarGetQuotasForAccount_notify( void);
void LsarSetQuotasForAccount_notify( void);
void LsarGetSystemAccessAccount_notify( void);
void LsarSetSystemAccessAccount_notify( void);
void LsarOpenTrustedDomain_notify( void);
void LsarQueryInfoTrustedDomain_notify( void);
void LsarSetInformationTrustedDomain_notify( void);
void LsarOpenSecret_notify( void);
void LsarSetSecret_notify( void);
void LsarQuerySecret_notify( void);
void LsarLookupPrivilegeValue_notify( void);
void LsarLookupPrivilegeName_notify( void);
void LsarLookupPrivilegeDisplayName_notify( void);
void LsarDeleteObject_notify( void);
void LsarEnumerateAccountsWithUserRight_notify( void);
void LsarEnumerateAccountRights_notify( void);
void LsarAddAccountRights_notify( void);
void LsarRemoveAccountRights_notify( void);
void LsarQueryTrustedDomainInfo_notify( void);
void LsarSetTrustedDomainInfo_notify( void);
void LsarDeleteTrustedDomain_notify( void);
void LsarStorePrivateData_notify( void);
void LsarRetrievePrivateData_notify( void);
void LsarOpenPolicy2_notify( void);
void LsarGetUserName_notify( void);
void LsarQueryInformationPolicy2_notify( void);
void LsarSetInformationPolicy2_notify( void);
void LsarQueryTrustedDomainInfoByName_notify( void);
void LsarSetTrustedDomainInfoByName_notify( void);
void LsarEnumerateTrustedDomainsEx_notify( void);
void LsarCreateTrustedDomainEx_notify( void);
void LsarSetPolicyReplicationHandle_notify( void);
void LsarQueryDomainInformationPolicy_notify( void);
void LsarSetDomainInformationPolicy_notify( void);
void LsarOpenTrustedDomainByName_notify( void);
/* end of Additional Prototypes */
#ifdef __cplusplus
} #endif
#endif
|