diff options
author | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2016-05-10 22:34:27 +0200 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2016-05-10 22:34:27 +0200 |
commit | 268ef2d8e904db5068dbdc0fdc7ce3940d6452ea (patch) | |
tree | b1afa687c97fbf5e1ba2c92c5a10479ae5f832f5 /src/Platform/Buffer.h | |
parent | 6d61f06a5348aebe7dbc0bf44d3e2729c20f7fd0 (diff) | |
parent | 5f47d8b6f11cdb3c4c2f43e04e5acfc6ffcb3035 (diff) | |
download | VeraCrypt-268ef2d8e904db5068dbdc0fdc7ce3940d6452ea.tar.gz VeraCrypt-268ef2d8e904db5068dbdc0fdc7ce3940d6452ea.zip |
Merge pull request #61 from davidfoerster/normalize-line-terminators
Normalize line terminators
Diffstat (limited to 'src/Platform/Buffer.h')
-rw-r--r-- | src/Platform/Buffer.h | 220 |
1 files changed, 110 insertions, 110 deletions
diff --git a/src/Platform/Buffer.h b/src/Platform/Buffer.h index 532ad212..b47907b3 100644 --- a/src/Platform/Buffer.h +++ b/src/Platform/Buffer.h @@ -3,117 +3,117 @@ Copyright (c) 2008-2012 TrueCrypt Developers Association and which is governed by the TrueCrypt License 3.0. - Modifications and additions to the original source code (contained in this file) + Modifications and additions to the original source code (contained in this file) and all other portions of this file are Copyright (c) 2013-2016 IDRIX and are governed by the Apache License 2.0 the full text of which is contained in the file License.txt included in VeraCrypt binary and source code distribution packages. -*/
-
-#ifndef TC_HEADER_Platform_Buffer
-#define TC_HEADER_Platform_Buffer
-
-#include "PlatformBase.h"
-#include "Memory.h"
-
-namespace VeraCrypt
-{
-
- class ConstBufferPtr
- {
- public:
- ConstBufferPtr ()
- : DataPtr (nullptr), DataSize (0) { }
- ConstBufferPtr (const byte *data, size_t size)
- : DataPtr (data), DataSize (size) { }
- virtual ~ConstBufferPtr () { }
-
- operator const byte * () const { return DataPtr; }
-
- bool IsDataEqual (const ConstBufferPtr &other) const { return Memory::Compare (DataPtr, DataSize, other.DataPtr, other.DataSize) == 0; }
- const byte *Get () const { return DataPtr; }
- ConstBufferPtr GetRange (size_t offset, size_t size) const;
- void Set (const byte *data, size_t size) { DataPtr = data; DataSize = size; }
- size_t Size () const { return DataSize; }
-
- protected:
- const byte *DataPtr;
- size_t DataSize;
- };
-
-
- class BufferPtr
- {
- public:
- BufferPtr ()
- : DataPtr (nullptr), DataSize (0) { }
- BufferPtr (byte *data, size_t size)
- : DataPtr (data), DataSize (size) { }
- virtual ~BufferPtr () { }
-
- operator byte * () const { return DataPtr; }
- void CopyFrom (const ConstBufferPtr &bufferPtr) const;
- void Erase () const { Zero(); }
- byte *Get () const { return DataPtr; }
- BufferPtr GetRange (size_t offset, size_t size) const;
- void Set (byte *data, size_t size) { DataPtr = data; DataSize = size; }
- size_t Size () const { return DataSize; }
- void Zero () const { Memory::Zero (DataPtr, DataSize); }
-
- operator ConstBufferPtr () const { return ConstBufferPtr (DataPtr, DataSize); }
-
- protected:
- byte *DataPtr;
- size_t DataSize;
- };
-
- class Buffer
- {
- public:
- Buffer ();
- Buffer (size_t size);
- Buffer (const ConstBufferPtr &bufferPtr) { CopyFrom (bufferPtr); }
- virtual ~Buffer ();
-
- virtual void Allocate (size_t size);
- virtual void CopyFrom (const ConstBufferPtr &bufferPtr);
- virtual byte *Ptr () const { return DataPtr; }
- virtual void Erase ();
- virtual void Free ();
- virtual BufferPtr GetRange (size_t offset, size_t size) const;
- virtual size_t Size () const { return DataSize; }
- virtual bool IsAllocated () const { return DataSize != 0; }
- virtual void Zero ();
-
- virtual operator byte * () const { return DataPtr; }
- virtual operator BufferPtr () const { return BufferPtr (DataPtr, DataSize); }
- virtual operator ConstBufferPtr () const { return ConstBufferPtr (DataPtr, DataSize); }
-
- protected:
- byte *DataPtr;
- size_t DataSize;
-
- private:
- Buffer (const Buffer &);
- Buffer &operator= (const Buffer &);
- };
-
- class SecureBuffer : public Buffer
- {
- public:
- SecureBuffer () { }
- SecureBuffer (size_t size);
- SecureBuffer (const ConstBufferPtr &bufferPtr) { CopyFrom (bufferPtr); }
- virtual ~SecureBuffer ();
-
- virtual void Allocate (size_t size);
- virtual void Free ();
-
- private:
- SecureBuffer (const SecureBuffer &);
- SecureBuffer &operator= (const SecureBuffer &);
- };
-
-}
-
-#endif // TC_HEADER_Platform_Buffer
+*/ + +#ifndef TC_HEADER_Platform_Buffer +#define TC_HEADER_Platform_Buffer + +#include "PlatformBase.h" +#include "Memory.h" + +namespace VeraCrypt +{ + + class ConstBufferPtr + { + public: + ConstBufferPtr () + : DataPtr (nullptr), DataSize (0) { } + ConstBufferPtr (const byte *data, size_t size) + : DataPtr (data), DataSize (size) { } + virtual ~ConstBufferPtr () { } + + operator const byte * () const { return DataPtr; } + + bool IsDataEqual (const ConstBufferPtr &other) const { return Memory::Compare (DataPtr, DataSize, other.DataPtr, other.DataSize) == 0; } + const byte *Get () const { return DataPtr; } + ConstBufferPtr GetRange (size_t offset, size_t size) const; + void Set (const byte *data, size_t size) { DataPtr = data; DataSize = size; } + size_t Size () const { return DataSize; } + + protected: + const byte *DataPtr; + size_t DataSize; + }; + + + class BufferPtr + { + public: + BufferPtr () + : DataPtr (nullptr), DataSize (0) { } + BufferPtr (byte *data, size_t size) + : DataPtr (data), DataSize (size) { } + virtual ~BufferPtr () { } + + operator byte * () const { return DataPtr; } + void CopyFrom (const ConstBufferPtr &bufferPtr) const; + void Erase () const { Zero(); } + byte *Get () const { return DataPtr; } + BufferPtr GetRange (size_t offset, size_t size) const; + void Set (byte *data, size_t size) { DataPtr = data; DataSize = size; } + size_t Size () const { return DataSize; } + void Zero () const { Memory::Zero (DataPtr, DataSize); } + + operator ConstBufferPtr () const { return ConstBufferPtr (DataPtr, DataSize); } + + protected: + byte *DataPtr; + size_t DataSize; + }; + + class Buffer + { + public: + Buffer (); + Buffer (size_t size); + Buffer (const ConstBufferPtr &bufferPtr) { CopyFrom (bufferPtr); } + virtual ~Buffer (); + + virtual void Allocate (size_t size); + virtual void CopyFrom (const ConstBufferPtr &bufferPtr); + virtual byte *Ptr () const { return DataPtr; } + virtual void Erase (); + virtual void Free (); + virtual BufferPtr GetRange (size_t offset, size_t size) const; + virtual size_t Size () const { return DataSize; } + virtual bool IsAllocated () const { return DataSize != 0; } + virtual void Zero (); + + virtual operator byte * () const { return DataPtr; } + virtual operator BufferPtr () const { return BufferPtr (DataPtr, DataSize); } + virtual operator ConstBufferPtr () const { return ConstBufferPtr (DataPtr, DataSize); } + + protected: + byte *DataPtr; + size_t DataSize; + + private: + Buffer (const Buffer &); + Buffer &operator= (const Buffer &); + }; + + class SecureBuffer : public Buffer + { + public: + SecureBuffer () { } + SecureBuffer (size_t size); + SecureBuffer (const ConstBufferPtr &bufferPtr) { CopyFrom (bufferPtr); } + virtual ~SecureBuffer (); + + virtual void Allocate (size_t size); + virtual void Free (); + + private: + SecureBuffer (const SecureBuffer &); + SecureBuffer &operator= (const SecureBuffer &); + }; + +} + +#endif // TC_HEADER_Platform_Buffer |