summaryrefslogtreecommitdiff
path: root/src/network/networkd-route.c
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2013-12-07 21:18:44 +0100
committerTom Gundersen <teg@jklm.no>2013-12-16 17:28:18 +0100
commit1f01fb4f29bbe6aff952331a538fb3cc7f52dab4 (patch)
tree2b11faabf119d3eeb835db6a5b88f94e05514c14 /src/network/networkd-route.c
parentfc25d7f8050f262fa6cafeb2a1032e6eb3e7b412 (diff)
rtnl: simplify route_new()
Drop most of the arguments and instead introduce set_dst_prefixlen().
Diffstat (limited to 'src/network/networkd-route.c')
-rw-r--r--src/network/networkd-route.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c
index 1ea6237cc..f8580e93c 100644
--- a/src/network/networkd-route.c
+++ b/src/network/networkd-route.c
@@ -86,9 +86,7 @@ int route_configure(Route *route, Link *link,
assert(link->ifindex > 0);
assert(route->family == AF_INET || route->family == AF_INET6);
- r = sd_rtnl_message_route_new(RTM_NEWROUTE, route->family, route->dst_prefixlen,
- 0, 0, RT_TABLE_MAIN, RT_SCOPE_UNIVERSE,
- RTPROT_BOOT, RTN_UNICAST, 0, &req);
+ r = sd_rtnl_message_route_new(RTM_NEWROUTE, route->family, &req);
if (r < 0) {
log_error("Could not create RTM_NEWROUTE message: %s", strerror(-r));
return r;
@@ -106,6 +104,12 @@ int route_configure(Route *route, Link *link,
return r;
}
+ r = sd_rtnl_message_route_set_dst_prefixlen(req, route->dst_prefixlen);
+ if (r < 0) {
+ log_error("Could not set destination prefix length: %s", strerror(-r));
+ return r;
+ }
+
r = sd_rtnl_message_append(req, RTA_OIF, &link->ifindex);
if (r < 0) {
log_error("Could not append RTA_OIF attribute: %s", strerror(-r));