summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--librpc/idl/netlogon.idl10
1 files changed, 7 insertions, 3 deletions
diff --git a/librpc/idl/netlogon.idl b/librpc/idl/netlogon.idl
index f59436bb27..7b68a8b540 100644
--- a/librpc/idl/netlogon.idl
+++ b/librpc/idl/netlogon.idl
@@ -966,6 +966,12 @@ interface netlogon
NETR_CHANGELOG_FIRST_PROMOTION_OBJ = 0x0010
} netr_ChangeLogFlags;
+ typedef [nodiscriminant] union {
+ [case(NETR_CHANGELOG_SID_INCLUDED)] dom_sid object_sid;
+ [case(NETR_CHANGELOG_NAME_INCLUDED)] nstring object_name;
+ [default];
+ } netr_ChangeLogObject;
+
typedef [public] struct {
uint32 serial_number1;
uint32 serial_number2;
@@ -973,9 +979,7 @@ interface netlogon
netr_ChangeLogFlags flags;
uint8 db_index;
uint8 delta_type;
- [value(ndr_size_dom_sid0(&object_sid, ndr->flags))] uint32 sid_size;
- [subcontext(0),subcontext_size(sid_size)] dom_sid0 object_sid;
- [string,charset(UTF16)] uint16 *object_name;
+ [switch_is(flags & (NETR_CHANGELOG_SID_INCLUDED|NETR_CHANGELOG_NAME_INCLUDED))] netr_ChangeLogObject object;
} netr_ChangeLogEntry;
NTSTATUS netr_DatabaseRedo(