idl-drsblobs: mark some more reserved values as value(0)
authorAndrew Tridgell <tridge@samba.org>
Wed, 21 Oct 2009 23:36:58 +0000 (10:36 +1100)
committerAndrew Tridgell <tridge@samba.org>
Thu, 22 Oct 2009 01:47:53 +0000 (12:47 +1100)
This prevents valgrind errors when we store these blobs in a database

librpc/gen_ndr/drsblobs.h
librpc/gen_ndr/ndr_drsblobs.c
librpc/idl/drsblobs.idl

index 64f6ce8a9052c9011f0c2f41c27f4f46caf72244..57712a46f0a19619a71f169208cfa384db1708b7 100644 (file)
@@ -23,7 +23,7 @@ struct replPropertyMetaData1 {
 
 struct replPropertyMetaDataCtr1 {
        uint32_t count;
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        struct replPropertyMetaData1 *array;
 };
 
@@ -33,19 +33,19 @@ union replPropertyMetaDataCtr {
 
 struct replPropertyMetaDataBlob {
        uint32_t version;
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        union replPropertyMetaDataCtr ctr;/* [switch_is(version)] */
 }/* [public] */;
 
 struct replUpToDateVectorCtr1 {
        uint32_t count;
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        struct drsuapi_DsReplicaCursor *cursors;
 };
 
 struct replUpToDateVectorCtr2 {
        uint32_t count;
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        struct drsuapi_DsReplicaCursor2 *cursors;
 };
 
@@ -56,7 +56,7 @@ union replUpToDateVectorCtr {
 
 struct replUpToDateVectorBlob {
        uint32_t version;
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        union replUpToDateVectorCtr ctr;/* [switch_is(version)] */
 }/* [public] */;
 
@@ -75,7 +75,7 @@ struct repsFromTo1 {
        uint32_t other_info_length;/* [value(ndr_size_repsFromTo1OtherInfo(other_info,ndr->iconv_convenience,ndr->flags))] */
        uint32_t replica_flags;
        uint8_t schedule[84];
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        struct drsuapi_DsReplicaHighWaterMark highwatermark;
        struct GUID source_dsa_obj_guid;
        struct GUID source_dsa_invocation_id;
@@ -100,7 +100,7 @@ struct repsFromTo2 {
        uint32_t other_info_length;/* [value(ndr_size_repsFromTo2OtherInfo(other_info,ndr->iconv_convenience,ndr->flags))] */
        uint32_t replica_flags;
        uint8_t schedule[84];
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        struct drsuapi_DsReplicaHighWaterMark highwatermark;
        struct GUID source_dsa_obj_guid;
        struct GUID source_dsa_invocation_id;
@@ -115,7 +115,7 @@ union repsFromTo {
 
 struct repsFromToBlob {
        uint32_t version;
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        union repsFromTo ctr;/* [switch_is(version)] */
 }/* [public] */;
 
@@ -130,7 +130,7 @@ union partialAttributeSetCtr {
 
 struct partialAttributeSetBlob {
        uint32_t version;
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        union partialAttributeSetCtr ctr;/* [switch_is(version)] */
 }/* [public] */;
 
@@ -151,7 +151,7 @@ union prefixMapCtr {
 
 struct prefixMapBlob {
        enum prefixMapVersion version;
-       uint32_t reserved;
+       uint32_t reserved;/* [value(0)] */
        union prefixMapCtr ctr;/* [switch_is(version)] */
 }/* [public] */;
 
index 8a0842bce3ed5cdfddc9d977e9a4b3cf94bb5694..39c30578c51c7813cc12f2db1f23c01a69ca0d0f 100644 (file)
@@ -60,7 +60,7 @@ static enum ndr_err_code ndr_push_replPropertyMetaDataCtr1(struct ndr_push *ndr,
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 8));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
-               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                for (cntr_array_0 = 0; cntr_array_0 < r->count; cntr_array_0++) {
                        NDR_CHECK(ndr_push_replPropertyMetaData1(ndr, NDR_SCALARS, &r->array[cntr_array_0]));
                }
@@ -99,7 +99,7 @@ _PUBLIC_ void ndr_print_replPropertyMetaDataCtr1(struct ndr_print *ndr, const ch
        ndr_print_struct(ndr, name, "replPropertyMetaDataCtr1");
        ndr->depth++;
        ndr_print_uint32(ndr, "count", r->count);
-       ndr_print_uint32(ndr, "reserved", r->reserved);
+       ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
        ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
        ndr->depth++;
        for (cntr_array_0=0;cntr_array_0<r->count;cntr_array_0++) {
@@ -187,7 +187,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_replPropertyMetaDataBlob(struct ndr_push *nd
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 8));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version));
-               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->version));
                NDR_CHECK(ndr_push_replPropertyMetaDataCtr(ndr, NDR_SCALARS, &r->ctr));
                NDR_CHECK(ndr_push_trailer_align(ndr, 8));
@@ -217,7 +217,7 @@ _PUBLIC_ void ndr_print_replPropertyMetaDataBlob(struct ndr_print *ndr, const ch
        ndr_print_struct(ndr, name, "replPropertyMetaDataBlob");
        ndr->depth++;
        ndr_print_uint32(ndr, "version", r->version);
-       ndr_print_uint32(ndr, "reserved", r->reserved);
+       ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
        ndr_print_set_switch_value(ndr, &r->ctr, r->version);
        ndr_print_replPropertyMetaDataCtr(ndr, "ctr", &r->ctr);
        ndr->depth--;
@@ -229,7 +229,7 @@ static enum ndr_err_code ndr_push_replUpToDateVectorCtr1(struct ndr_push *ndr, i
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 8));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
-               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                for (cntr_cursors_0 = 0; cntr_cursors_0 < r->count; cntr_cursors_0++) {
                        NDR_CHECK(ndr_push_drsuapi_DsReplicaCursor(ndr, NDR_SCALARS, &r->cursors[cntr_cursors_0]));
                }
@@ -268,7 +268,7 @@ _PUBLIC_ void ndr_print_replUpToDateVectorCtr1(struct ndr_print *ndr, const char
        ndr_print_struct(ndr, name, "replUpToDateVectorCtr1");
        ndr->depth++;
        ndr_print_uint32(ndr, "count", r->count);
-       ndr_print_uint32(ndr, "reserved", r->reserved);
+       ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
        ndr->print(ndr, "%s: ARRAY(%d)", "cursors", (int)r->count);
        ndr->depth++;
        for (cntr_cursors_0=0;cntr_cursors_0<r->count;cntr_cursors_0++) {
@@ -288,7 +288,7 @@ static enum ndr_err_code ndr_push_replUpToDateVectorCtr2(struct ndr_push *ndr, i
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 8));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
-               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                for (cntr_cursors_0 = 0; cntr_cursors_0 < r->count; cntr_cursors_0++) {
                        NDR_CHECK(ndr_push_drsuapi_DsReplicaCursor2(ndr, NDR_SCALARS, &r->cursors[cntr_cursors_0]));
                }
@@ -327,7 +327,7 @@ _PUBLIC_ void ndr_print_replUpToDateVectorCtr2(struct ndr_print *ndr, const char
        ndr_print_struct(ndr, name, "replUpToDateVectorCtr2");
        ndr->depth++;
        ndr_print_uint32(ndr, "count", r->count);
-       ndr_print_uint32(ndr, "reserved", r->reserved);
+       ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
        ndr->print(ndr, "%s: ARRAY(%d)", "cursors", (int)r->count);
        ndr->depth++;
        for (cntr_cursors_0=0;cntr_cursors_0<r->count;cntr_cursors_0++) {
@@ -433,7 +433,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_replUpToDateVectorBlob(struct ndr_push *ndr,
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 8));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version));
-               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->version));
                NDR_CHECK(ndr_push_replUpToDateVectorCtr(ndr, NDR_SCALARS, &r->ctr));
                NDR_CHECK(ndr_push_trailer_align(ndr, 8));
@@ -463,7 +463,7 @@ _PUBLIC_ void ndr_print_replUpToDateVectorBlob(struct ndr_print *ndr, const char
        ndr_print_struct(ndr, name, "replUpToDateVectorBlob");
        ndr->depth++;
        ndr_print_uint32(ndr, "version", r->version);
-       ndr_print_uint32(ndr, "reserved", r->reserved);
+       ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
        ndr_print_set_switch_value(ndr, &r->ctr, r->version);
        ndr_print_replUpToDateVectorCtr(ndr, "ctr", &r->ctr);
        ndr->depth--;
@@ -525,7 +525,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromTo1(struct ndr_push *ndr, int ndr_fl
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_repsFromTo1OtherInfo(r->other_info, ndr->iconv_convenience, ndr->flags)));
                        NDR_CHECK(ndr_push_drsuapi_DsReplicaNeighbourFlags(ndr, NDR_SCALARS, r->replica_flags));
                        NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->schedule, 84));
-                       NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+                       NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                        NDR_CHECK(ndr_push_drsuapi_DsReplicaHighWaterMark(ndr, NDR_SCALARS, &r->highwatermark));
                        NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->source_dsa_obj_guid));
                        NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->source_dsa_invocation_id));
@@ -612,7 +612,7 @@ _PUBLIC_ void ndr_print_repsFromTo1(struct ndr_print *ndr, const char *name, con
                ndr_print_uint32(ndr, "other_info_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?ndr_size_repsFromTo1OtherInfo(r->other_info, ndr->iconv_convenience, ndr->flags):r->other_info_length);
                ndr_print_drsuapi_DsReplicaNeighbourFlags(ndr, "replica_flags", r->replica_flags);
                ndr_print_array_uint8(ndr, "schedule", r->schedule, 84);
-               ndr_print_uint32(ndr, "reserved", r->reserved);
+               ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
                ndr_print_drsuapi_DsReplicaHighWaterMark(ndr, "highwatermark", &r->highwatermark);
                ndr_print_GUID(ndr, "source_dsa_obj_guid", &r->source_dsa_obj_guid);
                ndr_print_GUID(ndr, "source_dsa_invocation_id", &r->source_dsa_invocation_id);
@@ -795,7 +795,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromTo2(struct ndr_push *ndr, int ndr_fl
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_repsFromTo2OtherInfo(r->other_info, ndr->iconv_convenience, ndr->flags)));
                        NDR_CHECK(ndr_push_drsuapi_DsReplicaNeighbourFlags(ndr, NDR_SCALARS, r->replica_flags));
                        NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->schedule, 84));
-                       NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+                       NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                        NDR_CHECK(ndr_push_drsuapi_DsReplicaHighWaterMark(ndr, NDR_SCALARS, &r->highwatermark));
                        NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->source_dsa_obj_guid));
                        NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->source_dsa_invocation_id));
@@ -884,7 +884,7 @@ _PUBLIC_ void ndr_print_repsFromTo2(struct ndr_print *ndr, const char *name, con
                ndr_print_uint32(ndr, "other_info_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?ndr_size_repsFromTo2OtherInfo(r->other_info, ndr->iconv_convenience, ndr->flags):r->other_info_length);
                ndr_print_drsuapi_DsReplicaNeighbourFlags(ndr, "replica_flags", r->replica_flags);
                ndr_print_array_uint8(ndr, "schedule", r->schedule, 84);
-               ndr_print_uint32(ndr, "reserved", r->reserved);
+               ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
                ndr_print_drsuapi_DsReplicaHighWaterMark(ndr, "highwatermark", &r->highwatermark);
                ndr_print_GUID(ndr, "source_dsa_obj_guid", &r->source_dsa_obj_guid);
                ndr_print_GUID(ndr, "source_dsa_invocation_id", &r->source_dsa_invocation_id);
@@ -997,7 +997,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromToBlob(struct ndr_push *ndr, int ndr
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 8));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version));
-               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->version));
                NDR_CHECK(ndr_push_repsFromTo(ndr, NDR_SCALARS, &r->ctr));
                NDR_CHECK(ndr_push_trailer_align(ndr, 8));
@@ -1029,7 +1029,7 @@ _PUBLIC_ void ndr_print_repsFromToBlob(struct ndr_print *ndr, const char *name,
        ndr_print_struct(ndr, name, "repsFromToBlob");
        ndr->depth++;
        ndr_print_uint32(ndr, "version", r->version);
-       ndr_print_uint32(ndr, "reserved", r->reserved);
+       ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
        ndr_print_set_switch_value(ndr, &r->ctr, r->version);
        ndr_print_repsFromTo(ndr, "ctr", &r->ctr);
        ndr->depth--;
@@ -1165,7 +1165,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_partialAttributeSetBlob(struct ndr_push *ndr
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 4));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version));
-               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->version));
                NDR_CHECK(ndr_push_partialAttributeSetCtr(ndr, NDR_SCALARS, &r->ctr));
                NDR_CHECK(ndr_push_trailer_align(ndr, 4));
@@ -1195,7 +1195,7 @@ _PUBLIC_ void ndr_print_partialAttributeSetBlob(struct ndr_print *ndr, const cha
        ndr_print_struct(ndr, name, "partialAttributeSetBlob");
        ndr->depth++;
        ndr_print_uint32(ndr, "version", r->version);
-       ndr_print_uint32(ndr, "reserved", r->reserved);
+       ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
        ndr_print_set_switch_value(ndr, &r->ctr, r->version);
        ndr_print_partialAttributeSetCtr(ndr, "ctr", &r->ctr);
        ndr->depth--;
@@ -1301,7 +1301,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_prefixMapBlob(struct ndr_push *ndr, int ndr_
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 5));
                NDR_CHECK(ndr_push_prefixMapVersion(ndr, NDR_SCALARS, r->version));
-               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
+               NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->version));
                NDR_CHECK(ndr_push_prefixMapCtr(ndr, NDR_SCALARS, &r->ctr));
                NDR_CHECK(ndr_push_trailer_align(ndr, 5));
@@ -1333,7 +1333,7 @@ _PUBLIC_ void ndr_print_prefixMapBlob(struct ndr_print *ndr, const char *name, c
        ndr_print_struct(ndr, name, "prefixMapBlob");
        ndr->depth++;
        ndr_print_prefixMapVersion(ndr, "version", r->version);
-       ndr_print_uint32(ndr, "reserved", r->reserved);
+       ndr_print_uint32(ndr, "reserved", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved);
        ndr_print_set_switch_value(ndr, &r->ctr, r->version);
        ndr_print_prefixMapCtr(ndr, "ctr", &r->ctr);
        ndr->depth--;
index 68e9fd54c1b3441d013bf7622fcfd6392a486929..97f3b2de0b601b6f0180ae8d140199a0dd372302 100644 (file)
@@ -30,7 +30,7 @@ interface drsblobs {
 
        typedef struct {
                uint32 count;
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                replPropertyMetaData1 array[count];
        } replPropertyMetaDataCtr1;
 
@@ -40,7 +40,7 @@ interface drsblobs {
        
        typedef [public] struct {
                uint32 version;
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                [switch_is(version)] replPropertyMetaDataCtr ctr;
        } replPropertyMetaDataBlob;
 
@@ -55,13 +55,13 @@ interface drsblobs {
         */
        typedef struct {
                uint32 count;
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                drsuapi_DsReplicaCursor cursors[count];
        } replUpToDateVectorCtr1;
 
        typedef struct {
                uint32 count;
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                drsuapi_DsReplicaCursor2 cursors[count];
        } replUpToDateVectorCtr2;
 
@@ -72,7 +72,7 @@ interface drsblobs {
 
        typedef [public] struct {
                uint32 version;
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                [switch_is(version)] replUpToDateVectorCtr ctr;
        } replUpToDateVectorBlob;
 
@@ -102,7 +102,7 @@ interface drsblobs {
                [value(ndr_size_repsFromTo1OtherInfo(other_info, ndr->iconv_convenience, ndr->flags))] uint32 other_info_length;
                drsuapi_DsReplicaNeighbourFlags replica_flags;
                uint8 schedule[84];
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                drsuapi_DsReplicaHighWaterMark highwatermark;
                GUID source_dsa_obj_guid; /* the 'objectGuid' field of the CN=NTDS Settings object */
                GUID source_dsa_invocation_id; /* the 'invocationId' field of the CN=NTDS Settings object */
@@ -129,7 +129,7 @@ interface drsblobs {
                [value(ndr_size_repsFromTo2OtherInfo(other_info, ndr->iconv_convenience, ndr->flags))] uint32 other_info_length;
                drsuapi_DsReplicaNeighbourFlags replica_flags;
                uint8 schedule[84];
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                drsuapi_DsReplicaHighWaterMark highwatermark;
                GUID source_dsa_obj_guid; /* the 'objectGuid' field of the CN=NTDS Settings object */
                GUID source_dsa_invocation_id; /* the 'invocationId' field of the CN=NTDS Settings object */
@@ -144,7 +144,7 @@ interface drsblobs {
 
        typedef [public] struct {
                uint32 version;
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                [switch_is(version)] repsFromTo ctr;
        } repsFromToBlob;
 
@@ -168,7 +168,7 @@ interface drsblobs {
 
        typedef [public] struct {
                uint32 version;
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                [switch_is(version)] partialAttributeSetCtr ctr;
        } partialAttributeSetBlob;
 
@@ -196,7 +196,7 @@ interface drsblobs {
 
        typedef [public] struct {
                prefixMapVersion version;
-               uint32 reserved;
+               [value(0)] uint32 reserved;
                [switch_is(version)] prefixMapCtr ctr;
        } prefixMapBlob;