diff options
| author | Donald Sharp <donaldsharp72@gmail.com> | 2023-11-21 15:00:34 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-11-21 15:00:34 -0500 |
| commit | 61bb5917cf715223f523afcd76c67450dc162d81 (patch) | |
| tree | e171df52276b0bbfcc665449d2bd7cd4bd3afd7b | |
| parent | 31b4c7a6ae067ea4fd134bff9f477b4b7cf03c93 (diff) | |
| parent | 10a9a5f400586450d52d7acfdd05c2cff27b7f80 (diff) | |
Merge pull request #14848 from FRRouting/mergify/bp/stable/8.5/pr-14835
zebra: Fix fpm multipath encap addition (backport #14835)
| -rw-r--r-- | zebra/rt_netlink.c | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c index d846918e6c..5d23629143 100644 --- a/zebra/rt_netlink.c +++ b/zebra/rt_netlink.c @@ -2296,6 +2296,16 @@ ssize_t netlink_route_multipath_msg_encode(int cmd, tag)) return 0; + /* + * Add encapsulation information when installing via + * FPM. + */ + if (fpm) { + if (!netlink_route_nexthop_encap( + &req->n, datalen, nexthop)) + return 0; + } + if (!setsrc && src1) { if (p->family == AF_INET) src.ipv4 = src1->ipv4; @@ -2309,23 +2319,6 @@ ssize_t netlink_route_multipath_msg_encode(int cmd, nl_attr_nest_end(&req->n, nest); - /* - * Add encapsulation information when installing via - * FPM. - */ - if (fpm) { - for (ALL_NEXTHOPS_PTR(dplane_ctx_get_ng(ctx), - nexthop)) { - if (CHECK_FLAG(nexthop->flags, - NEXTHOP_FLAG_RECURSIVE)) - continue; - if (!netlink_route_nexthop_encap( - &req->n, datalen, nexthop)) - return 0; - } - } - - if (setsrc) { if (p->family == AF_INET) { if (!nl_attr_put(&req->n, datalen, RTA_PREFSRC, |
