Commit e13f0f6d authored by Herbert Xu's avatar Herbert Xu
Browse files

crypto: aead - Propagate new AEAD implementation flag for IV generators



This patch allows the CRYPTO_ALG_AEAD_NEW flag to be propagated.

Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 5964f26c
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -604,7 +604,7 @@ struct aead_instance *aead_geniv_alloc(struct crypto_template *tmpl,
		return ERR_CAST(algt);

	if ((algt->type ^ (CRYPTO_ALG_TYPE_AEAD | CRYPTO_ALG_GENIV)) &
	    algt->mask)
	    algt->mask & ~CRYPTO_ALG_AEAD_NEW)
		return ERR_PTR(-EINVAL);

	name = crypto_attr_alg_name(tb[1]);
@@ -683,7 +683,8 @@ struct aead_instance *aead_geniv_alloc(struct crypto_template *tmpl,
	    CRYPTO_MAX_ALG_NAME)
		goto err_drop_alg;

	inst->alg.base.cra_flags = alg->base.cra_flags & CRYPTO_ALG_ASYNC;
	inst->alg.base.cra_flags = alg->base.cra_flags &
				   (CRYPTO_ALG_ASYNC | CRYPTO_ALG_AEAD_NEW);
	inst->alg.base.cra_priority = alg->base.cra_priority;
	inst->alg.base.cra_blocksize = alg->base.cra_blocksize;
	inst->alg.base.cra_alignmask = alg->base.cra_alignmask;