summaryrefslogtreecommitdiff
path: root/src/network/networkd-link.c
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2019-06-18 13:09:06 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2019-06-18 13:10:23 +0900
commitff14e2ebcb82a2cd6dd1c5809c1547adcb92f226 (patch)
treea01b502b051cbf955c1da7c5fa7073d06c041c9c /src/network/networkd-link.c
parent34715d8b03c64288c0c169a963bd2e466a5a4d98 (diff)
downloadsystemd-ff14e2ebcb82a2cd6dd1c5809c1547adcb92f226.tar.gz
network: do not configure routing policy rule if it is already configured
Diffstat (limited to 'src/network/networkd-link.c')
-rw-r--r--src/network/networkd-link.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
index 67c0903fa6..98848313bd 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -842,8 +842,9 @@ static int link_request_set_routing_policy_rule(Link *link) {
r = routing_policy_rule_get(link->manager, rule->family, &rule->from, rule->from_prefixlen, &rule->to,
rule->to_prefixlen, rule->tos, rule->fwmark, rule->table, rule->iif, rule->oif,
rule->protocol, &rule->sport, &rule->dport, &rrule);
- if (r == 0) {
- (void) routing_policy_rule_make_local(link->manager, rrule);
+ if (r >= 0) {
+ if (r == 0)
+ (void) routing_policy_rule_make_local(link->manager, rrule);
continue;
}