dect
/
libnl
Archived
13
0
Fork 0

Default to comparing all attributes if no oo_id_attrs defined

Since commit: "cache pickup: Avoid duplicates during cache pickup",
nfnl_ct_alloc_cache no longer properly fills the cache, as it doesn't
define oo_id_attrs so all items are considered duplicates.

Instead of adding a ~0 oo_id_attrs to ct_obj, this changes
nl_object_identical to default to comparing all attributes if
neither oo_id_attrs_get or oo_id_attrs are provided.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
This commit is contained in:
Andrew Collins 2013-06-17 15:24:05 -06:00 committed by Thomas Graf
parent c1de0f3129
commit 87bbfb6b12
1 changed files with 3 additions and 1 deletions

View File

@ -321,8 +321,10 @@ int nl_object_identical(struct nl_object *a, struct nl_object *b)
if (req_attrs_a != req_attrs_b)
return 0;
req_attrs = req_attrs_a;
} else {
} else if (ops->oo_id_attrs) {
req_attrs = ops->oo_id_attrs;
} else {
req_attrs = 0xFFFFFFFF;
}
if (req_attrs == 0xFFFFFFFF)
req_attrs = a->ce_mask & b->ce_mask;