#include <vnet/api_errno.h>
#include <vnet/ipsec/ipsec.h>
#include <vlib/node_funcs.h>
+#include <vlib/log.h>
#include <dpdk/device/dpdk.h>
#include <dpdk/buffer.h>
crypto_worker_main_t * cwm, u8 is_outbound)
{
dpdk_crypto_main_t *dcm = &dpdk_crypto_main;
- ipsec_main_t *im = &ipsec_main;
crypto_data_t *data;
ipsec_sa_t *sa;
struct rte_crypto_sym_xform cipher_xform = { 0 };
struct rte_cryptodev_sym_session **s;
clib_error_t *error = 0;
-
- sa = pool_elt_at_index (im->sad, sa_idx);
+ sa = ipsec_sa_get (sa_idx);
if ((sa->crypto_alg == IPSEC_CRYPTO_ALG_AES_GCM_128) |
(sa->crypto_alg == IPSEC_CRYPTO_ALG_AES_GCM_192) |
if (!(dcm->enabled))
{
- clib_warning ("not enough DPDK crypto resources, default to OpenSSL");
+ vlib_log_warn (dpdk_main.log_default,
+ "not enough DPDK crypto resources");
crypto_disable ();
return 0;
}
return 0;
}
-
- u32 idx = ipsec_register_esp_backend (vm, im, "dpdk backend",
- "dpdk-esp4-encrypt",
- "dpdk-esp4-encrypt-tun",
- "dpdk-esp4-decrypt",
- "dpdk-esp4-decrypt",
- "dpdk-esp6-encrypt",
- "dpdk-esp6-encrypt-tun",
- "dpdk-esp6-decrypt",
- "dpdk-esp6-decrypt",
- dpdk_ipsec_check_support,
- add_del_sa_session,
- dpdk_ipsec_enable_disable);
+ u32 idx = ipsec_register_esp_backend (
+ vm, im, "dpdk backend", "dpdk-esp4-encrypt", "dpdk-esp4-encrypt-tun",
+ "dpdk-esp4-decrypt", "dpdk-esp4-decrypt", "dpdk-esp6-encrypt",
+ "dpdk-esp6-encrypt-tun", "dpdk-esp6-decrypt", "dpdk-esp6-decrypt",
+ "error-drop", dpdk_ipsec_check_support, add_del_sa_session,
+ dpdk_ipsec_enable_disable);
int rv;
if (im->esp_current_backend == ~0)
{