forked from Minki/linux
crypto: aead - Add skcipher null for IV generators
This patch adds an skcipher null object alongside the existing null blkcipher so that IV generators using it can switch over to skcipher. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
1e1f006112
commit
ca0494c093
@ -294,10 +294,15 @@ int aead_init_geniv(struct crypto_aead *aead)
|
||||
if (err)
|
||||
goto out;
|
||||
|
||||
ctx->sknull = crypto_get_default_null_skcipher2();
|
||||
err = PTR_ERR(ctx->sknull);
|
||||
if (IS_ERR(ctx->sknull))
|
||||
goto out;
|
||||
|
||||
ctx->null = crypto_get_default_null_skcipher();
|
||||
err = PTR_ERR(ctx->null);
|
||||
if (IS_ERR(ctx->null))
|
||||
goto out;
|
||||
goto drop_sknull;
|
||||
|
||||
child = crypto_spawn_aead(aead_instance_ctx(inst));
|
||||
err = PTR_ERR(child);
|
||||
@ -315,6 +320,8 @@ out:
|
||||
|
||||
drop_null:
|
||||
crypto_put_default_null_skcipher();
|
||||
drop_sknull:
|
||||
crypto_put_default_null_skcipher2();
|
||||
goto out;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(aead_init_geniv);
|
||||
@ -325,6 +332,7 @@ void aead_exit_geniv(struct crypto_aead *tfm)
|
||||
|
||||
crypto_free_aead(ctx->child);
|
||||
crypto_put_default_null_skcipher();
|
||||
crypto_put_default_null_skcipher2();
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(aead_exit_geniv);
|
||||
|
||||
|
@ -21,6 +21,7 @@ struct aead_geniv_ctx {
|
||||
spinlock_t lock;
|
||||
struct crypto_aead *child;
|
||||
struct crypto_blkcipher *null;
|
||||
struct crypto_skcipher *sknull;
|
||||
u8 salt[] __attribute__ ((aligned(__alignof__(u32))));
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user