[todo] NTSTATUS lsa_LSARUNREGISTERAUDITEVENT();
/* Function 0x49 */
+ typedef [bitmap32bit,public] bitmap {
+ /* these apply to LSA_FOREST_TRUST_TOP_LEVEL_NAME */
+ LSA_TLN_DISABLED_NEW = 0x00000001,
+ LSA_TLN_DISABLED_ADMIN = 0x00000002,
+ LSA_TLN_DISABLED_CONFLICT = 0x00000004,
+
+ /* these apply to LSA_FOREST_TRUST_DOMAIN_INFO */
+ LSA_SID_DISABLED_ADMIN = 0x00000001,
+ LSA_SID_DISABLED_CONFLICT = 0x00000002,
+ LSA_NB_DISABLED_ADMIN = 0x00000004,
+ LSA_NB_DISABLED_CONFLICT = 0x00000008
+ } lsa_ForestTrustRecordFlags;
+
+ typedef enum {
+ LSA_FOREST_TRUST_TOP_LEVEL_NAME = 0,
+ LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX = 1,
+ LSA_FOREST_TRUST_DOMAIN_INFO = 2,
+ LSA_FOREST_TRUST_RECORD_TYPE_LAST = 3
+ } lsa_ForestTrustRecordType;
+
typedef struct {
[range(0,131072)] uint3264 length;
[size_is(length)] uint8 *data;
lsa_StringLarge netbios_domain_name;
} lsa_ForestTrustDomainInfo;
- typedef [switch_type(uint32)] union {
+ typedef [switch_type(lsa_ForestTrustRecordType)] union {
[case(LSA_FOREST_TRUST_TOP_LEVEL_NAME)] lsa_StringLarge top_level_name;
[case(LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX)] lsa_StringLarge top_level_name_ex;
[case(LSA_FOREST_TRUST_DOMAIN_INFO)] lsa_ForestTrustDomainInfo domain_info;
[default] lsa_ForestTrustBinaryData data;
} lsa_ForestTrustData;
- typedef enum {
- LSA_FOREST_TRUST_TOP_LEVEL_NAME = 0,
- LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX = 1,
- LSA_FOREST_TRUST_DOMAIN_INFO = 2,
- LSA_FOREST_TRUST_RECORD_TYPE_LAST = 3
- } lsa_ForestTrustRecordType;
-
typedef struct {
- uint32 flags;
+ lsa_ForestTrustRecordFlags flags;
lsa_ForestTrustRecordType type;
- hyper time;
+ NTTIME_hyper time;
[switch_is(type)] lsa_ForestTrustData forest_trust_data;
} lsa_ForestTrustRecord;
LSA_FOREST_TRUST_COLLISION_OTHER = 2
} lsa_ForestTrustCollisionRecordType;
- /* if type is CollisionTdo, flags can be */
- typedef [bitmap32bit] bitmap {
- LSA_TLN_DISABLED_NEW = 0x00000001,
- LSA_TLN_DISABLED_ADMIN = 0x00000002,
- LSA_TLN_DISABLED_CONFLICT = 0x00000004
- } lsa_ForestTrustCollisionTDOFlags;
-
- /* if type is CollisionXref, flags can be */
- typedef [bitmap32bit] bitmap {
- LSA_SID_DISABLED_ADMIN = 0x00000001,
- LSA_SID_DISABLED_CONFLICT = 0x00000002,
- LSA_NB_DISABLED_ADMIN = 0x00000004,
- LSA_NB_DISABLED_CONFLICT = 0x00000008
- } lsa_ForestTrustCollisionXrefFlags;
-
- typedef [nodiscriminant] union {
- [case(LSA_FOREST_TRUST_COLLISION_TDO)] lsa_ForestTrustCollisionTDOFlags flags;
- [case(LSA_FOREST_TRUST_COLLISION_XREF)] lsa_ForestTrustCollisionXrefFlags flags;
- [default] uint32 flags;
- } lsa_ForestTrustCollisionFlags;
-
typedef [public] struct {
uint32 index;
lsa_ForestTrustCollisionRecordType type;
- [switch_is(type)] lsa_ForestTrustCollisionFlags flags;
+ lsa_ForestTrustRecordFlags flags;
lsa_String name;
} lsa_ForestTrustCollisionRecord;