From f365c69d7852d6579952825c9f90a27129f92d22 Mon Sep 17 00:00:00 2001 From: Cristian Stoica Date: Tue, 13 Jun 2017 11:13:33 +0300 Subject: [PATCH 9/9] add support for composite TLS10(SHA1,AES) algorithm offload This adds support for composite algorithm offload as a primitive crypto (cipher + hmac) operation. It requires kernel support for tls10(hmac(sha1),cbc(aes)) algorithm provided either in software or accelerated by hardware such as Freescale B*, P* and T* platforms. Signed-off-by: Cristian Stoica --- crypto/cryptodev.h | 1 + ioctl.c | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/crypto/cryptodev.h b/crypto/cryptodev.h index 7fb9c7d..c0e8cd4 100644 --- a/crypto/cryptodev.h +++ b/crypto/cryptodev.h @@ -50,6 +50,7 @@ enum cryptodev_crypto_op_t { CRYPTO_SHA2_384, CRYPTO_SHA2_512, CRYPTO_SHA2_224_HMAC, + CRYPTO_TLS10_AES_CBC_HMAC_SHA1, CRYPTO_ALGORITHM_ALL, /* Keep updated - see below */ }; diff --git a/ioctl.c b/ioctl.c index 8b0df4e..998f51a 100644 --- a/ioctl.c +++ b/ioctl.c @@ -159,6 +159,11 @@ crypto_create_session(struct fcrypt *fcr, struct session_op *sop) stream = 1; aead = 1; break; + case CRYPTO_TLS10_AES_CBC_HMAC_SHA1: + alg_name = "tls10(hmac(sha1),cbc(aes))"; + stream = 0; + aead = 1; + break; case CRYPTO_NULL: alg_name = "ecb(cipher_null)"; stream = 1; -- 2.7.4