summaryrefslogtreecommitdiff
path: root/librpc/idl
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2010-03-16 13:59:32 +0100
committerGünther Deschner <gd@samba.org>2010-03-16 15:12:18 +0100
commitcfa2b7b6bf5f8527585c8c9c26a6336b503a682c (patch)
treeb39fcbb132c69d31fe0af0aaf9b5511dd4c344c1 /librpc/idl
parent8c5df22ffa4bb57078f4678c60cbec6ac7ba5710 (diff)
downloadsamba-cfa2b7b6bf5f8527585c8c9c26a6336b503a682c.tar.gz
samba-cfa2b7b6bf5f8527585c8c9c26a6336b503a682c.tar.bz2
samba-cfa2b7b6bf5f8527585c8c9c26a6336b503a682c.zip
s4:idl add lsaRSetForestTrustInformation
Signed-off-by: Günther Deschner <gd@samba.org>
Diffstat (limited to 'librpc/idl')
-rw-r--r--librpc/idl/lsa.idl52
1 files changed, 50 insertions, 2 deletions
diff --git a/librpc/idl/lsa.idl b/librpc/idl/lsa.idl
index 8f91d0c82f..6c4b439b21 100644
--- a/librpc/idl/lsa.idl
+++ b/librpc/idl/lsa.idl
@@ -1311,8 +1311,56 @@ import "misc.idl", "security.idl";
[out,ref] lsa_ForestTrustInformation **forest_trust_info
);
- /* Function 0x4a */
- [todo] NTSTATUS lsa_LSARSETFORESTTRUSTINFORMATION();
+ /*****************
+ * Function 0x4a */
+
+ typedef [v1_enum] enum {
+ LSA_FOREST_TRUST_COLLISION_TDO = 0,
+ LSA_FOREST_TRUST_COLLISION_XREF = 1,
+ 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 struct {
+ uint32 index;
+ lsa_ForestTrustCollisionRecordType type;
+ [switch_is(type)] lsa_ForestTrustCollisionFlags flags;
+ lsa_String name;
+ } lsa_ForestTrustCollisionRecord;
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] lsa_ForestTrustCollisionRecord **entries;
+ } lsa_ForestTrustCollisionInfo;
+
+ [public] NTSTATUS lsa_lsaRSetForestTrustInformation(
+ [in] policy_handle *handle,
+ [in,ref] lsa_StringLarge *trusted_domain_name,
+ [in] uint16 highest_record_type,
+ [in,ref] lsa_ForestTrustInformation *forest_trust_info,
+ [in] uint8 check_only,
+ [out,ref] lsa_ForestTrustCollisionInfo **collision_info
+ );
/* Function 0x4b */
[todo] NTSTATUS lsa_CREDRRENAME();