diff options
Diffstat (limited to 'crypto/api.c')
| -rw-r--r-- | crypto/api.c | 17 | 
1 files changed, 8 insertions, 9 deletions
| diff --git a/crypto/api.c b/crypto/api.c index 38a2bc02a98c..314dab96840e 100644 --- a/crypto/api.c +++ b/crypto/api.c @@ -255,7 +255,7 @@ struct crypto_alg *crypto_alg_mod_lookup(const char *name, u32 type, u32 mask)  	struct crypto_alg *larval;  	int ok; -	if (!(mask & CRYPTO_ALG_TESTED)) { +	if (!((type | mask) & CRYPTO_ALG_TESTED)) {  		type |= CRYPTO_ALG_TESTED;  		mask |= CRYPTO_ALG_TESTED;  	} @@ -464,8 +464,8 @@ err:  }  EXPORT_SYMBOL_GPL(crypto_alloc_base); -struct crypto_tfm *crypto_create_tfm(struct crypto_alg *alg, -				     const struct crypto_type *frontend) +void *crypto_create_tfm(struct crypto_alg *alg, +			const struct crypto_type *frontend)  {  	char *mem;  	struct crypto_tfm *tfm = NULL; @@ -499,9 +499,9 @@ out_free_tfm:  		crypto_shoot_alg(alg);  	kfree(mem);  out_err: -	tfm = ERR_PTR(err); +	mem = ERR_PTR(err);  out: -	return tfm; +	return mem;  }  EXPORT_SYMBOL_GPL(crypto_create_tfm); @@ -525,12 +525,11 @@ EXPORT_SYMBOL_GPL(crypto_create_tfm);   *   *	In case of error the return value is an error pointer.   */ -struct crypto_tfm *crypto_alloc_tfm(const char *alg_name, -				    const struct crypto_type *frontend, -				    u32 type, u32 mask) +void *crypto_alloc_tfm(const char *alg_name, +		       const struct crypto_type *frontend, u32 type, u32 mask)  {  	struct crypto_alg *(*lookup)(const char *name, u32 type, u32 mask); -	struct crypto_tfm *tfm; +	void *tfm;  	int err;  	type &= frontend->maskclear; | 
