From 51c10eba0dffe5b9efc1d1fc159a9f6982483226 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Tue, 23 Aug 2005 10:56:01 +0000 Subject: r9513: - let us parse some more replies of DsAddEntry - give some stuff a meening metze (This used to be commit 6d9b8d300829f1dcb3faee666c471c40c24c8aaa) --- source4/librpc/idl/drsuapi.idl | 36 +++++++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) (limited to 'source4') diff --git a/source4/librpc/idl/drsuapi.idl b/source4/librpc/idl/drsuapi.idl index 10170bc282..46b647db78 100644 --- a/source4/librpc/idl/drsuapi.idl +++ b/source4/librpc/idl/drsuapi.idl @@ -936,28 +936,54 @@ interface drsuapi typedef struct { uint32 unknown1; + WERROR status; uint32 unknown2; - uint32 unknown3; - } drsuapi_DsAddEntryCtr3Info1; + uint16 unknown3; + } drsuapi_DsAddEntryErrorInfoX; + + typedef [switch_type(uint32)] union { +/* [case(1)] drsuapi_DsAddEntryErrorInfo1 error1; + [case(2)] drsuapi_DsAddEntryErrorInfo2 error2; + [case(3)] drsuapi_DsAddEntryErrorInfo3 error3; +*/ [case(4)] drsuapi_DsAddEntryErrorInfoX error4; + [case(5)] drsuapi_DsAddEntryErrorInfoX error5; + [case(6)] drsuapi_DsAddEntryErrorInfoX error6; + [case(7)] drsuapi_DsAddEntryErrorInfoX error7; + } drsuapi_DsAddEntryErrorInfo; + + typedef struct { + WERROR status; + uint32 level; + [switch_is(level)] drsuapi_DsAddEntryErrorInfo *info; + } drsuapi_DsAddEntryError1; typedef [switch_type(uint32)] union { - [case(1)] drsuapi_DsAddEntryCtr3Info1 info1; - } drsuapi_DsAddEntryCtr3Info; + [case(1)] drsuapi_DsAddEntryError1 info1; + } drsuapi_DsAddEntryError; typedef struct { GUID guid; dom_sid28 sid; } drsuapi_DsReplicaObjectIdentifier2; + typedef struct { + drsuapi_DsReplicaObjectIdentifier *id; + uint32 unknown1; + drsuapi_DsAddEntryErrorInfoX error; + [range(0,10000)] uint32 count; + [size_is(count)] drsuapi_DsReplicaObjectIdentifier2 *objects; + } drsuapi_DsAddEntryCtr2; + typedef struct { drsuapi_DsReplicaObjectIdentifier *id; uint32 level; - [switch_is(level)] drsuapi_DsAddEntryCtr3Info *info; + [switch_is(level)] drsuapi_DsAddEntryError *error; [range(0,10000)] uint32 count; [size_is(count)] drsuapi_DsReplicaObjectIdentifier2 *objects; } drsuapi_DsAddEntryCtr3; typedef [switch_type(int32)] union { + [case(2)] drsuapi_DsAddEntryCtr2 ctr2; [case(3)] drsuapi_DsAddEntryCtr3 ctr3; } drsuapi_DsAddEntryCtr; -- cgit