diff options
author | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2016-08-17 08:19:43 +0200 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2016-08-17 08:36:33 +0200 |
commit | d8a7de8ffb54ad98088f1d89cde67c24fe02beea (patch) | |
tree | 7c178e14e593abfa56e82f860bba09e8a9d58759 /src/Core/Unix | |
parent | 7695b8ada0be3013bb880e8e8db8c338e4515961 (diff) | |
download | VeraCrypt-d8a7de8ffb54ad98088f1d89cde67c24fe02beea.tar.gz VeraCrypt-d8a7de8ffb54ad98088f1d89cde67c24fe02beea.zip |
Linux: Disable Kernel crypto if volume encrypted using Kuznyechik or Magma
Diffstat (limited to 'src/Core/Unix')
-rw-r--r-- | src/Core/Unix/Linux/CoreLinux.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/Core/Unix/Linux/CoreLinux.cpp b/src/Core/Unix/Linux/CoreLinux.cpp index eb4545fd..5ae29e54 100644 --- a/src/Core/Unix/Linux/CoreLinux.cpp +++ b/src/Core/Unix/Linux/CoreLinux.cpp @@ -303,9 +303,12 @@ namespace VeraCrypt void CoreLinux::MountVolumeNative (shared_ptr <Volume> volume, MountOptions &options, const DirectoryPath &auxMountPoint) const { bool xts = (typeid (*volume->GetEncryptionMode()) == typeid (EncryptionModeXTS)); + bool algoNotSupported = (typeid (*volume->GetEncryptionAlgorithm()) == typeid (GOST89)) + || (typeid (*volume->GetEncryptionAlgorithm()) == typeid (Kuznyechik)); if (options.NoKernelCrypto || !xts + || algoNotSupported || volume->GetProtectionType() == VolumeProtection::HiddenVolumeReadOnly) { throw NotApplicable (SRC_POS); |