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 <herbert@gondor.apana.org.au>
This commit is contained in:
parent
3eda71676b
commit
988dc01744
1 changed files with 3 additions and 0 deletions
|
@ -290,6 +290,9 @@ static struct crypto_instance *crypto_cts_alloc(struct rtattr **tb)
|
||||||
if (!is_power_of_2(alg->cra_blocksize))
|
if (!is_power_of_2(alg->cra_blocksize))
|
||||||
goto out_put_alg;
|
goto out_put_alg;
|
||||||
|
|
||||||
|
if (strncmp(alg->cra_name, "cbc(", 4))
|
||||||
|
goto out_put_alg;
|
||||||
|
|
||||||
inst = crypto_alloc_instance("cts", alg);
|
inst = crypto_alloc_instance("cts", alg);
|
||||||
if (IS_ERR(inst))
|
if (IS_ERR(inst))
|
||||||
goto out_put_alg;
|
goto out_put_alg;
|
||||||
|
|
Loading…
Add table
Reference in a new issue