summary |
shortlog |
log |
commit | commitdiff |
review |
tree
raw |
patch |
inline | side by side (from parent 1:
1e3aa5e)
Change-Id: I2018d8367bb010e1ab30d9c7c23d9501fc38a2e5
Signed-off-by: Damjan Marion <damarion@cisco.com>
{
r = rv[i];
op = ops + i;
{
r = rv[i];
op = ops + i;
+ vnet_crypto_op_init (op, r->op);
op->iv = r->iv.data;
op->key = r->key.data;
op->src = r->data.data;
op->iv = r->iv.data;
op->key = r->key.data;
op->src = r->data.data;
format_function_t format_vnet_crypto_engine;
format_function_t format_vnet_crypto_op;
format_function_t format_vnet_crypto_engine;
format_function_t format_vnet_crypto_op;
+
+static_always_inline void
+vnet_crypto_op_init (vnet_crypto_op_t * op, vnet_crypto_op_type_t type)
+{
+ if (CLIB_DEBUG > 0)
+ clib_memset (op, 0xfe, sizeof (*op));
+ op->op = type;
+ op->flags = 0;
+}
+
#endif /* included_vnet_crypto_crypto_h */
/*
#endif /* included_vnet_crypto_crypto_h */
/*
if (PREDICT_FALSE (sa->integ_op_type == 0))
return 0;
if (PREDICT_FALSE (sa->integ_op_type == 0))
return 0;
- op->op = sa->integ_op_type;
+ vnet_crypto_op_init (op, sa->integ_op_type);
op->key = sa->integ_key.data;
op->key_len = sa->integ_key.len;
op->src = data;
op->key = sa->integ_key.data;
op->key_len = sa->integ_key.len;
op->src = data;
{
vnet_crypto_op_t _op, *op = &_op;
{
vnet_crypto_op_t _op, *op = &_op;
if (PREDICT_FALSE (sa->crypto_dec_op_type == VNET_CRYPTO_OP_NONE))
return;
if (PREDICT_FALSE (sa->crypto_dec_op_type == VNET_CRYPTO_OP_NONE))
return;
- op->op = sa->crypto_dec_op_type;
+ vnet_crypto_op_init (op, sa->crypto_dec_op_type);
op->iv = iv;
op->src = in;
op->dst = out;
op->iv = iv;
op->src = in;
op->dst = out;
{
vnet_crypto_op_t *op;
vec_add2_aligned (ptd->crypto_ops, op, 1, CLIB_CACHE_LINE_BYTES);
{
vnet_crypto_op_t *op;
vec_add2_aligned (ptd->crypto_ops, op, 1, CLIB_CACHE_LINE_BYTES);
- op->op = sa0->crypto_enc_op_type;
+ vnet_crypto_op_init (op, sa0->crypto_enc_op_type);
op->iv = payload - iv_sz;
op->src = op->dst = payload;
op->key = sa0->crypto_key.data;
op->iv = payload - iv_sz;
op->src = op->dst = payload;
op->key = sa0->crypto_key.data;
{
vnet_crypto_op_t *op;
vec_add2_aligned (ptd->integ_ops, op, 1, CLIB_CACHE_LINE_BYTES);
{
vnet_crypto_op_t *op;
vec_add2_aligned (ptd->integ_ops, op, 1, CLIB_CACHE_LINE_BYTES);
- op->op = sa0->integ_op_type;
+ vnet_crypto_op_init (op, sa0->integ_op_type);
op->src = payload - iv_sz - sizeof (esp_header_t);
op->dst = payload + payload_len - icv_sz;
op->key = sa0->integ_key.data;
op->key_len = sa0->integ_key.len;
op->hmac_trunc_len = icv_sz;
op->len = payload_len - icv_sz + iv_sz + sizeof (esp_header_t);
op->src = payload - iv_sz - sizeof (esp_header_t);
op->dst = payload + payload_len - icv_sz;
op->key = sa0->integ_key.data;
op->key_len = sa0->integ_key.len;
op->hmac_trunc_len = icv_sz;
op->len = payload_len - icv_sz + iv_sz + sizeof (esp_header_t);
op->user_data = b - bufs;
if (ipsec_sa_is_set_USE_ESN (sa0))
{
op->user_data = b - bufs;
if (ipsec_sa_is_set_USE_ESN (sa0))
{