summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2021-11-16 15:11:15 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2021-11-16 16:01:18 +0900
commitd8c472f2976fbbf3be224a81ed92264c73cf8208 (patch)
tree5ba062997eafd98b665b749b5931049285527646
parent12a9f68f068f8f9d5069d38b155b4e351725948a (diff)
downloadsystemd-d8c472f2976fbbf3be224a81ed92264c73cf8208.tar.gz
network: address: use route_scope_from_string()
-rw-r--r--src/network/networkd-address.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/src/network/networkd-address.c b/src/network/networkd-address.c
index 5ef38bc476..e0f3bd3b1b 100644
--- a/src/network/networkd-address.c
+++ b/src/network/networkd-address.c
@@ -14,6 +14,7 @@
#include "networkd-manager.h"
#include "networkd-network.h"
#include "networkd-queue.h"
+#include "networkd-route-util.h"
#include "networkd-route.h"
#include "parse-util.h"
#include "string-util.h"
@@ -1770,21 +1771,14 @@ int config_parse_address_scope(
return 0;
}
- if (streq(rvalue, "host"))
- n->scope = RT_SCOPE_HOST;
- else if (streq(rvalue, "link"))
- n->scope = RT_SCOPE_LINK;
- else if (streq(rvalue, "global"))
- n->scope = RT_SCOPE_UNIVERSE;
- else {
- r = safe_atou8(rvalue , &n->scope);
- if (r < 0) {
- log_syntax(unit, LOG_WARNING, filename, line, r,
- "Could not parse address scope \"%s\", ignoring assignment: %m", rvalue);
- return 0;
- }
+ r = route_scope_from_string(rvalue);
+ if (r < 0) {
+ log_syntax(unit, LOG_WARNING, filename, line, r,
+ "Could not parse address scope \"%s\", ignoring assignment: %m", rvalue);
+ return 0;
}
+ n->scope = r;
n->scope_set = true;
TAKE_PTR(n);
return 0;