1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

libdm: reapply "fix condition"

This reverts commit d16a8f80e9.
So the correction was OK, however we missed to fix also
cut&paste bug here - as the second check should be
actually checking  field->type.
This commit is contained in:
Zdenek Kabelac 2024-05-10 13:53:11 +02:00
parent 55a9fb98d1
commit 00cfe3a24e
2 changed files with 10 additions and 6 deletions

View File

@ -2589,7 +2589,8 @@ static int _check_reserved_values_supported(const struct dm_report_field_type fi
if (iter->type & DM_REPORT_FIELD_TYPE_MASK) {
if (!(iter->type & supported_reserved_types) ||
((iter->type & DM_REPORT_FIELD_RESERVED_VALUE_RANGE) &&
!(iter->type & supported_reserved_types_with_range))) {
!(iter->type & (supported_reserved_types_with_range &
~DM_REPORT_FIELD_RESERVED_VALUE_RANGE)))) {
log_error(INTERNAL_ERROR "_check_reserved_values_supported: "
"global reserved value for type 0x%x not supported",
iter->type);
@ -2599,8 +2600,9 @@ static int _check_reserved_values_supported(const struct dm_report_field_type fi
field_res = (const struct dm_report_field_reserved_value *) iter->value;
field = &fields[field_res->field_num];
if (!(field->flags & supported_reserved_types) ||
((iter->type & DM_REPORT_FIELD_RESERVED_VALUE_RANGE) &&
!(iter->type & supported_reserved_types_with_range))) {
((field->type & DM_REPORT_FIELD_RESERVED_VALUE_RANGE) &&
!(field->type & (supported_reserved_types_with_range &
~DM_REPORT_FIELD_RESERVED_VALUE_RANGE)))) {
log_error(INTERNAL_ERROR "_check_reserved_values_supported: "
"field-specific reserved value of type 0x%x for "
"field %s not supported",

View File

@ -2587,7 +2587,8 @@ static int _check_reserved_values_supported(const struct dm_report_field_type fi
if (iter->type & DM_REPORT_FIELD_TYPE_MASK) {
if (!(iter->type & supported_reserved_types) ||
((iter->type & DM_REPORT_FIELD_RESERVED_VALUE_RANGE) &&
!(iter->type & supported_reserved_types_with_range))) {
!(iter->type & (supported_reserved_types_with_range &
~DM_REPORT_FIELD_RESERVED_VALUE_RANGE)))) {
log_error(INTERNAL_ERROR "_check_reserved_values_supported: "
"global reserved value for type 0x%x not supported",
iter->type);
@ -2597,8 +2598,9 @@ static int _check_reserved_values_supported(const struct dm_report_field_type fi
field_res = (const struct dm_report_field_reserved_value *) iter->value;
field = &fields[field_res->field_num];
if (!(field->flags & supported_reserved_types) ||
((iter->type & DM_REPORT_FIELD_RESERVED_VALUE_RANGE) &&
!(iter->type & supported_reserved_types_with_range))) {
((field->type & DM_REPORT_FIELD_RESERVED_VALUE_RANGE) &&
!(field->type & (supported_reserved_types_with_range &
~DM_REPORT_FIELD_RESERVED_VALUE_RANGE)))) {
log_error(INTERNAL_ERROR "_check_reserved_values_supported: "
"field-specific reserved value of type 0x%x for "
"field %s not supported",