diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2020-10-29 11:41:01 +0900 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2020-12-14 23:30:16 +0900 |
commit | 40424f1ad97db59958e40a395986a5e248da6f05 (patch) | |
tree | 85327e42147ee878b05a4cd2b311d371560c6635 | |
parent | 18f2ee33102d1ff4f658829f971697895d813cfd (diff) | |
download | systemd-40424f1ad97db59958e40a395986a5e248da6f05.tar.gz |
network: introduce routing_policy_rule_equal()
-rw-r--r-- | src/network/networkd-routing-policy-rule.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/network/networkd-routing-policy-rule.c b/src/network/networkd-routing-policy-rule.c index 0b7ee79f6f..411d44b073 100644 --- a/src/network/networkd-routing-policy-rule.c +++ b/src/network/networkd-routing-policy-rule.c @@ -264,6 +264,16 @@ static int routing_policy_rule_compare_func(const RoutingPolicyRule *a, const Ro } } +static bool routing_policy_rule_equal(const RoutingPolicyRule *rule1, const RoutingPolicyRule *rule2) { + if (rule1 == rule2) + return true; + + if (!rule1 || !rule2) + return false; + + return routing_policy_rule_compare_func(rule1, rule2) == 0; +} + DEFINE_PRIVATE_HASH_OPS_WITH_KEY_DESTRUCTOR( routing_policy_rule_hash_ops, RoutingPolicyRule, @@ -605,7 +615,7 @@ static bool manager_links_have_routing_policy_rule(Manager *m, RoutingPolicyRule continue; HASHMAP_FOREACH(link_rule, link->network->rules_by_section) - if (routing_policy_rule_compare_func(link_rule, rule) == 0) + if (routing_policy_rule_equal(link_rule, rule)) return true; } |