From 1ff55500ded3a20ff5ed3fcc7249bfb593ffd2f3 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 25 Mar 2010 10:56:15 +0100 Subject: drsblobs: remove utf8string2 from ForestTrustData. Simo, it's not really worth to add a new idl type just for being able to omit the size field. The size field is part of the spec in MS-ADTS 7.1.6.9.3.1 so we should have it as well. Guenther --- librpc/idl/drsblobs.idl | 13 +++++++++---- librpc/idl/idl_types.h | 6 ------ 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/librpc/idl/drsblobs.idl b/librpc/idl/drsblobs.idl index 93c44f354f..5b10326814 100644 --- a/librpc/idl/drsblobs.idl +++ b/librpc/idl/drsblobs.idl @@ -574,11 +574,16 @@ interface drsblobs { /* MS-ADTS 7.1.6.9.3 msDS-TrustForestTrustInfo Attribute */ + typedef struct { + [value(strlen_m(string))] uint32 size; + [charset(UTF8)] uint8 string[size]; + } ForestTrustString; + typedef [flag(NDR_NOALIGN)] struct { [value(ndr_size_dom_sid0(&sid, ndr->flags))] uint32 sid_size; [subcontext(0),subcontext_size(sid_size)] dom_sid sid; - utf8string2 dns_name; - utf8string2 netbios_name; + ForestTrustString dns_name; + ForestTrustString netbios_name; } ForestTrustDataDomainInfo; typedef [flag(NDR_NOALIGN)] struct { @@ -587,8 +592,8 @@ interface drsblobs { } ForestTrustDataBinaryData; typedef [nodiscriminant] union { - [case(FOREST_TRUST_TOP_LEVEL_NAME)] utf8string2 name; - [case(FOREST_TRUST_TOP_LEVEL_NAME_EX)] utf8string2 name; + [case(FOREST_TRUST_TOP_LEVEL_NAME)] ForestTrustString name; + [case(FOREST_TRUST_TOP_LEVEL_NAME_EX)] ForestTrustString name; [case(FOREST_TRUST_DOMAIN_INFO)] ForestTrustDataDomainInfo info; [default] ForestTrustDataBinaryData data; } ForestTrustData; diff --git a/librpc/idl/idl_types.h b/librpc/idl/idl_types.h index 72165cf22e..3c6c12cd84 100644 --- a/librpc/idl/idl_types.h +++ b/librpc/idl/idl_types.h @@ -47,12 +47,6 @@ */ #define utf8string [flag(STR_UTF8|STR_NULLTERM)] string -/* - an utf8 string prefixed with [size], 32 bits - not null terminated -*/ -#define utf8string2 [flag(STR_SIZE4|STR_UTF8|STR_NOTERM)] string - /* a null terminated UCS2 string */ -- cgit