Skip to content

Commit 75eb8b9

Browse files
committed
Revert "fscrypt: relax Kconfig dependencies for crypto API algorithms"
This mostly reverts commit a0fc203. Keep the relevant parts of the comment added by that commit. The problem with that commit is that it allowed people to create broken configurations that enabled FS_ENCRYPTION but not the mandatory algorithms. An example of this can be found here: https://lore.kernel.org/r/[email protected]/ The commit did allow people to disable specific generic algorithm implementations that aren't needed. But that at best allowed saving a bit of code. In the real world people are unlikely to intentionally and correctly make such a tweak anyway, as they tend to just be confused by what all the different crypto kconfig options mean. Of course we really need the crypto API to enable the correct implementations automatically, but that's for a later fix. Acked-by: Ard Biesheuvel <[email protected]> Cc: David Howells <[email protected]> Cc: Herbert Xu <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Eric Biggers <[email protected]>
1 parent 0ad2507 commit 75eb8b9

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

fs/crypto/Kconfig

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -24,20 +24,16 @@ config FS_ENCRYPTION
2424
#
2525
# Also note that this option only pulls in the generic implementations of the
2626
# algorithms, not any per-architecture optimized implementations. It is
27-
# strongly recommended to enable optimized implementations too. It is safe to
28-
# disable these generic implementations if corresponding optimized
29-
# implementations will always be available too; for this reason, these are soft
30-
# dependencies ('imply' rather than 'select'). Only disable these generic
31-
# implementations if you're sure they will never be needed, though.
27+
# strongly recommended to enable optimized implementations too.
3228
config FS_ENCRYPTION_ALGS
3329
tristate
34-
imply CRYPTO_AES
35-
imply CRYPTO_CBC
36-
imply CRYPTO_CTS
37-
imply CRYPTO_ECB
38-
imply CRYPTO_HMAC
39-
imply CRYPTO_SHA512
40-
imply CRYPTO_XTS
30+
select CRYPTO_AES
31+
select CRYPTO_CBC
32+
select CRYPTO_CTS
33+
select CRYPTO_ECB
34+
select CRYPTO_HMAC
35+
select CRYPTO_SHA512
36+
select CRYPTO_XTS
4137

4238
config FS_ENCRYPTION_INLINE_CRYPT
4339
bool "Enable fscrypt to use inline crypto"

0 commit comments

Comments
 (0)