From: Herbert Xu Date: Fri, 16 Jan 2015 08:38:17 +0000 (+1100) Subject: crypto: cts - Weed out non-CBC algorithms X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=988dc0174411ad4b98c173f3d7d25aca9e56cd85;p=linux-beck.git crypto: cts - Weed out non-CBC algorithms The cts algorithm as currently implemented assumes the underlying is a CBC-mode algorithm. So this patch adds a check for that to eliminate bogus combinations of cts with non-CBC modes. Signed-off-by: Herbert Xu --- diff --git a/crypto/cts.c b/crypto/cts.c index 6a8089c4d4b4..e467ec0acf9f 100644 --- a/crypto/cts.c +++ b/crypto/cts.c @@ -290,6 +290,9 @@ static struct crypto_instance *crypto_cts_alloc(struct rtattr **tb) if (!is_power_of_2(alg->cra_blocksize)) goto out_put_alg; + if (strncmp(alg->cra_name, "cbc(", 4)) + goto out_put_alg; + inst = crypto_alloc_instance("cts", alg); if (IS_ERR(inst)) goto out_put_alg;