summaryrefslogtreecommitdiffstats
path: root/src/vnet/fib/fib_path.c
diff options
context:
space:
mode:
authorAndrew Yourtchenko <ayourtch@gmail.com>2017-10-25 05:50:37 -0700
committerOle Trøan <otroan@employees.org>2017-10-25 16:28:03 +0000
commit5f3fcb96296a4769f55f60270e10c6294c604db9 (patch)
tree028293ba04f669187b8d41cd72f34f195e12e81b /src/vnet/fib/fib_path.c
parent36ea2d6d3a67a60534a7c2b58551688858a1ce7f (diff)
L3 proxy FIB source for container networking
Change-Id: I4164c4c19c8dbfd73e6ddf94a12056325cc093b9 Signed-off-by: Neale Ranns <nranns@cisco.com> Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Diffstat (limited to 'src/vnet/fib/fib_path.c')
-rw-r--r--src/vnet/fib/fib_path.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/vnet/fib/fib_path.c b/src/vnet/fib/fib_path.c
index 7b713a4b5c5..926b2f3dfc6 100644
--- a/src/vnet/fib/fib_path.c
+++ b/src/vnet/fib/fib_path.c
@@ -1854,20 +1854,21 @@ fib_path_contribute_urpf (fib_node_index_t path_index,
case FIB_PATH_TYPE_EXCLUSIVE:
case FIB_PATH_TYPE_SPECIAL:
- /*
+ {
+ /*
* these path types may link to an adj, if that's what
* the clinet gave
*/
- if (dpo_is_adj(&path->fp_dpo))
- {
- ip_adjacency_t *adj;
+ u32 rpf_sw_if_index;
- adj = adj_get(path->fp_dpo.dpoi_index);
+ rpf_sw_if_index = dpo_get_urpf(&path->fp_dpo);
- fib_urpf_list_append(urpf, adj->rewrite_header.sw_if_index);
+ if (~0 != rpf_sw_if_index)
+ {
+ fib_urpf_list_append(urpf, rpf_sw_if_index);
}
break;
-
+ }
case FIB_PATH_TYPE_DEAG:
case FIB_PATH_TYPE_RECEIVE:
case FIB_PATH_TYPE_INTF_RX: