[dpdk-dev] [PATCH 06/22] crypto/qat: fix auth parameters for KASUMI
    Pablo de Lara 
    pablo.de.lara.guarch at intel.com
       
    Wed Jun 21 09:47:15 CEST 2017
    
    
  
QAT PMD was assuming that cipher IV was always prepended,
before the input buffer, but it is not necessary to have it
there, only the auth IV and the input buffer needs to be
contiguous.
It was also assuming that the IV was starting at offset 0,
which is not always the case.
Fixes: d4f2745300e0 ("crypto/qat: add KASUMI")
CC: stable at dpdk.org
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch at intel.com>
---
 drivers/crypto/qat/qat_crypto.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/drivers/crypto/qat/qat_crypto.c b/drivers/crypto/qat/qat_crypto.c
index 3bf3133..345fcb9 100644
--- a/drivers/crypto/qat/qat_crypto.c
+++ b/drivers/crypto/qat/qat_crypto.c
@@ -1011,14 +1011,9 @@ qat_write_hw_desc_entry(struct rte_crypto_op *op, uint8_t *out_msg,
 
 			if (ctx->qat_hash_alg ==
 					ICP_QAT_HW_AUTH_ALGO_KASUMI_F9) {
-				if (do_cipher) {
-					auth_len = auth_len + auth_ofs + 1 -
-						ICP_QAT_HW_KASUMI_BLK_SZ;
-					auth_ofs = ICP_QAT_HW_KASUMI_BLK_SZ;
-				} else {
-					auth_len = auth_len + auth_ofs + 1;
-					auth_ofs = 0;
-				}
+				/* Auth IV and message is contiguous + direction bit */
+				auth_len = auth_len + ICP_QAT_HW_KASUMI_BLK_SZ + 1;
+				auth_ofs -= ICP_QAT_HW_KASUMI_BLK_SZ;
 			}
 
 		} else if (ctx->qat_hash_alg ==
-- 
2.9.4
    
    
More information about the dev
mailing list