From e547588368b7454a412fb6376a6052fd1e027334 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Thu, 25 Nov 2004 11:20:09 +0000 Subject: r3956: start to decode the repsFrom and repsTo fileds but not ready metze (This used to be commit 44f168c44de908fdf38b39aae8bf10e80206410a) --- source4/librpc/idl/drsblobs.idl | 37 +++++++++++++++++++++++++++++++++++++ source4/librpc/idl/idl_types.h | 5 +++++ 2 files changed, 42 insertions(+) (limited to 'source4/librpc/idl') diff --git a/source4/librpc/idl/drsblobs.idl b/source4/librpc/idl/drsblobs.idl index 6c998968ac..20b353c1ea 100644 --- a/source4/librpc/idl/drsblobs.idl +++ b/source4/librpc/idl/drsblobs.idl @@ -83,4 +83,41 @@ interface drsblobs { void decode_replUpToDateVector( [in] replUpToDateVectorBlob blob ); + + /* + * repsFrom/repsTo + * w2k uses version 1 + * w2k3 uses version 1 + */ + typedef [flag(NDR_PAHEX)] struct { + NTTIME_1sec time1; + NTTIME_1sec time2; + uint32 unknown1[4]; + uint8 unknown2[84]; + uint32 unknown3; + uint64 usn1; + uint32 unknown4; + uint32 unknown5; + uint64 usn2; + GUID guid1; + GUID guid2; + uint32 unknown6[4]; + asclstr dns_name; + } repsFromTo1; + + typedef [nodiscriminant] union { + [case(1)] repsFromTo1 ctr1; + } repsFromTo; + + typedef [public,gensize] struct { + uint32 version; + uint32 unknown1; + [value(ndr_size_repsFromToBlob(0, r, ndr->flags))] uint32 blobsize; + uint32 unknown2; + [switch_is(version)] repsFromTo ctr; + } repsFromToBlob; + + void decode_repsFromTo( + [in] repsFromToBlob blob + ); } diff --git a/source4/librpc/idl/idl_types.h b/source4/librpc/idl/idl_types.h index 54943ce78c..9463fe0c47 100644 --- a/source4/librpc/idl/idl_types.h +++ b/source4/librpc/idl/idl_types.h @@ -48,6 +48,11 @@ */ #define ascstr2 [flag(STR_ASCII|STR_LEN4)] string +/* + an ascii string prefixed with [size], 32 bits +*/ +#define asclstr [flag(STR_ASCII|STR_SIZE4)] string + /* an ascii string prefixed with [size], 16 bits null terminated -- cgit