cryptodev: move IV parameters to session
[dpdk.git] / examples / ipsec-secgw / esp.c
index d084456..ead4071 100644 (file)
@@ -50,9 +50,6 @@
 #include "esp.h"
 #include "ipip.h"
 
-#define IV_OFFSET              (sizeof(struct rte_crypto_op) + \
-                               sizeof(struct rte_crypto_sym_op))
-
 int
 esp_inbound(struct rte_mbuf *m, struct ipsec_sa *sa,
                struct rte_crypto_op *cop)
@@ -104,10 +101,6 @@ esp_inbound(struct rte_mbuf *m, struct ipsec_sa *sa,
        case RTE_CRYPTO_CIPHER_AES_CBC:
                /* Copy IV at the end of crypto operation */
                rte_memcpy(iv_ptr, iv, sa->iv_len);
-               sym_cop->cipher.iv.data = iv_ptr;
-               sym_cop->cipher.iv.phys_addr =
-                               rte_crypto_op_ctophys_offset(cop, IV_OFFSET);
-               sym_cop->cipher.iv.length = sa->iv_len;
                break;
        case RTE_CRYPTO_CIPHER_AES_CTR:
        case RTE_CRYPTO_CIPHER_AES_GCM:
@@ -115,10 +108,6 @@ esp_inbound(struct rte_mbuf *m, struct ipsec_sa *sa,
                icb->salt = sa->salt;
                memcpy(&icb->iv, iv, 8);
                icb->cnt = rte_cpu_to_be_32(1);
-               sym_cop->cipher.iv.data = iv_ptr;
-               sym_cop->cipher.iv.phys_addr =
-                               rte_crypto_op_ctophys_offset(cop, IV_OFFSET);
-               sym_cop->cipher.iv.length = 16;
                break;
        default:
                RTE_LOG(ERR, IPSEC_ESP, "unsupported cipher algorithm %u\n",
@@ -348,16 +337,10 @@ esp_outbound(struct rte_mbuf *m, struct ipsec_sa *sa,
        padding[pad_len - 2] = pad_len - 2;
        padding[pad_len - 1] = nlp;
 
-       uint8_t *iv_ptr = rte_crypto_op_ctod_offset(cop,
-                               uint8_t *, IV_OFFSET);
        struct cnt_blk *icb = get_cnt_blk(m);
        icb->salt = sa->salt;
        icb->iv = sa->seq;
        icb->cnt = rte_cpu_to_be_32(1);
-       sym_cop->cipher.iv.data = iv_ptr;
-       sym_cop->cipher.iv.phys_addr =
-                       rte_crypto_op_ctophys_offset(cop, IV_OFFSET);
-       sym_cop->cipher.iv.length = 16;
 
        uint8_t *aad;