/* * TLS Handshake Hash * (C) 2004-2006,2011,2012 Jack Lloyd * * Released under the terms of the Botan license */ #ifndef BOTAN_TLS_HANDSHAKE_HASH_H__ #define BOTAN_TLS_HANDSHAKE_HASH_H__ #include #include #include namespace Botan { namespace TLS { using namespace Botan; /** * TLS Handshake Hash */ class Handshake_Hash { public: void update(const byte in[], size_t length) { data += std::make_pair(in, length); } void update(const std::vector& in) { data += in; } secure_vector final(Protocol_Version version, const std::string& mac_algo); secure_vector final_ssl3(const secure_vector& master_secret); const std::vector& get_contents() const { return data; } void reset() { data.clear(); } private: std::vector data; }; } } #endif