MAP - add the domain struct directly into the dat-path and avoid the indirectiob...
[vpp.git] / src / vnet / map / ip4_map.c
index 2be9ad3..1a20d70 100644 (file)
@@ -293,12 +293,10 @@ ip4_map (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame)
          p1 = vlib_get_buffer (vm, pi1);
          ip40 = vlib_buffer_get_current (p0);
          ip41 = vlib_buffer_get_current (p1);
-         d0 =
-           ip4_map_get_domain (vnet_buffer (p0)->ip.adj_index[VLIB_TX],
-                               &map_domain_index0);
-         d1 =
-           ip4_map_get_domain (vnet_buffer (p1)->ip.adj_index[VLIB_TX],
-                               &map_domain_index1);
+         map_domain_index0 = vnet_buffer (p0)->ip.adj_index[VLIB_TX];
+         d0 = ip4_map_get_domain (map_domain_index0);
+         map_domain_index1 = vnet_buffer (p1)->ip.adj_index[VLIB_TX];
+         d1 = ip4_map_get_domain (map_domain_index1);
          ASSERT (d0);
          ASSERT (d1);
 
@@ -464,9 +462,8 @@ ip4_map (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame)
 
          p0 = vlib_get_buffer (vm, pi0);
          ip40 = vlib_buffer_get_current (p0);
-         d0 =
-           ip4_map_get_domain (vnet_buffer (p0)->ip.adj_index[VLIB_TX],
-                               &map_domain_index0);
+         map_domain_index0 = vnet_buffer (p0)->ip.adj_index[VLIB_TX];
+         d0 = ip4_map_get_domain (map_domain_index0);
          ASSERT (d0);
 
          /*
@@ -597,9 +594,8 @@ ip4_map_reass (vlib_main_t * vm,
          p0 = vlib_get_buffer (vm, pi0);
          ip60 = vlib_buffer_get_current (p0);
          ip40 = (ip4_header_t *) (ip60 + 1);
-         d0 =
-           ip4_map_get_domain (vnet_buffer (p0)->ip.adj_index[VLIB_TX],
-                               &map_domain_index0);
+         map_domain_index0 = vnet_buffer (p0)->ip.adj_index[VLIB_TX];
+         d0 = ip4_map_get_domain (map_domain_index0);
 
          map_ip4_reass_lock ();
          map_ip4_reass_t *r = map_ip4_reass_get (ip40->src_address.as_u32,