From 60cff30cccfce335d684d26d9d890f59b4aa4345 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 de01ced411ef..a540687691fd 100644 --- a/zebra/rt_netlink.c +++ b/zebra/rt_netlink.c @@ -2328,19 +2328,21 @@ ssize_t netlink_route_multipath_msg_encode(int cmd, 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) {