FAILED: patch "[PATCH] crypto: hash - Add crypto_ahash_has_setkey" failed to apply to 3.10-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 3.10-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
a5596d6332787fd383b3b5427b41f94254430827Mon Sep 17 00:00:00 2001
From: Herbert Xu <[email protected]>
Date: Fri, 8 Jan 2016 21:28:26 +0800
Subject: [PATCH] crypto: hash - Add crypto_ahash_has_setkey
This patch adds a way for ahash users to determine whether a key is required by a crypto_ahash transform.
Signed-off-by Herbert Xu <[email protected]>
crypto/ahash.c +4 -1
@@ -451,6 +451,7 @@ static int crypto_ahash_init_tfm(struct crypto_tfm *tfm)struct ahash_alg *alg =crypto_ahash_alg (hash); hash->setkey = ahash_nosetkey; + hash->has_setkey = false; hash->export = ahash_no_export; hash->import = ahash_no_import;
@@ -463,8 +464,10 @@ static int crypto_ahash_init_tfm(struct crypto_tfm *tfm) hash->finup = alg->finup ?: ahash_def_finup; hash->digest = alg->digest; -if (alg->setkey) +if (alg->setkey) { hash->setkey = alg->setkey; + hash->has_setkey = true; + }if (alg->export) hash->export = alg->export;if (alg->import)
crypto/shash.c +3 -1
@@ -355,8 +355,10 @@ int crypto_init_shash_ops_async(struct crypto_tfm *tfm) crt->finup = shash_async_finup; crt->digest = shash_async_digest; -if (alg->setkey) +if (alg->setkey) { crt->setkey = shash_async_setkey; + crt->has_setkey = true; + }if (alg->export) crt->export = shash_async_export;if (alg->import)
include/crypto/hash.h +6 -0
@@ -204,6 +204,7 @@ struct crypto_ahash { unsigned int keylen);unsigned int reqsize; +bool has_setkey;struct crypto_tfm base; };
@@ -375,6 +376,11 @@ static inline void *ahash_request_ctx(struct ahash_request *req)int crypto_ahash_setkey (struct crypto_ahash *tfm,const u8 *key,unsigned int keylen); +static inline bool crypto_ahash_has_setkey (struct crypto_ahash *tfm) +{ +return tfm->has_setkey; +} +/** * crypto_ahash_finup() - update and finalize message digest * @req: reference to the ahash_request handle that holds all information