rtnl: simplify route_new()

Drop most of the arguments and instead introduce set_dst_prefixlen().
This commit is contained in:
Tom Gundersen
2013-12-16 17:28:18 +01:00
parent fc25d7f805
commit 1f01fb4f29
4 changed files with 29 additions and 18 deletions
+7 -3
View File
@@ -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));