diff options
author | chriseth <chris@ethereum.org> | 2016-10-16 00:06:45 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-10-16 00:06:45 +0800 |
commit | 482807f60a18c410a2ad502afcf7f76a912a204d (patch) | |
tree | d5b119f8734815c1b649b250443c4cc28a5435af | |
parent | 2d9109ba453d49547778c39a506b0ed492305c16 (diff) | |
parent | 941a0164f946a7fcbb46f8b3244177bd10f674ef (diff) | |
download | dexon-solidity-482807f60a18c410a2ad502afcf7f76a912a204d.tar.gz dexon-solidity-482807f60a18c410a2ad502afcf7f76a912a204d.tar.zst dexon-solidity-482807f60a18c410a2ad502afcf7f76a912a204d.zip |
Merge pull request #1227 from wingyplus/remove_secure_vector
Removed 'secure_vector'
-rw-r--r-- | libdevcore/Common.h | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/libdevcore/Common.h b/libdevcore/Common.h index 6fbc112d..43ae7162 100644 --- a/libdevcore/Common.h +++ b/libdevcore/Common.h @@ -87,47 +87,6 @@ using bytes = std::vector<byte>; using bytesRef = vector_ref<byte>; using bytesConstRef = vector_ref<byte const>; -template <class T> -class secure_vector -{ -public: - secure_vector() {} - secure_vector(secure_vector<T> const& /*_c*/) = default; // See https://github.com/ethereum/libweb3core/pull/44 - explicit secure_vector(unsigned _size): m_data(_size) {} - explicit secure_vector(unsigned _size, T _item): m_data(_size, _item) {} - explicit secure_vector(std::vector<T> const& _c): m_data(_c) {} - explicit secure_vector(vector_ref<T> _c): m_data(_c.data(), _c.data() + _c.size()) {} - explicit secure_vector(vector_ref<const T> _c): m_data(_c.data(), _c.data() + _c.size()) {} - ~secure_vector() { ref().cleanse(); } - - secure_vector<T>& operator=(secure_vector<T> const& _c) - { - if (&_c == this) - return *this; - - ref().cleanse(); - m_data = _c.m_data; - return *this; - } - std::vector<T>& writable() { clear(); return m_data; } - std::vector<T> const& makeInsecure() const { return m_data; } - - void clear() { ref().cleanse(); } - - vector_ref<T> ref() { return vector_ref<T>(&m_data); } - vector_ref<T const> ref() const { return vector_ref<T const>(&m_data); } - - size_t size() const { return m_data.size(); } - bool empty() const { return m_data.empty(); } - - void swap(secure_vector<T>& io_other) { m_data.swap(io_other.m_data); } - -private: - std::vector<T> m_data; -}; - -using bytesSec = secure_vector<byte>; - // Numeric types. using bigint = boost::multiprecision::number<boost::multiprecision::cpp_int_backend<>>; using u64 = boost::multiprecision::number<boost::multiprecision::cpp_int_backend<64, 64, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void>>; |