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

Commit f4b0277e authored by Jussi Kivilinna's avatar Jussi Kivilinna Committed by Herbert Xu
Browse files

crypto: whirlpool - use crypto_[un]register_shashes



Combine all shash algs to be registered and use new crypto_[un]register_shashes
functions. This simplifies init/exit code.

Signed-off-by: default avatarJussi Kivilinna <jussi.kivilinna@mbnet.fi>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 648b2a10
Loading
Loading
Loading
Loading
+6 −33
Original line number Diff line number Diff line
@@ -1119,7 +1119,7 @@ static int wp256_final(struct shash_desc *desc, u8 *out)
	return 0;
}

static struct shash_alg wp512 = {
static struct shash_alg wp_algs[3] = { {
	.digestsize	=	WP512_DIGEST_SIZE,
	.init		=	wp512_init,
	.update		=	wp512_update,
@@ -1131,9 +1131,7 @@ static struct shash_alg wp512 = {
		.cra_blocksize	=	WP512_BLOCK_SIZE,
		.cra_module	=	THIS_MODULE,
	}
};

static struct shash_alg wp384 = {
}, {
	.digestsize	=	WP384_DIGEST_SIZE,
	.init		=	wp512_init,
	.update		=	wp512_update,
@@ -1145,9 +1143,7 @@ static struct shash_alg wp384 = {
		.cra_blocksize	=	WP512_BLOCK_SIZE,
		.cra_module	=	THIS_MODULE,
	}
};

static struct shash_alg wp256 = {
}, {
	.digestsize	=	WP256_DIGEST_SIZE,
	.init		=	wp512_init,
	.update		=	wp512_update,
@@ -1159,39 +1155,16 @@ static struct shash_alg wp256 = {
		.cra_blocksize	=	WP512_BLOCK_SIZE,
		.cra_module	=	THIS_MODULE,
	}
};
} };

static int __init wp512_mod_init(void)
{
	int ret = 0;

	ret = crypto_register_shash(&wp512);

	if (ret < 0)
		goto out;

	ret = crypto_register_shash(&wp384);
	if (ret < 0)
	{
		crypto_unregister_shash(&wp512);
		goto out;
	}

	ret = crypto_register_shash(&wp256);
	if (ret < 0)
	{
		crypto_unregister_shash(&wp512);
		crypto_unregister_shash(&wp384);
	}
out:
	return ret;
	return crypto_register_shashes(wp_algs, ARRAY_SIZE(wp_algs));
}

static void __exit wp512_mod_fini(void)
{
	crypto_unregister_shash(&wp512);
	crypto_unregister_shash(&wp384);
	crypto_unregister_shash(&wp256);
	crypto_unregister_shashes(wp_algs, ARRAY_SIZE(wp_algs));
}

MODULE_ALIAS("wp384");