/* XXX - if the specified length is less than the remaining length of data in the tvbuff, either 1) the specified length is bad and we should report that with an expert info or 2) the tvbuff is unreassembled and we should make the new tvbuff also be an unreassembled tvbuff.  */
static tvbuff_t* ber_tvb_new_subset_length(tvbuff_t *tvb, const gint backing_offset, const gint backing_length)
/* XXX - if the specified length is less than the remaining length of data in the tvbuff, either 1) the specified length is bad and we should report that with an expert info or 2) the tvbuff is unreassembled and we should make the new tvbuff also be an unreassembled tvbuff.  */
static tvbuff_t* ber_tvb_new_subset_length(tvbuff_t *tvb, const gint backing_offset, const gint backing_length)
{
    gint length_remaining;
    length_remaining = tvb_reported_length_remaining(tvb, backing_offset);
    return tvb_new_subset_length(tvb, backing_offset, (length_remaining > backing_length) ? backing_length : length_remaining);
}