Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 435578ae authored by Herbert Xu's avatar Herbert Xu
Browse files

crypto: skcipher - Fix request for sync algorithms



When a sync givcipher algorithm is requested, if an async version
of the same algorithm already exists, then we will loop forever
without ever constructing the sync version based on a blkcipher.

This is because we did not include the requested type/mask when
getting a larval for the geniv algorithm that is to be constructed.

Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 409a7363
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -201,8 +201,9 @@ static int crypto_givcipher_default(struct crypto_alg *alg, u32 type, u32 mask)
	int err;

	larval = crypto_larval_lookup(alg->cra_driver_name,
				      (type & ~CRYPTO_ALG_TYPE_MASK) |
				      CRYPTO_ALG_TYPE_GIVCIPHER,
				      CRYPTO_ALG_TYPE_MASK);
				      mask | CRYPTO_ALG_TYPE_MASK);
	err = PTR_ERR(larval);
	if (IS_ERR(larval))
		goto out;