crypto: ccp - Add a call to xts_check_key()

Vet the key using the available standard function

Signed-off-by: Gary R Hook <gary.hook@amd.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Gary R Hook 2017-07-25 14:21:23 -05:00 committed by Herbert Xu
parent e652399edb
commit 47f27f160b
1 changed files with 8 additions and 1 deletions

View File

@ -16,6 +16,7 @@
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/scatterlist.h> #include <linux/scatterlist.h>
#include <crypto/aes.h> #include <crypto/aes.h>
#include <crypto/xts.h>
#include <crypto/internal/skcipher.h> #include <crypto/internal/skcipher.h>
#include <crypto/scatterwalk.h> #include <crypto/scatterwalk.h>
@ -97,7 +98,13 @@ static int ccp_aes_xts_complete(struct crypto_async_request *async_req, int ret)
static int ccp_aes_xts_setkey(struct crypto_ablkcipher *tfm, const u8 *key, static int ccp_aes_xts_setkey(struct crypto_ablkcipher *tfm, const u8 *key,
unsigned int key_len) unsigned int key_len)
{ {
struct ccp_ctx *ctx = crypto_tfm_ctx(crypto_ablkcipher_tfm(tfm)); struct crypto_tfm *xfm = crypto_ablkcipher_tfm(tfm);
struct ccp_ctx *ctx = crypto_tfm_ctx(xfm);
int ret;
ret = xts_check_key(xfm, key, key_len);
if (ret)
return ret;
/* Only support 128-bit AES key with a 128-bit Tweak key, /* Only support 128-bit AES key with a 128-bit Tweak key,
* otherwise use the fallback * otherwise use the fallback