diff options
Diffstat (limited to 'src/Volume/Volume.h')
-rw-r--r-- | src/Volume/Volume.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/Volume/Volume.h b/src/Volume/Volume.h index c816da58..4b91e435 100644 --- a/src/Volume/Volume.h +++ b/src/Volume/Volume.h @@ -87,60 +87,61 @@ namespace VeraCrypt void Close (); shared_ptr <EncryptionAlgorithm> GetEncryptionAlgorithm () const; shared_ptr <EncryptionMode> GetEncryptionMode () const; shared_ptr <File> GetFile () const { return VolumeFile; } shared_ptr <VolumeHeader> GetHeader () const { return Header; } uint64 GetHeaderCreationTime () const { return Header->GetHeaderCreationTime(); } uint64 GetHostSize () const { return VolumeHostSize; } shared_ptr <VolumeLayout> GetLayout () const { return Layout; } VolumePath GetPath () const { return VolumeFile->GetPath(); } VolumeProtection::Enum GetProtectionType () const { return Protection; } shared_ptr <Pkcs5Kdf> GetPkcs5Kdf () const { return Header->GetPkcs5Kdf(); } uint32 GetSaltSize () const { return Header->GetSaltSize(); } size_t GetSectorSize () const { return SectorSize; } uint64 GetSize () const { return VolumeDataSize; } uint64 GetEncryptedSize () const { return EncryptedDataSize; } uint64 GetTopWriteOffset () const { return TopWriteOffset; } uint64 GetTotalDataRead () const { return TotalDataRead; } uint64 GetTotalDataWritten () const { return TotalDataWritten; } VolumeType::Enum GetType () const { return Type; } int GetPim() const { return Pim;} uint64 GetVolumeCreationTime () const { return Header->GetVolumeCreationTime(); } bool IsHiddenVolumeProtectionTriggered () const { return HiddenVolumeProtectionTriggered; } bool IsInSystemEncryptionScope () const { return SystemEncryption; } void Open (const VolumePath &volumePath, bool preserveTimestamps, shared_ptr <VolumePassword> password, int pim, shared_ptr <Pkcs5Kdf> kdf, shared_ptr <KeyfileList> keyfiles, bool emvSupportEnabled, VolumeProtection::Enum protection = VolumeProtection::None, shared_ptr <VolumePassword> protectionPassword = shared_ptr <VolumePassword> (), int protectionPim = 0, shared_ptr <Pkcs5Kdf> protectionKdf = shared_ptr <Pkcs5Kdf> (),shared_ptr <KeyfileList> protectionKeyfiles = shared_ptr <KeyfileList> (), bool sharedAccessAllowed = false, VolumeType::Enum volumeType = VolumeType::Unknown, bool useBackupHeaders = false, bool partitionInSystemEncryptionScope = false); void Open (shared_ptr <File> volumeFile, shared_ptr <VolumePassword> password, int pim, shared_ptr <Pkcs5Kdf> kdf, shared_ptr <KeyfileList> keyfiles, bool emvSupportEnabled, VolumeProtection::Enum protection = VolumeProtection::None, shared_ptr <VolumePassword> protectionPassword = shared_ptr <VolumePassword> (), int protectionPim = 0, shared_ptr <Pkcs5Kdf> protectionKdf = shared_ptr <Pkcs5Kdf> (), shared_ptr <KeyfileList> protectionKeyfiles = shared_ptr <KeyfileList> (), VolumeType::Enum volumeType = VolumeType::Unknown, bool useBackupHeaders = false, bool partitionInSystemEncryptionScope = false); void ReadSectors (const BufferPtr &buffer, uint64 byteOffset); void ReEncryptHeader (bool backupHeader, const ConstBufferPtr &newSalt, const ConstBufferPtr &newHeaderKey, shared_ptr <Pkcs5Kdf> newPkcs5Kdf); void WriteSectors (const ConstBufferPtr &buffer, uint64 byteOffset); bool IsEncryptionNotCompleted () const { return EncryptionNotCompleted; } + bool IsMasterKeyVulnerable() const { return Header && Header->IsMasterKeyVulnerable(); } protected: void CheckProtectedRange (uint64 writeHostOffset, uint64 writeLength); void ValidateState () const; shared_ptr <EncryptionAlgorithm> EA; shared_ptr <VolumeHeader> Header; bool HiddenVolumeProtectionTriggered; shared_ptr <VolumeLayout> Layout; uint64 ProtectedRangeStart; uint64 ProtectedRangeEnd; VolumeProtection::Enum Protection; size_t SectorSize; bool SystemEncryption; VolumeType::Enum Type; shared_ptr <File> VolumeFile; uint64 VolumeHostSize; uint64 VolumeDataOffset; uint64 VolumeDataSize; uint64 EncryptedDataSize; uint64 TopWriteOffset; uint64 TotalDataRead; uint64 TotalDataWritten; int Pim; bool EncryptionNotCompleted; private: Volume (const Volume &); Volume &operator= (const Volume &); }; |