c11 safe string handling support
[vpp.git] / src / plugins / dpdk / ipsec / ipsec.c
index b2d8611..ded8912 100644 (file)
@@ -407,7 +407,7 @@ static void __attribute__ ((unused)) clear_and_free_obj (void *obj)
 {
   struct rte_mempool *mp = rte_mempool_from_obj (obj);
 
-  memset (obj, 0, mp->elt_size);
+  clib_memset (obj, 0, mp->elt_size);
 
   rte_mempool_put (mp, obj);
 }
@@ -878,11 +878,7 @@ crypto_create_session_h_pool (vlib_main_t * vm, u8 numa)
   pool_name = format (0, "session_h_pool_numa%u%c", numa, 0);
 
 
-#if RTE_VERSION < RTE_VERSION_NUM(18, 5, 0, 0)
-  elt_size = rte_cryptodev_get_header_session_size ();
-#else
   elt_size = rte_cryptodev_sym_get_header_session_size ();
-#endif
 
   error =
     dpdk_pool_create (vm, pool_name, elt_size, DPDK_CRYPTO_NB_SESS_OBJS,
@@ -922,11 +918,7 @@ crypto_create_session_drv_pool (vlib_main_t * vm, crypto_dev_t * dev)
 
   pool_name = format (0, "session_drv%u_pool_numa%u%c", dev->drv_id, numa, 0);
 
-#if RTE_VERSION < RTE_VERSION_NUM(18, 5, 0, 0)
-  elt_size = rte_cryptodev_get_private_session_size (dev->id);
-#else
   elt_size = rte_cryptodev_sym_get_private_session_size (dev->id);
-#endif
 
   error =
     dpdk_pool_create (vm, pool_name, elt_size, DPDK_CRYPTO_NB_SESS_OBJS,
@@ -1039,9 +1031,9 @@ dpdk_ipsec_process (vlib_main_t * vm, vlib_node_runtime_t * rt,
     {
       vec_validate_init_empty_aligned (cwm->ops, VLIB_FRAME_SIZE - 1, 0,
                                       CLIB_CACHE_LINE_BYTES);
-      memset (cwm->cipher_resource_idx, ~0,
+      clib_memset (cwm->cipher_resource_idx, ~0,
              IPSEC_CRYPTO_N_ALG * sizeof(*cwm->cipher_resource_idx));
-      memset (cwm->auth_resource_idx, ~0,
+      clib_memset (cwm->auth_resource_idx, ~0,
              IPSEC_INTEG_N_ALG * sizeof(*cwm->auth_resource_idx));
     }
   /* *INDENT-ON* */
@@ -1059,20 +1051,36 @@ dpdk_ipsec_process (vlib_main_t * vm, vlib_node_runtime_t * rt,
   /* Add new next node and set it as default */
   vlib_node_t *node, *next_node;
 
-  next_node = vlib_get_node_by_name (vm, (u8 *) "dpdk-esp-encrypt");
+  next_node = vlib_get_node_by_name (vm, (u8 *) "dpdk-esp4-encrypt");
+  ASSERT (next_node);
+  node = vlib_get_node_by_name (vm, (u8 *) "ipsec4-output");
+  ASSERT (node);
+  im->esp4_encrypt_node_index = next_node->index;
+  im->esp4_encrypt_next_index =
+    vlib_node_add_next (vm, node->index, next_node->index);
+
+  next_node = vlib_get_node_by_name (vm, (u8 *) "dpdk-esp4-decrypt");
+  ASSERT (next_node);
+  node = vlib_get_node_by_name (vm, (u8 *) "ipsec4-input");
+  ASSERT (node);
+  im->esp4_decrypt_node_index = next_node->index;
+  im->esp4_decrypt_next_index =
+    vlib_node_add_next (vm, node->index, next_node->index);
+
+  next_node = vlib_get_node_by_name (vm, (u8 *) "dpdk-esp6-encrypt");
   ASSERT (next_node);
-  node = vlib_get_node_by_name (vm, (u8 *) "ipsec-output-ip4");
+  node = vlib_get_node_by_name (vm, (u8 *) "ipsec6-output");
   ASSERT (node);
-  im->esp_encrypt_node_index = next_node->index;
-  im->esp_encrypt_next_index =
+  im->esp6_encrypt_node_index = next_node->index;
+  im->esp6_encrypt_next_index =
     vlib_node_add_next (vm, node->index, next_node->index);
 
-  next_node = vlib_get_node_by_name (vm, (u8 *) "dpdk-esp-decrypt");
+  next_node = vlib_get_node_by_name (vm, (u8 *) "dpdk-esp6-decrypt");
   ASSERT (next_node);
-  node = vlib_get_node_by_name (vm, (u8 *) "ipsec-input-ip4");
+  node = vlib_get_node_by_name (vm, (u8 *) "ipsec6-input");
   ASSERT (node);
-  im->esp_decrypt_node_index = next_node->index;
-  im->esp_decrypt_next_index =
+  im->esp6_decrypt_node_index = next_node->index;
+  im->esp6_decrypt_next_index =
     vlib_node_add_next (vm, node->index, next_node->index);
 
   im->cb.check_support_cb = dpdk_ipsec_check_support;