uint32_t count;/* [range(1,10000)] */
struct drsuapi_DsReplicaObjectIdentifier **info_array;/* [unique,size_is(count)] */
uint32_t flags;
- enum drsuapi_DsMembershipType type;
+ enum drsuapi_DsMembershipType type;/* [range(1,7)] */
struct drsuapi_DsReplicaObjectIdentifier *domain;/* [unique] */
};
}
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->flags));
NDR_CHECK(ndr_pull_drsuapi_DsMembershipType(ndr, NDR_SCALARS, &r->type));
+ if (r->type < 1 || r->type > 7) {
+ return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
+ }
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain));
if (_ptr_domain) {
NDR_PULL_ALLOC(ndr, r->domain);