Message ID | 1420996667-31693-2-git-send-email-minipli@googlemail.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Herbert Xu |
Headers | show |
On Sun, Jan 11, 2015 at 9:17 AM, Mathias Krause <minipli@googlemail.com> wrote: > Commit 5d26a105b5a7 ("crypto: prefix module autoloading with "crypto-"") > changed the automatic module loading when requesting crypto algorithms > to prefix all module requests with "crypto-". This requires all crypto > modules to have a crypto specific module alias even if their file name > would otherwise match the requested crypto algorithm. > > Even though commit 5d26a105b5a7 added those aliases for a vast amount of > modules, it was missing a few. Add the required MODULE_ALIAS_CRYPTO > annotations to those files to make them get loaded automatically, again. > This fixes, e.g., requesting 'ecb(blowfish-generic)', which used to work > with kernels v3.18 and below. > > Also change MODULE_ALIAS() lines to MODULE_ALIAS_CRYPTO(). The former > won't work for crypto modules any more. > > Fixes: 5d26a105b5a7 ("crypto: prefix module autoloading with "crypto-"") > Cc: Kees Cook <keescook@chromium.org> > Signed-off-by: Mathias Krause <minipli@googlemail.com> Ah, perfect! Thanks for finding the missing ones! Acked-by: Kees Cook <keescook@chromium.org> -Kees > --- > arch/powerpc/crypto/sha1.c | 1 + > arch/x86/crypto/sha-mb/sha1_mb.c | 2 +- > crypto/aes_generic.c | 1 + > crypto/ansi_cprng.c | 1 + > crypto/blowfish_generic.c | 1 + > crypto/camellia_generic.c | 1 + > crypto/cast5_generic.c | 1 + > crypto/cast6_generic.c | 1 + > crypto/crc32c_generic.c | 1 + > crypto/crct10dif_generic.c | 1 + > crypto/des_generic.c | 7 ++++--- > crypto/ghash-generic.c | 1 + > crypto/krng.c | 1 + > crypto/salsa20_generic.c | 1 + > crypto/serpent_generic.c | 1 + > crypto/sha1_generic.c | 1 + > crypto/sha256_generic.c | 2 ++ > crypto/sha512_generic.c | 2 ++ > crypto/tea.c | 1 + > crypto/tgr192.c | 1 + > crypto/twofish_generic.c | 1 + > crypto/wp512.c | 1 + > 22 files changed, 27 insertions(+), 4 deletions(-) > > diff --git a/arch/powerpc/crypto/sha1.c b/arch/powerpc/crypto/sha1.c > index d3feba5a275f..c154cebc1041 100644 > --- a/arch/powerpc/crypto/sha1.c > +++ b/arch/powerpc/crypto/sha1.c > @@ -154,4 +154,5 @@ module_exit(sha1_powerpc_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("SHA1 Secure Hash Algorithm"); > > +MODULE_ALIAS_CRYPTO("sha1"); > MODULE_ALIAS_CRYPTO("sha1-powerpc"); > diff --git a/arch/x86/crypto/sha-mb/sha1_mb.c b/arch/x86/crypto/sha-mb/sha1_mb.c > index a225a5ca1037..fd9f6b035b16 100644 > --- a/arch/x86/crypto/sha-mb/sha1_mb.c > +++ b/arch/x86/crypto/sha-mb/sha1_mb.c > @@ -931,4 +931,4 @@ module_exit(sha1_mb_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("SHA1 Secure Hash Algorithm, multi buffer accelerated"); > > -MODULE_ALIAS("sha1"); > +MODULE_ALIAS_CRYPTO("sha1"); > diff --git a/crypto/aes_generic.c b/crypto/aes_generic.c > index 9b3c54c1cbe8..3dd101144a58 100644 > --- a/crypto/aes_generic.c > +++ b/crypto/aes_generic.c > @@ -1475,3 +1475,4 @@ module_exit(aes_fini); > MODULE_DESCRIPTION("Rijndael (AES) Cipher Algorithm"); > MODULE_LICENSE("Dual BSD/GPL"); > MODULE_ALIAS_CRYPTO("aes"); > +MODULE_ALIAS_CRYPTO("aes-generic"); > diff --git a/crypto/ansi_cprng.c b/crypto/ansi_cprng.c > index b4485a108389..6f5bebc9bf01 100644 > --- a/crypto/ansi_cprng.c > +++ b/crypto/ansi_cprng.c > @@ -477,3 +477,4 @@ MODULE_PARM_DESC(dbg, "Boolean to enable debugging (0/1 == off/on)"); > module_init(prng_mod_init); > module_exit(prng_mod_fini); > MODULE_ALIAS_CRYPTO("stdrng"); > +MODULE_ALIAS_CRYPTO("ansi_cprng"); > diff --git a/crypto/blowfish_generic.c b/crypto/blowfish_generic.c > index 7bd71f02d0dd..87b392a77a93 100644 > --- a/crypto/blowfish_generic.c > +++ b/crypto/blowfish_generic.c > @@ -139,3 +139,4 @@ module_exit(blowfish_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("Blowfish Cipher Algorithm"); > MODULE_ALIAS_CRYPTO("blowfish"); > +MODULE_ALIAS_CRYPTO("blowfish-generic"); > diff --git a/crypto/camellia_generic.c b/crypto/camellia_generic.c > index 1b74c5a3e891..a02286bf319e 100644 > --- a/crypto/camellia_generic.c > +++ b/crypto/camellia_generic.c > @@ -1099,3 +1099,4 @@ module_exit(camellia_fini); > MODULE_DESCRIPTION("Camellia Cipher Algorithm"); > MODULE_LICENSE("GPL"); > MODULE_ALIAS_CRYPTO("camellia"); > +MODULE_ALIAS_CRYPTO("camellia-generic"); > diff --git a/crypto/cast5_generic.c b/crypto/cast5_generic.c > index 84c86db67ec7..df5c72629383 100644 > --- a/crypto/cast5_generic.c > +++ b/crypto/cast5_generic.c > @@ -550,3 +550,4 @@ module_exit(cast5_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("Cast5 Cipher Algorithm"); > MODULE_ALIAS_CRYPTO("cast5"); > +MODULE_ALIAS_CRYPTO("cast5-generic"); > diff --git a/crypto/cast6_generic.c b/crypto/cast6_generic.c > index f408f0bd8de2..058c8d755d03 100644 > --- a/crypto/cast6_generic.c > +++ b/crypto/cast6_generic.c > @@ -292,3 +292,4 @@ module_exit(cast6_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("Cast6 Cipher Algorithm"); > MODULE_ALIAS_CRYPTO("cast6"); > +MODULE_ALIAS_CRYPTO("cast6-generic"); > diff --git a/crypto/crc32c_generic.c b/crypto/crc32c_generic.c > index 2a062025749d..06f1b60f02b2 100644 > --- a/crypto/crc32c_generic.c > +++ b/crypto/crc32c_generic.c > @@ -171,4 +171,5 @@ MODULE_AUTHOR("Clay Haapala <chaapala@cisco.com>"); > MODULE_DESCRIPTION("CRC32c (Castagnoli) calculations wrapper for lib/crc32c"); > MODULE_LICENSE("GPL"); > MODULE_ALIAS_CRYPTO("crc32c"); > +MODULE_ALIAS_CRYPTO("crc32c-generic"); > MODULE_SOFTDEP("pre: crc32c"); > diff --git a/crypto/crct10dif_generic.c b/crypto/crct10dif_generic.c > index 08bb4f504520..c1229614c7e3 100644 > --- a/crypto/crct10dif_generic.c > +++ b/crypto/crct10dif_generic.c > @@ -125,3 +125,4 @@ MODULE_AUTHOR("Tim Chen <tim.c.chen@linux.intel.com>"); > MODULE_DESCRIPTION("T10 DIF CRC calculation."); > MODULE_LICENSE("GPL"); > MODULE_ALIAS_CRYPTO("crct10dif"); > +MODULE_ALIAS_CRYPTO("crct10dif-generic"); > diff --git a/crypto/des_generic.c b/crypto/des_generic.c > index 42912948776b..a71720544d11 100644 > --- a/crypto/des_generic.c > +++ b/crypto/des_generic.c > @@ -983,8 +983,6 @@ static struct crypto_alg des_algs[2] = { { > .cia_decrypt = des3_ede_decrypt } } > } }; > > -MODULE_ALIAS_CRYPTO("des3_ede"); > - > static int __init des_generic_mod_init(void) > { > return crypto_register_algs(des_algs, ARRAY_SIZE(des_algs)); > @@ -1001,4 +999,7 @@ module_exit(des_generic_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("DES & Triple DES EDE Cipher Algorithms"); > MODULE_AUTHOR("Dag Arne Osvik <da@osvik.no>"); > -MODULE_ALIAS("des"); > +MODULE_ALIAS_CRYPTO("des"); > +MODULE_ALIAS_CRYPTO("des-generic"); > +MODULE_ALIAS_CRYPTO("des3_ede"); > +MODULE_ALIAS_CRYPTO("des3_ede-generic"); > diff --git a/crypto/ghash-generic.c b/crypto/ghash-generic.c > index 4e97fae9666f..bac70995e064 100644 > --- a/crypto/ghash-generic.c > +++ b/crypto/ghash-generic.c > @@ -173,3 +173,4 @@ module_exit(ghash_mod_exit); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("GHASH Message Digest Algorithm"); > MODULE_ALIAS_CRYPTO("ghash"); > +MODULE_ALIAS_CRYPTO("ghash-generic"); > diff --git a/crypto/krng.c b/crypto/krng.c > index 67c88b331210..0224841b6579 100644 > --- a/crypto/krng.c > +++ b/crypto/krng.c > @@ -63,3 +63,4 @@ module_exit(krng_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("Kernel Random Number Generator"); > MODULE_ALIAS_CRYPTO("stdrng"); > +MODULE_ALIAS_CRYPTO("krng"); > diff --git a/crypto/salsa20_generic.c b/crypto/salsa20_generic.c > index 3d0f9df30ac9..f550b5d94630 100644 > --- a/crypto/salsa20_generic.c > +++ b/crypto/salsa20_generic.c > @@ -249,3 +249,4 @@ module_exit(salsa20_generic_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION ("Salsa20 stream cipher algorithm"); > MODULE_ALIAS_CRYPTO("salsa20"); > +MODULE_ALIAS_CRYPTO("salsa20-generic"); > diff --git a/crypto/serpent_generic.c b/crypto/serpent_generic.c > index a53b5e2af335..94970a794975 100644 > --- a/crypto/serpent_generic.c > +++ b/crypto/serpent_generic.c > @@ -667,3 +667,4 @@ MODULE_DESCRIPTION("Serpent and tnepres (kerneli compatible serpent reversed) Ci > MODULE_AUTHOR("Dag Arne Osvik <osvik@ii.uib.no>"); > MODULE_ALIAS_CRYPTO("tnepres"); > MODULE_ALIAS_CRYPTO("serpent"); > +MODULE_ALIAS_CRYPTO("serpent-generic"); > diff --git a/crypto/sha1_generic.c b/crypto/sha1_generic.c > index 039e58cfa155..a3e50c37eb6f 100644 > --- a/crypto/sha1_generic.c > +++ b/crypto/sha1_generic.c > @@ -154,3 +154,4 @@ MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("SHA1 Secure Hash Algorithm"); > > MODULE_ALIAS_CRYPTO("sha1"); > +MODULE_ALIAS_CRYPTO("sha1-generic"); > diff --git a/crypto/sha256_generic.c b/crypto/sha256_generic.c > index 5eb21b120033..b001ff5c2efc 100644 > --- a/crypto/sha256_generic.c > +++ b/crypto/sha256_generic.c > @@ -385,4 +385,6 @@ MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("SHA-224 and SHA-256 Secure Hash Algorithm"); > > MODULE_ALIAS_CRYPTO("sha224"); > +MODULE_ALIAS_CRYPTO("sha224-generic"); > MODULE_ALIAS_CRYPTO("sha256"); > +MODULE_ALIAS_CRYPTO("sha256-generic"); > diff --git a/crypto/sha512_generic.c b/crypto/sha512_generic.c > index 8d0b19ed4f4b..1c3c3767e079 100644 > --- a/crypto/sha512_generic.c > +++ b/crypto/sha512_generic.c > @@ -289,4 +289,6 @@ MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("SHA-512 and SHA-384 Secure Hash Algorithms"); > > MODULE_ALIAS_CRYPTO("sha384"); > +MODULE_ALIAS_CRYPTO("sha384-generic"); > MODULE_ALIAS_CRYPTO("sha512"); > +MODULE_ALIAS_CRYPTO("sha512-generic"); > diff --git a/crypto/tea.c b/crypto/tea.c > index 495be2d0077d..b70b441c7d1e 100644 > --- a/crypto/tea.c > +++ b/crypto/tea.c > @@ -270,6 +270,7 @@ static void __exit tea_mod_fini(void) > crypto_unregister_algs(tea_algs, ARRAY_SIZE(tea_algs)); > } > > +MODULE_ALIAS_CRYPTO("tea"); > MODULE_ALIAS_CRYPTO("xtea"); > MODULE_ALIAS_CRYPTO("xeta"); > > diff --git a/crypto/tgr192.c b/crypto/tgr192.c > index 6e5651c66cf8..321bc6ff2a9d 100644 > --- a/crypto/tgr192.c > +++ b/crypto/tgr192.c > @@ -676,6 +676,7 @@ static void __exit tgr192_mod_fini(void) > crypto_unregister_shashes(tgr_algs, ARRAY_SIZE(tgr_algs)); > } > > +MODULE_ALIAS_CRYPTO("tgr192"); > MODULE_ALIAS_CRYPTO("tgr160"); > MODULE_ALIAS_CRYPTO("tgr128"); > > diff --git a/crypto/twofish_generic.c b/crypto/twofish_generic.c > index 523ad8c4e359..ebf7a3efb572 100644 > --- a/crypto/twofish_generic.c > +++ b/crypto/twofish_generic.c > @@ -212,3 +212,4 @@ module_exit(twofish_mod_fini); > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION ("Twofish Cipher Algorithm"); > MODULE_ALIAS_CRYPTO("twofish"); > +MODULE_ALIAS_CRYPTO("twofish-generic"); > diff --git a/crypto/wp512.c b/crypto/wp512.c > index 0de42eb3d040..7ee5a043a988 100644 > --- a/crypto/wp512.c > +++ b/crypto/wp512.c > @@ -1167,6 +1167,7 @@ static void __exit wp512_mod_fini(void) > crypto_unregister_shashes(wp_algs, ARRAY_SIZE(wp_algs)); > } > > +MODULE_ALIAS_CRYPTO("wp512"); > MODULE_ALIAS_CRYPTO("wp384"); > MODULE_ALIAS_CRYPTO("wp256"); > > -- > 1.7.10.4 >
diff --git a/arch/powerpc/crypto/sha1.c b/arch/powerpc/crypto/sha1.c index d3feba5a275f..c154cebc1041 100644 --- a/arch/powerpc/crypto/sha1.c +++ b/arch/powerpc/crypto/sha1.c @@ -154,4 +154,5 @@ module_exit(sha1_powerpc_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("SHA1 Secure Hash Algorithm"); +MODULE_ALIAS_CRYPTO("sha1"); MODULE_ALIAS_CRYPTO("sha1-powerpc"); diff --git a/arch/x86/crypto/sha-mb/sha1_mb.c b/arch/x86/crypto/sha-mb/sha1_mb.c index a225a5ca1037..fd9f6b035b16 100644 --- a/arch/x86/crypto/sha-mb/sha1_mb.c +++ b/arch/x86/crypto/sha-mb/sha1_mb.c @@ -931,4 +931,4 @@ module_exit(sha1_mb_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("SHA1 Secure Hash Algorithm, multi buffer accelerated"); -MODULE_ALIAS("sha1"); +MODULE_ALIAS_CRYPTO("sha1"); diff --git a/crypto/aes_generic.c b/crypto/aes_generic.c index 9b3c54c1cbe8..3dd101144a58 100644 --- a/crypto/aes_generic.c +++ b/crypto/aes_generic.c @@ -1475,3 +1475,4 @@ module_exit(aes_fini); MODULE_DESCRIPTION("Rijndael (AES) Cipher Algorithm"); MODULE_LICENSE("Dual BSD/GPL"); MODULE_ALIAS_CRYPTO("aes"); +MODULE_ALIAS_CRYPTO("aes-generic"); diff --git a/crypto/ansi_cprng.c b/crypto/ansi_cprng.c index b4485a108389..6f5bebc9bf01 100644 --- a/crypto/ansi_cprng.c +++ b/crypto/ansi_cprng.c @@ -477,3 +477,4 @@ MODULE_PARM_DESC(dbg, "Boolean to enable debugging (0/1 == off/on)"); module_init(prng_mod_init); module_exit(prng_mod_fini); MODULE_ALIAS_CRYPTO("stdrng"); +MODULE_ALIAS_CRYPTO("ansi_cprng"); diff --git a/crypto/blowfish_generic.c b/crypto/blowfish_generic.c index 7bd71f02d0dd..87b392a77a93 100644 --- a/crypto/blowfish_generic.c +++ b/crypto/blowfish_generic.c @@ -139,3 +139,4 @@ module_exit(blowfish_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Blowfish Cipher Algorithm"); MODULE_ALIAS_CRYPTO("blowfish"); +MODULE_ALIAS_CRYPTO("blowfish-generic"); diff --git a/crypto/camellia_generic.c b/crypto/camellia_generic.c index 1b74c5a3e891..a02286bf319e 100644 --- a/crypto/camellia_generic.c +++ b/crypto/camellia_generic.c @@ -1099,3 +1099,4 @@ module_exit(camellia_fini); MODULE_DESCRIPTION("Camellia Cipher Algorithm"); MODULE_LICENSE("GPL"); MODULE_ALIAS_CRYPTO("camellia"); +MODULE_ALIAS_CRYPTO("camellia-generic"); diff --git a/crypto/cast5_generic.c b/crypto/cast5_generic.c index 84c86db67ec7..df5c72629383 100644 --- a/crypto/cast5_generic.c +++ b/crypto/cast5_generic.c @@ -550,3 +550,4 @@ module_exit(cast5_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Cast5 Cipher Algorithm"); MODULE_ALIAS_CRYPTO("cast5"); +MODULE_ALIAS_CRYPTO("cast5-generic"); diff --git a/crypto/cast6_generic.c b/crypto/cast6_generic.c index f408f0bd8de2..058c8d755d03 100644 --- a/crypto/cast6_generic.c +++ b/crypto/cast6_generic.c @@ -292,3 +292,4 @@ module_exit(cast6_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Cast6 Cipher Algorithm"); MODULE_ALIAS_CRYPTO("cast6"); +MODULE_ALIAS_CRYPTO("cast6-generic"); diff --git a/crypto/crc32c_generic.c b/crypto/crc32c_generic.c index 2a062025749d..06f1b60f02b2 100644 --- a/crypto/crc32c_generic.c +++ b/crypto/crc32c_generic.c @@ -171,4 +171,5 @@ MODULE_AUTHOR("Clay Haapala <chaapala@cisco.com>"); MODULE_DESCRIPTION("CRC32c (Castagnoli) calculations wrapper for lib/crc32c"); MODULE_LICENSE("GPL"); MODULE_ALIAS_CRYPTO("crc32c"); +MODULE_ALIAS_CRYPTO("crc32c-generic"); MODULE_SOFTDEP("pre: crc32c"); diff --git a/crypto/crct10dif_generic.c b/crypto/crct10dif_generic.c index 08bb4f504520..c1229614c7e3 100644 --- a/crypto/crct10dif_generic.c +++ b/crypto/crct10dif_generic.c @@ -125,3 +125,4 @@ MODULE_AUTHOR("Tim Chen <tim.c.chen@linux.intel.com>"); MODULE_DESCRIPTION("T10 DIF CRC calculation."); MODULE_LICENSE("GPL"); MODULE_ALIAS_CRYPTO("crct10dif"); +MODULE_ALIAS_CRYPTO("crct10dif-generic"); diff --git a/crypto/des_generic.c b/crypto/des_generic.c index 42912948776b..a71720544d11 100644 --- a/crypto/des_generic.c +++ b/crypto/des_generic.c @@ -983,8 +983,6 @@ static struct crypto_alg des_algs[2] = { { .cia_decrypt = des3_ede_decrypt } } } }; -MODULE_ALIAS_CRYPTO("des3_ede"); - static int __init des_generic_mod_init(void) { return crypto_register_algs(des_algs, ARRAY_SIZE(des_algs)); @@ -1001,4 +999,7 @@ module_exit(des_generic_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("DES & Triple DES EDE Cipher Algorithms"); MODULE_AUTHOR("Dag Arne Osvik <da@osvik.no>"); -MODULE_ALIAS("des"); +MODULE_ALIAS_CRYPTO("des"); +MODULE_ALIAS_CRYPTO("des-generic"); +MODULE_ALIAS_CRYPTO("des3_ede"); +MODULE_ALIAS_CRYPTO("des3_ede-generic"); diff --git a/crypto/ghash-generic.c b/crypto/ghash-generic.c index 4e97fae9666f..bac70995e064 100644 --- a/crypto/ghash-generic.c +++ b/crypto/ghash-generic.c @@ -173,3 +173,4 @@ module_exit(ghash_mod_exit); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("GHASH Message Digest Algorithm"); MODULE_ALIAS_CRYPTO("ghash"); +MODULE_ALIAS_CRYPTO("ghash-generic"); diff --git a/crypto/krng.c b/crypto/krng.c index 67c88b331210..0224841b6579 100644 --- a/crypto/krng.c +++ b/crypto/krng.c @@ -63,3 +63,4 @@ module_exit(krng_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Kernel Random Number Generator"); MODULE_ALIAS_CRYPTO("stdrng"); +MODULE_ALIAS_CRYPTO("krng"); diff --git a/crypto/salsa20_generic.c b/crypto/salsa20_generic.c index 3d0f9df30ac9..f550b5d94630 100644 --- a/crypto/salsa20_generic.c +++ b/crypto/salsa20_generic.c @@ -249,3 +249,4 @@ module_exit(salsa20_generic_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION ("Salsa20 stream cipher algorithm"); MODULE_ALIAS_CRYPTO("salsa20"); +MODULE_ALIAS_CRYPTO("salsa20-generic"); diff --git a/crypto/serpent_generic.c b/crypto/serpent_generic.c index a53b5e2af335..94970a794975 100644 --- a/crypto/serpent_generic.c +++ b/crypto/serpent_generic.c @@ -667,3 +667,4 @@ MODULE_DESCRIPTION("Serpent and tnepres (kerneli compatible serpent reversed) Ci MODULE_AUTHOR("Dag Arne Osvik <osvik@ii.uib.no>"); MODULE_ALIAS_CRYPTO("tnepres"); MODULE_ALIAS_CRYPTO("serpent"); +MODULE_ALIAS_CRYPTO("serpent-generic"); diff --git a/crypto/sha1_generic.c b/crypto/sha1_generic.c index 039e58cfa155..a3e50c37eb6f 100644 --- a/crypto/sha1_generic.c +++ b/crypto/sha1_generic.c @@ -154,3 +154,4 @@ MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("SHA1 Secure Hash Algorithm"); MODULE_ALIAS_CRYPTO("sha1"); +MODULE_ALIAS_CRYPTO("sha1-generic"); diff --git a/crypto/sha256_generic.c b/crypto/sha256_generic.c index 5eb21b120033..b001ff5c2efc 100644 --- a/crypto/sha256_generic.c +++ b/crypto/sha256_generic.c @@ -385,4 +385,6 @@ MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("SHA-224 and SHA-256 Secure Hash Algorithm"); MODULE_ALIAS_CRYPTO("sha224"); +MODULE_ALIAS_CRYPTO("sha224-generic"); MODULE_ALIAS_CRYPTO("sha256"); +MODULE_ALIAS_CRYPTO("sha256-generic"); diff --git a/crypto/sha512_generic.c b/crypto/sha512_generic.c index 8d0b19ed4f4b..1c3c3767e079 100644 --- a/crypto/sha512_generic.c +++ b/crypto/sha512_generic.c @@ -289,4 +289,6 @@ MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("SHA-512 and SHA-384 Secure Hash Algorithms"); MODULE_ALIAS_CRYPTO("sha384"); +MODULE_ALIAS_CRYPTO("sha384-generic"); MODULE_ALIAS_CRYPTO("sha512"); +MODULE_ALIAS_CRYPTO("sha512-generic"); diff --git a/crypto/tea.c b/crypto/tea.c index 495be2d0077d..b70b441c7d1e 100644 --- a/crypto/tea.c +++ b/crypto/tea.c @@ -270,6 +270,7 @@ static void __exit tea_mod_fini(void) crypto_unregister_algs(tea_algs, ARRAY_SIZE(tea_algs)); } +MODULE_ALIAS_CRYPTO("tea"); MODULE_ALIAS_CRYPTO("xtea"); MODULE_ALIAS_CRYPTO("xeta"); diff --git a/crypto/tgr192.c b/crypto/tgr192.c index 6e5651c66cf8..321bc6ff2a9d 100644 --- a/crypto/tgr192.c +++ b/crypto/tgr192.c @@ -676,6 +676,7 @@ static void __exit tgr192_mod_fini(void) crypto_unregister_shashes(tgr_algs, ARRAY_SIZE(tgr_algs)); } +MODULE_ALIAS_CRYPTO("tgr192"); MODULE_ALIAS_CRYPTO("tgr160"); MODULE_ALIAS_CRYPTO("tgr128"); diff --git a/crypto/twofish_generic.c b/crypto/twofish_generic.c index 523ad8c4e359..ebf7a3efb572 100644 --- a/crypto/twofish_generic.c +++ b/crypto/twofish_generic.c @@ -212,3 +212,4 @@ module_exit(twofish_mod_fini); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION ("Twofish Cipher Algorithm"); MODULE_ALIAS_CRYPTO("twofish"); +MODULE_ALIAS_CRYPTO("twofish-generic"); diff --git a/crypto/wp512.c b/crypto/wp512.c index 0de42eb3d040..7ee5a043a988 100644 --- a/crypto/wp512.c +++ b/crypto/wp512.c @@ -1167,6 +1167,7 @@ static void __exit wp512_mod_fini(void) crypto_unregister_shashes(wp_algs, ARRAY_SIZE(wp_algs)); } +MODULE_ALIAS_CRYPTO("wp512"); MODULE_ALIAS_CRYPTO("wp384"); MODULE_ALIAS_CRYPTO("wp256");
Commit 5d26a105b5a7 ("crypto: prefix module autoloading with "crypto-"") changed the automatic module loading when requesting crypto algorithms to prefix all module requests with "crypto-". This requires all crypto modules to have a crypto specific module alias even if their file name would otherwise match the requested crypto algorithm. Even though commit 5d26a105b5a7 added those aliases for a vast amount of modules, it was missing a few. Add the required MODULE_ALIAS_CRYPTO annotations to those files to make them get loaded automatically, again. This fixes, e.g., requesting 'ecb(blowfish-generic)', which used to work with kernels v3.18 and below. Also change MODULE_ALIAS() lines to MODULE_ALIAS_CRYPTO(). The former won't work for crypto modules any more. Fixes: 5d26a105b5a7 ("crypto: prefix module autoloading with "crypto-"") Cc: Kees Cook <keescook@chromium.org> Signed-off-by: Mathias Krause <minipli@googlemail.com> --- arch/powerpc/crypto/sha1.c | 1 + arch/x86/crypto/sha-mb/sha1_mb.c | 2 +- crypto/aes_generic.c | 1 + crypto/ansi_cprng.c | 1 + crypto/blowfish_generic.c | 1 + crypto/camellia_generic.c | 1 + crypto/cast5_generic.c | 1 + crypto/cast6_generic.c | 1 + crypto/crc32c_generic.c | 1 + crypto/crct10dif_generic.c | 1 + crypto/des_generic.c | 7 ++++--- crypto/ghash-generic.c | 1 + crypto/krng.c | 1 + crypto/salsa20_generic.c | 1 + crypto/serpent_generic.c | 1 + crypto/sha1_generic.c | 1 + crypto/sha256_generic.c | 2 ++ crypto/sha512_generic.c | 2 ++ crypto/tea.c | 1 + crypto/tgr192.c | 1 + crypto/twofish_generic.c | 1 + crypto/wp512.c | 1 + 22 files changed, 27 insertions(+), 4 deletions(-)