L2 over MPLS
[vpp.git] / src / vnet / ethernet / arp.c
index df68175..8a39400 100644 (file)
@@ -264,7 +264,7 @@ format_ethernet_arp_ip4_entry (u8 * s, va_list * va)
   if (e->flags & ETHERNET_ARP_IP4_ENTRY_FLAG_NO_FIB_ENTRY)
     flags = format (flags, "N");
 
-  s = format (s, "%=12U%=16U%=6s%=20U%=24U",
+  s = format (s, "%=12U%=16U%=6s%=20U%U",
              format_vlib_cpu_time, vnm->vlib_main, e->cpu_time_last_updated,
              format_ip4_address, &e->ip4_address,
              flags ? (char *) flags : "",
@@ -588,7 +588,7 @@ vnet_arp_set_ip4_over_ethernet_internal (vnet_main_t * vnm,
          e->fib_entry_index =
            fib_table_entry_path_add (fib_index, &pfx, FIB_SOURCE_ADJ,
                                      FIB_ENTRY_FLAG_ATTACHED,
-                                     FIB_PROTOCOL_IP4, &pfx.fp_addr,
+                                     DPO_PROTO_IP4, &pfx.fp_addr,
                                      e->sw_if_index, ~0, 1, NULL,
                                      FIB_ROUTE_PATH_FLAG_NONE);
        }
@@ -1621,7 +1621,7 @@ arp_entry_free (ethernet_arp_interface_t * eai, ethernet_arp_ip4_entry_t * e)
 
       fib_table_entry_path_remove (fib_index, &pfx,
                                   FIB_SOURCE_ADJ,
-                                  FIB_PROTOCOL_IP4,
+                                  DPO_PROTO_IP4,
                                   &pfx.fp_addr,
                                   e->sw_if_index, ~0, 1,
                                   FIB_ROUTE_PATH_FLAG_NONE);
@@ -2291,12 +2291,8 @@ arp_term_l2bd (vlib_main_t * vm,
 
        next_l2_feature:
          {
-           u32 feature_bitmap0 =
-             vnet_buffer (p0)->l2.feature_bitmap & ~L2INPUT_FEAT_ARP_TERM;
-           vnet_buffer (p0)->l2.feature_bitmap = feature_bitmap0;
-           next0 =
-             feat_bitmap_get_next_node_index (arp_term_next_node_index,
-                                              feature_bitmap0);
+           next0 = vnet_l2_feature_next (p0, arp_term_next_node_index,
+                                         L2INPUT_FEAT_ARP_TERM);
            vlib_validate_buffer_enqueue_x1 (vm, node, next_index,
                                             to_next, n_left_to_next,
                                             pi0, next0);