AAD offset in AES-GCM crypto test was calculated by adding
16-byte alignment after the IV, which is only needed in AES-CCM.

The patch correct the AAD offset calculation in AES-GCM algorithm tests.

Fixes: 0b242422d385 ("app/crypto-perf: set AAD after the crypto operation")
Cc: sta...@dpdk.org

Signed-off-by: Shani Peretz <shper...@nvidia.com>
---
 app/test-crypto-perf/cperf_ops.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/app/test-crypto-perf/cperf_ops.c b/app/test-crypto-perf/cperf_ops.c
index 6d5f510220..f9be51e17f 100644
--- a/app/test-crypto-perf/cperf_ops.c
+++ b/app/test-crypto-perf/cperf_ops.c
@@ -688,7 +688,9 @@ cperf_set_ops_aead(struct rte_crypto_op **ops,
        uint16_t i;
        /* AAD is placed after the IV */
        uint16_t aad_offset = iv_offset +
-                       RTE_ALIGN_CEIL(test_vector->aead_iv.length, 16);
+                       ((options->aead_algo == RTE_CRYPTO_AEAD_AES_CCM) ?
+                       RTE_ALIGN_CEIL(test_vector->aead_iv.length, 16) :
+                       test_vector->aead_iv.length);
 
        for (i = 0; i < nb_ops; i++) {
                struct rte_crypto_sym_op *sym_op = ops[i]->sym;
-- 
2.25.1

Reply via email to