From: Yu Watanabe Date: Sat, 13 Jan 2024 04:32:27 +0000 (+0900) Subject: network/route-nexthop: configure as a simple gateway when MultipathRoute= is specifie... X-Git-Tag: v256-rc1~1101^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F31009%2Fhead;p=thirdparty%2Fsystemd.git network/route-nexthop: configure as a simple gateway when MultipathRoute= is specified only once The kernel handles such configuration completely equivalent to the case that Gateway= is specified. --- diff --git a/src/network/networkd-route-nexthop.c b/src/network/networkd-route-nexthop.c index 1524b23188d..2228c6280de 100644 --- a/src/network/networkd-route-nexthop.c +++ b/src/network/networkd-route-nexthop.c @@ -873,6 +873,16 @@ int route_section_verify_nexthops(Route *route) { "Ignoring [Route] section from line %u.", route->section->filename, route->section->line); + if (ordered_set_size(route->nexthops) == 1) { + _cleanup_(route_nexthop_freep) RouteNextHop *nh = ordered_set_steal_first(route->nexthops); + + route_nexthop_done(&route->nexthop); + route->nexthop = TAKE_STRUCT(*nh); + + assert(ordered_set_isempty(route->nexthops)); + route->nexthops = ordered_set_free(route->nexthops); + } + return 0; }