VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Volume/VolumeInfo.h
diff options
context:
space:
mode:
authorMounir IDRASSI <mounir.idrassi@idrix.fr>2014-05-31 18:44:53 +0200
committerMounir IDRASSI <mounir.idrassi@idrix.fr>2014-11-08 23:18:59 +0100
commit7ffce028d04a6b13ef762e2b89c34b688e8ca59d (patch)
treeeefedb6e94de5b26fa963675969490c641c29077 /src/Volume/VolumeInfo.h
parent97011f179cfd3dcd12446ef4ccb6964c8e52c3db (diff)
downloadVeraCrypt-7ffce028d04a6b13ef762e2b89c34b688e8ca59d.tar.gz
VeraCrypt-7ffce028d04a6b13ef762e2b89c34b688e8ca59d.zip
Add TrueCrypt 7.1a MacOSX/Linux specific source files.
Diffstat (limited to 'src/Volume/VolumeInfo.h')
-rw-r--r--src/Volume/VolumeInfo.h66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/Volume/VolumeInfo.h b/src/Volume/VolumeInfo.h
new file mode 100644
index 00000000..6e5f5dd4
--- /dev/null
+++ b/src/Volume/VolumeInfo.h
@@ -0,0 +1,66 @@
+/*
+ Copyright (c) 2008-2009 TrueCrypt Developers Association. All rights reserved.
+
+ Governed by the TrueCrypt License 3.0 the full text of which is contained in
+ the file License.txt included in TrueCrypt binary and source code distribution
+ packages.
+*/
+
+#ifndef TC_HEADER_Volume_VolumeInfo
+#define TC_HEADER_Volume_VolumeInfo
+
+#include "Platform/Platform.h"
+#include "Platform/Serializable.h"
+#include "Volume/Volume.h"
+#include "Volume/VolumeSlot.h"
+
+namespace TrueCrypt
+{
+ class VolumeInfo;
+ typedef list < shared_ptr <VolumeInfo> > VolumeInfoList;
+
+ class VolumeInfo : public Serializable
+ {
+ public:
+ VolumeInfo () { }
+ virtual ~VolumeInfo () { }
+
+ TC_SERIALIZABLE (VolumeInfo);
+ static bool FirstVolumeMountedAfterSecond (shared_ptr <VolumeInfo> first, shared_ptr <VolumeInfo> second);
+ void Set (const Volume &volume);
+
+ // Modifying this structure can introduce incompatibility with previous versions
+ DirectoryPath AuxMountPoint;
+ uint32 EncryptionAlgorithmBlockSize;
+ uint32 EncryptionAlgorithmKeySize;
+ uint32 EncryptionAlgorithmMinBlockSize;
+ wstring EncryptionAlgorithmName;
+ wstring EncryptionModeName;
+ VolumeTime HeaderCreationTime;
+ bool HiddenVolumeProtectionTriggered;
+ DevicePath LoopDevice;
+ uint32 MinRequiredProgramVersion;
+ DirectoryPath MountPoint;
+ VolumePath Path;
+ uint32 Pkcs5IterationCount;
+ wstring Pkcs5PrfName;
+ uint32 ProgramVersion;
+ VolumeProtection::Enum Protection;
+ uint64 SerialInstanceNumber;
+ uint64 Size;
+ VolumeSlotNumber SlotNumber;
+ bool SystemEncryption;
+ uint64 TopWriteOffset;
+ uint64 TotalDataRead;
+ uint64 TotalDataWritten;
+ VolumeType::Enum Type;
+ DevicePath VirtualDevice;
+ VolumeTime VolumeCreationTime;
+
+ private:
+ VolumeInfo (const VolumeInfo &);
+ VolumeInfo &operator= (const VolumeInfo &);
+ };
+}
+
+#endif // TC_HEADER_Volume_VolumeInfo