diff options
-rw-r--r-- | lib/odp-util.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/lib/odp-util.c b/lib/odp-util.c index 7444ccf5c..d83159c4f 100644 --- a/lib/odp-util.c +++ b/lib/odp-util.c @@ -955,22 +955,22 @@ format_odp_key_attr(const struct nlattr *a, const struct nlattr *ma, expected_len = odp_flow_key_attr_len(nl_attr_type(a)); if (expected_len != -2) { bool bad_key_len = nl_attr_get_size(a) != expected_len; - bool bad_mask_len = ma && nl_attr_get_size(a) != expected_len; + bool bad_mask_len = ma && nl_attr_get_size(ma) != expected_len; if (bad_key_len || bad_mask_len) { if (bad_key_len) { ds_put_format(ds, "(bad key length %zu, expected %d)(", - nl_attr_get_size(a), - odp_flow_key_attr_len(nl_attr_type(a))); + nl_attr_get_size(a), expected_len); } format_generic_odp_key(a, ds); - if (bad_mask_len) { + if (ma) { ds_put_char(ds, '/'); - ds_put_format(ds, "(bad mask length %zu, expected %d)(", - nl_attr_get_size(ma), - odp_flow_key_attr_len(nl_attr_type(ma))); + if (bad_mask_len) { + ds_put_format(ds, "(bad mask length %zu, expected %d)(", + nl_attr_get_size(ma), expected_len); + } + format_generic_odp_key(ma, ds); } - format_generic_odp_key(ma, ds); ds_put_char(ds, ')'); return; } |