The LRP source address used for route egress must match the nexthop's
address family instead of the prefix.  A follow up patch depends on this
fix and the test will cover this - without this fix the EVPN IPv6
overlay over IPv4 underlay with multiple L3 hops will not work.

Fixes: 966ca1c919ce ("northd: Handle learned routes.")
Assisted-by: Cursor, with model: claude-4.6-opus-high
Signed-off-by: Han Zhou <[email protected]>
Acked-by: Lorenzo Bianconi <[email protected]>
---
 northd/en-learned-route-sync.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/northd/en-learned-route-sync.c b/northd/en-learned-route-sync.c
index 4e2d284eed8f..a1bfa13ae172 100644
--- a/northd/en-learned-route-sync.c
+++ b/northd/en-learned-route-sync.c
@@ -188,7 +188,7 @@ parse_route_from_sbrec_route(struct hmap *parsed_routes_out,
     struct ovn_port *out_port = NULL;
     if (!find_route_outport(lr_ports, route->logical_port->logical_port,
                             "static route", route->ip_prefix, route->nexthop,
-                            IN6_IS_ADDR_V4MAPPED(&prefix),
+                            IN6_IS_ADDR_V4MAPPED(nexthop),
                             false,
                             &out_port, &lrp_addr_s)) {
         static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(5, 1);
-- 
2.38.1

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to