From 1cd4ec66caeaa0b46c1352d6a0e2e9f132b4aef2 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Sat, 28 Oct 2023 10:03:39 -0400 Subject: [PATCH] zebra: Add encap type when building packet for FPM Currently in the single nexthop case w/ evpn sending down via the FPM the encap type is not being set for the nexthop. This looks like the result of some code reorg for the nexthop happened but the fpm failed to be accounted for. Let's just move the encap type encoding to where it will happen. Signed-off-by: Donald Sharp (cherry picked from commit 4ac659fcbeb3848ee6caf06676a9ac1543ae62f1) --- zebra/rt_netlink.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c index bfe1910a58..7c7c41c4fa 100644 --- a/zebra/rt_netlink.c +++ b/zebra/rt_netlink.c @@ -2412,19 +2412,21 @@ ssize_t netlink_route_multipath_msg_encode(int cmd, struct zebra_dplane_ctx *ctx p, routedesc, bytelen, nexthop, &req->n, &req->r, datalen, cmd)) return 0; + + /* + * Add encapsulation information when + * installing via FPM. + */ + if (fpm) { + if (!netlink_route_nexthop_encap(&req->n, + datalen, + nexthop)) + return 0; + } + nexthop_num++; break; } - - /* - * Add encapsulation information when installing via - * FPM. - */ - if (fpm) { - if (!netlink_route_nexthop_encap( - &req->n, datalen, nexthop)) - return 0; - } } if (setsrc) { -- 2.39.5