L2 over MPLS
[vpp.git] / src / vnet / vxlan / vxlan.c
index 58c7bec..dc97337 100644 (file)
@@ -486,7 +486,7 @@ int vnet_vxlan_add_del_tunnel
           vtep_addr_ref(&t->src);
           t->fib_entry_index = fib_table_entry_special_add
             (t->encap_fib_index, &tun_dst_pfx, FIB_SOURCE_RR,
-            FIB_ENTRY_FLAG_NONE, ADJ_INDEX_INVALID);
+            FIB_ENTRY_FLAG_NONE);
           t->sibling_index = fib_entry_child_add
             (t->fib_entry_index, FIB_NODE_TYPE_VXLAN_TUNNEL, t - vxm->tunnels);
           vxlan_tunnel_restack_dpo(t);
@@ -505,7 +505,7 @@ int vnet_vxlan_add_del_tunnel
               fib_node_index_t mfei;
               adj_index_t ai;
               fib_route_path_t path = {
-                  .frp_proto = fp,
+                  .frp_proto = fib_proto_to_dpo(fp),
                   .frp_addr = zero_addr,
                   .frp_sw_if_index = 0xffffffff,
                   .frp_fib_index = ~0,
@@ -576,6 +576,7 @@ int vnet_vxlan_add_del_tunnel
 
       t = pool_elt_at_index (vxm->tunnels, p[0]);
 
+      sw_if_index = t->sw_if_index;
       vnet_sw_interface_set_flags (vnm, t->sw_if_index, 0 /* down */);
       vnet_sw_interface_t * si = vnet_get_sw_interface (vnm, t->sw_if_index);
       si->flags |= VNET_SW_INTERFACE_FLAG_HIDDEN;