diff options
Diffstat (limited to 'src/vnet/mfib/mfib_entry.c')
-rw-r--r-- | src/vnet/mfib/mfib_entry.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/vnet/mfib/mfib_entry.c b/src/vnet/mfib/mfib_entry.c index 79d2f9a50a3..18562219ce2 100644 --- a/src/vnet/mfib/mfib_entry.c +++ b/src/vnet/mfib/mfib_entry.c @@ -1325,6 +1325,7 @@ void mfib_entry_encode (fib_node_index_t mfib_entry_index, fib_route_path_encode_t **api_rpaths) { + fib_route_path_encode_t *api_rpath; mfib_entry_t *mfib_entry; mfib_entry_src_t *bsrc; @@ -1338,6 +1339,18 @@ mfib_entry_encode (fib_node_index_t mfib_entry_index, fib_path_encode, api_rpaths); } + + vec_foreach(api_rpath, *api_rpaths) + { + mfib_itf_t *mfib_itf; + + mfib_itf = mfib_entry_itf_find(bsrc->mfes_itfs, + api_rpath->rpath.frp_sw_if_index); + if (mfib_itf) + { + api_rpath->rpath.frp_mitf_flags = mfib_itf->mfi_flags; + } + } } const mfib_prefix_t * |