[dpdk-dev] [PATCH] examples/l2fwd-crypto: fix digest with AEAD algorithms

Dwivedi, Ankur Ankur.Dwivedi at cavium.com
Tue Jul 17 07:42:38 CEST 2018


Hi Pablo,


This patch solves the bug.


Thanks

Ankur

________________________________
From: Pablo de Lara <pablo.de.lara.guarch at intel.com>
Sent: Monday, July 16, 2018 1:56:16 PM
To: Dwivedi, Ankur; declan.doherty at intel.com
Cc: dev at dpdk.org; Pablo de Lara; stable at dpdk.org
Subject: [PATCH] examples/l2fwd-crypto: fix digest with AEAD algorithms

External Email

When performing authentication verification (both for AEAD algorithms,
such as AES-GCM, or for authentication algorithms, such as SHA1-HMAC),
the digest address is calculated based on the packet size and the
algorithm used (substracting digest size and IP header to the packet size).

However, for AEAD algorithms, this was not calculated correctly,
since the digest size was not being substracted.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch at intel.com>

Bugzilla ID: 44
Fixes: 2661f4fbe93d ("examples/l2fwd-crypto: add AEAD parameters")
Cc: stable at dpdk.org
---
 examples/l2fwd-crypto/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/examples/l2fwd-crypto/main.c b/examples/l2fwd-crypto/main.c
index 9d6bb7857..9ac06a697 100644
--- a/examples/l2fwd-crypto/main.c
+++ b/examples/l2fwd-crypto/main.c
@@ -408,7 +408,7 @@ l2fwd_simple_crypto_enqueue(struct rte_mbuf *m,
        /* Zero pad data to be crypto'd so it is block aligned */
        data_len  = rte_pktmbuf_data_len(m) - ipdata_offset;

-       if (cparams->do_hash && cparams->hash_verify)
+       if ((cparams->do_hash || cparams->do_aead) && cparams->hash_verify)
                data_len -= cparams->digest_length;

        if (cparams->do_cipher) {
--
2.14.4



More information about the dev mailing list