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

Commit d6ebf528 authored by Eric Biggers's avatar Eric Biggers Committed by Herbert Xu
Browse files

crypto: make all generic algorithms set cra_driver_name



Most generic crypto algorithms declare a driver name ending in
"-generic".  The rest don't declare a driver name and instead rely on
the crypto API automagically appending "-generic" upon registration.

Having multiple conventions is unnecessarily confusing and makes it
harder to grep for all generic algorithms in the kernel source tree.
But also, allowing NULL driver names is problematic because sometimes
people fail to set it, e.g. the case fixed by commit 41798036
("crypto: cavium/zip - fix collision with generic cra_driver_name").

Of course, people can also incorrectly name their drivers "-generic".
But that's much easier to notice / grep for.

Therefore, let's make cra_driver_name mandatory.  In preparation for
this, this patch makes all generic algorithms set cra_driver_name.

Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 7545b6c2
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -673,6 +673,7 @@ static void anubis_decrypt(struct crypto_tfm *tfm, u8 *dst, const u8 *src)

static struct crypto_alg anubis_alg = {
	.cra_name		=	"anubis",
	.cra_driver_name	=	"anubis-generic",
	.cra_flags		=	CRYPTO_ALG_TYPE_CIPHER,
	.cra_blocksize		=	ANUBIS_BLOCK_SIZE,
	.cra_ctxsize		=	sizeof (struct anubis_ctx),
+2 −0
Original line number Diff line number Diff line
@@ -115,6 +115,7 @@ static int ecb_arc4_crypt(struct skcipher_request *req)

static struct crypto_alg arc4_cipher = {
	.cra_name		=	"arc4",
	.cra_driver_name	=	"arc4-generic",
	.cra_flags		=	CRYPTO_ALG_TYPE_CIPHER,
	.cra_blocksize		=	ARC4_BLOCK_SIZE,
	.cra_ctxsize		=	sizeof(struct arc4_ctx),
@@ -132,6 +133,7 @@ static struct crypto_alg arc4_cipher = {

static struct skcipher_alg arc4_skcipher = {
	.base.cra_name		=	"ecb(arc4)",
	.base.cra_driver_name	=	"ecb(arc4)-generic",
	.base.cra_priority	=	100,
	.base.cra_blocksize	=	ARC4_BLOCK_SIZE,
	.base.cra_ctxsize	=	sizeof(struct arc4_ctx),
+3 −0
Original line number Diff line number Diff line
@@ -105,6 +105,7 @@ static struct shash_alg digest_null = {
	.final  		=	null_final,
	.base			=	{
		.cra_name		=	"digest_null",
		.cra_driver_name	=	"digest_null-generic",
		.cra_blocksize		=	NULL_BLOCK_SIZE,
		.cra_module		=	THIS_MODULE,
	}
@@ -127,6 +128,7 @@ static struct skcipher_alg skcipher_null = {

static struct crypto_alg null_algs[] = { {
	.cra_name		=	"cipher_null",
	.cra_driver_name	=	"cipher_null-generic",
	.cra_flags		=	CRYPTO_ALG_TYPE_CIPHER,
	.cra_blocksize		=	NULL_BLOCK_SIZE,
	.cra_ctxsize		=	0,
@@ -139,6 +141,7 @@ static struct crypto_alg null_algs[] = { {
	.cia_decrypt		=	null_crypt } }
}, {
	.cra_name		=	"compress_null",
	.cra_driver_name	=	"compress_null-generic",
	.cra_flags		=	CRYPTO_ALG_TYPE_COMPRESS,
	.cra_blocksize		=	NULL_BLOCK_SIZE,
	.cra_ctxsize		=	0,
+1 −0
Original line number Diff line number Diff line
@@ -279,6 +279,7 @@ static int deflate_sdecompress(struct crypto_scomp *tfm, const u8 *src,

static struct crypto_alg alg = {
	.cra_name		= "deflate",
	.cra_driver_name	= "deflate-generic",
	.cra_flags		= CRYPTO_ALG_TYPE_COMPRESS,
	.cra_ctxsize		= sizeof(struct deflate_ctx),
	.cra_module		= THIS_MODULE,
+1 −0
Original line number Diff line number Diff line
@@ -391,6 +391,7 @@ static int fcrypt_setkey(struct crypto_tfm *tfm, const u8 *key, unsigned int key

static struct crypto_alg fcrypt_alg = {
	.cra_name		=	"fcrypt",
	.cra_driver_name	=	"fcrypt-generic",
	.cra_flags		=	CRYPTO_ALG_TYPE_CIPHER,
	.cra_blocksize		=	8,
	.cra_ctxsize		=	sizeof(struct fcrypt_ctx),
Loading