From c4d4ade9d00e65112b93640bd3a0eeb50279a202 Mon Sep 17 00:00:00 2001 From: Mounir IDRASSI Date: Sat, 13 Aug 2016 02:40:45 +0200 Subject: Windows: Show only supported encryption algorithm in the system encryption wizard for MBR --- src/Common/Crypto.c | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) (limited to 'src/Common/Crypto.c') diff --git a/src/Common/Crypto.c b/src/Common/Crypto.c index e9a3da68..f3045d0c 100644 --- a/src/Common/Crypto.c +++ b/src/Common/Crypto.c @@ -73,21 +73,21 @@ static EncryptionAlgorithm EncryptionAlgorithms[] = #ifndef TC_WINDOWS_BOOT - { { 0, 0 }, { 0, 0}, 0 }, // Must be all-zero - { { AES, 0 }, { XTS, 0 }, 1 }, - { { SERPENT, 0 }, { XTS, 0 }, 1 }, - { { TWOFISH, 0 }, { XTS, 0 }, 1 }, - { { CAMELLIA, 0 }, { XTS, 0 }, 1 }, + { { 0, 0 }, { 0, 0}, 0, 0 }, // Must be all-zero + { { AES, 0 }, { XTS, 0 }, 1, 1 }, + { { SERPENT, 0 }, { XTS, 0 }, 1, 1 }, + { { TWOFISH, 0 }, { XTS, 0 }, 1, 1 }, + { { CAMELLIA, 0 }, { XTS, 0 }, 1, 1 }, #if defined(CIPHER_GOST89) - { { GOST89, 0 }, { XTS, 0 }, 1 }, + { { GOST89, 0 }, { XTS, 0 }, 0, 1 }, #endif // defined(CIPHER_GOST89) - { { KUZNYECHIK, 0 }, { XTS, 0 }, 1 }, - { { TWOFISH, AES, 0 }, { XTS, 0 }, 1 }, - { { SERPENT, TWOFISH, AES, 0 }, { XTS, 0 }, 1 }, - { { AES, SERPENT, 0 }, { XTS, 0 }, 1 }, - { { AES, TWOFISH, SERPENT, 0 }, { XTS, 0 }, 1 }, - { { SERPENT, TWOFISH, 0 }, { XTS, 0 }, 1 }, - { { 0, 0 }, { 0, 0}, 0 } // Must be all-zero + { { KUZNYECHIK, 0 }, { XTS, 0 }, 0, 1 }, + { { TWOFISH, AES, 0 }, { XTS, 0 }, 1, 1 }, + { { SERPENT, TWOFISH, AES, 0 }, { XTS, 0 }, 1, 1 }, + { { AES, SERPENT, 0 }, { XTS, 0 }, 1, 1 }, + { { AES, TWOFISH, SERPENT, 0 }, { XTS, 0 }, 1, 1 }, + { { SERPENT, TWOFISH, 0 }, { XTS, 0 }, 1, 1 }, + { { 0, 0 }, { 0, 0}, 0, 0 } // Must be all-zero #else // TC_WINDOWS_BOOT @@ -684,6 +684,12 @@ int EAIsFormatEnabled (int ea) return EncryptionAlgorithms[ea].FormatEnabled; } +#ifndef TC_WINDOWS_BOOT +int EAIsMbrSysEncEnabled (int ea) +{ + return EncryptionAlgorithms[ea].MbrSysEncEnabled; +} +#endif // Returns TRUE if the mode of operation is supported for the encryption algorithm BOOL EAIsModeSupported (int ea, int testedMode) -- cgit v1.2.3