linux-cp: fix FIB_ENTRY_FLAG_ATTACHED 57/37657/3
authorAlexander Skorichenko <askorichenko@netgate.com>
Mon, 14 Nov 2022 11:59:56 +0000 (11:59 +0000)
committerNeale Ranns <neale@graphiant.com>
Wed, 23 Nov 2022 00:33:24 +0000 (00:33 +0000)
Type: fix
   
Fib entries for attached routes when sourced from
FIB_SOURCE_API or FIB_SOURCE_CLI
get the FIB_ENTRY_FLAG_ATTACHED flag raised on the source.
Such a route added from linux-cp doesn't get this flag.
   
Fix this flag for linux-cp sources by passing it to the
fib entry's update/create function in lcp_router_route_add().

Signed-off-by: Alexander Skorichenko <askorichenko@netgate.com>
Change-Id: I24278ef86886cfee8a14acb250fb6992a754cc3c

src/plugins/linux-cp/lcp_router.c

index 04a6ba0..ab8ab16 100644 (file)
@@ -1229,6 +1229,16 @@ lcp_router_route_add (struct rtnl_route *rr)
          else
            {
              fib_source_t fib_src;
+             const fib_route_path_t *rpath;
+
+             vec_foreach (rpath, np.paths)
+               {
+                 if (fib_route_path_is_attached (rpath))
+                   {
+                     entry_flags |= FIB_ENTRY_FLAG_ATTACHED;
+                     break;
+                   }
+               }
 
              fib_src = lcp_router_proto_fib_source (rproto);