/******************/
/* Function: 0x06 */
typedef struct {
- uint32 len; /* ignored */
+ uint3264 len; /* ignored */
uint16 impersonation_level;
uint8 context_mode;
uint8 effective_only;
} lsa_QosInfo;
typedef struct {
- uint32 len; /* ignored */
+ uint3264 len; /* ignored */
uint8 *root_dir;
[string,charset(UTF16)] uint16 *object_name;
uint32 attributes;
[in,ref] lsa_SidArray *sids,
[out,ref] lsa_RefDomainList **domains,
[in,out,ref] lsa_TransNameArray *names,
- [in] uint16 level,
+ [in] lsa_LookupNamesLevel level,
[in,out,ref] uint32 *count
);
);
typedef [flag(NDR_PAHEX)] struct {
- uint32 length;
- uint32 size;
+ uint3264 length;
+ uint3264 size;
[size_is(size),length_is(length)] uint8 *data;
} lsa_DATA_BUF;
LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL = 10,
LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL = 11,
LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL = 12,
- LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES = 13
+ LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES = 13
} lsa_TrustDomInfoEnum;
typedef [public,bitmap32bit] bitmap {
lsa_TrustDomainInfoInfoEx2Internal info_ex2_internal;
[case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL)]
lsa_TrustDomainInfoFullInfo2Internal full_info2_internal;
- [case(LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRTYPION_TYPES)]
+ [case(LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES)]
lsa_TrustDomainInfoSupportedEncTypes enc_types;
} lsa_TrustedDomainInfo;
);
/* Function: 0x2a */
- [todo] NTSTATUS lsa_StorePrivateData();
- /* Function: 0x2b */
- [todo] NTSTATUS lsa_RetrievePrivateData();
+ NTSTATUS lsa_StorePrivateData(
+ [in] policy_handle *handle,
+ [in,ref] lsa_String *name,
+ [in,unique] lsa_DATA_BUF *val
+ );
+ /* Function: 0x2b */
+ NTSTATUS lsa_RetrievePrivateData(
+ [in] policy_handle *handle,
+ [in,ref] lsa_String *name,
+ [in,out,ref] lsa_DATA_BUF **val
+ );
/**********************/
/* Function: 0x2c */
[size_is(count)] lsa_TranslatedName2 *names;
} lsa_TransNameArray2;
+ typedef [v1_enum] enum {
+ LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES = 0x00000000,
+ LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES_LOCAL = 0x80000000
+ } lsa_LookupOptions;
+
+ typedef [v1_enum] enum {
+ LSA_CLIENT_REVISION_1 = 0x00000001,
+ LSA_CLIENT_REVISION_2 = 0x00000002
+ } lsa_ClientRevision;
+
[public] NTSTATUS lsa_LookupSids2(
[in] policy_handle *handle,
[in,ref] lsa_SidArray *sids,
[out,ref] lsa_RefDomainList **domains,
[in,out,ref] lsa_TransNameArray2 *names,
- [in] uint16 level,
+ [in] lsa_LookupNamesLevel level,
[in,out,ref] uint32 *count,
- [in] uint32 unknown1,
- [in] uint32 unknown2
+ [in] lsa_LookupOptions lookup_options,
+ [in] lsa_ClientRevision client_revision
);
/**********************/
[in,out,ref] lsa_TransSidArray2 *sids,
[in] lsa_LookupNamesLevel level,
[in,out,ref] uint32 *count,
- [in] uint32 lookup_options,
- [in] uint32 client_revision /* LSA_CLIENT_REVISION* */
+ [in] lsa_LookupOptions lookup_options,
+ [in] lsa_ClientRevision client_revision
);
/* Function 0x3b */
[in,out,ref] lsa_TransSidArray3 *sids,
[in] lsa_LookupNamesLevel level,
[in,out,ref] uint32 *count,
- [in] uint32 lookup_options,
- [in] uint32 client_revision /* LSA_CLIENT_REVISION* */
+ [in] lsa_LookupOptions lookup_options,
+ [in] lsa_ClientRevision client_revision
);
/* Function 0x45 */
/* Function 0x49 */
typedef struct {
- [range(0,131072)] uint32 length;
+ [range(0,131072)] uint3264 length;
[size_is(length)] uint8 *data;
} lsa_ForestTrustBinaryData;
[in,ref] lsa_SidArray *sids,
[out,ref] lsa_RefDomainList **domains,
[in,out,ref] lsa_TransNameArray2 *names,
- [in] uint16 level,
+ [in] lsa_LookupNamesLevel level,
[in,out,ref] uint32 *count,
- [in] uint32 unknown1,
- [in] uint32 unknown2
+ [in] lsa_LookupOptions lookup_options,
+ [in] lsa_ClientRevision client_revision
);
const int LSA_CLIENT_REVISION_NO_DNS = 0x00000001;
[in,out,ref] lsa_TransSidArray3 *sids,
[in] lsa_LookupNamesLevel level,
[in,out,ref] uint32 *count,
- [in] uint32 lookup_options,
- [in] uint32 client_revision /* LSA_CLIENT_REVISION* */
+ [in] lsa_LookupOptions lookup_options,
+ [in] lsa_ClientRevision client_revision
);
/* Function 0x4e */