openssl_per_thread_data_t *ptd = vec_elt_at_index (per_thread_data,
vm->thread_index);
HMAC_CTX *ctx = ptd->hmac_ctx;
- u32 i;
+ u32 i, n_fail = 0;
for (i = 0; i < n_ops; i++)
{
vnet_crypto_op_t *op = ops[i];
{
if ((memcmp (op->dst, buffer, sz)))
{
- n_ops -= 1;
+ n_fail++;
op->status = VNET_CRYPTO_OP_STATUS_FAIL_BAD_HMAC;
continue;
}
clib_memcpy_fast (op->dst, buffer, sz);
op->status = VNET_CRYPTO_OP_STATUS_COMPLETED;
}
- return n_ops;
+ return n_ops - n_fail;
}
#define _(a, b) \
time_t t;
pid_t pid;
- u32 eidx = vnet_crypto_register_engine (vm, "openssl", 50, "OpenSSL");
clib_error_t *error;
if ((error = vlib_call_init_function (vm, vnet_crypto_init)))
return error;
+ u32 eidx = vnet_crypto_register_engine (vm, "openssl", 50, "OpenSSL");
+
#define _(a, b) \
vnet_crypto_register_ops_handler (vm, eidx, VNET_CRYPTO_OP_##a##_ENC, \
openssl_ops_enc_##a); \