- if (0 == mp->br_paths[ii].afi)
- {
- clib_memcpy (&brpath->frp_addr.ip4,
- mp->br_paths[ii].next_hop,
- sizeof (brpath->frp_addr.ip4));
- }
- else
- {
- clib_memcpy (&brpath->frp_addr.ip6,
- mp->br_paths[ii].next_hop,
- sizeof (brpath->frp_addr.ip6));
- }
- if (ip46_address_is_zero(&brpath->frp_addr))
- {
- index_t bdti;
-
- bdti = bier_disp_table_find(ntohl(mp->br_paths[ii].table_id));
-
- if (INDEX_INVALID != bdti)
- {
- brpath->frp_fib_index = bdti;
- brpath->frp_proto = DPO_PROTO_BIER;
- }
- else
- {
- rv = VNET_API_ERROR_NO_SUCH_FIB;
- goto done;
- }
- }