
Hello Andy,
some function definitions are missing the inline keyword (sha1.hpp and uuid.hpp).
I will be happy to make these changes. Which functions?
Each function definition in both files - you have separated the function declaration from definition and you put the definition also in the header. Without inlineing in the definition you get for instance "multiple definition of `boost::uuid::create()'" errors. uuid.hpp uuid uuid::create() : line 364 uuid uuid::create_random_based(Engine& engine) : line 374 std::basic_ostream<ch, char_traits>& operator<<(std::basic_ostream<ch, char_traits> &os, uuid const& u) : line 405 std::basic_istream<ch, char_traits>& operator>>(std::basic_istream<ch, char_traits> &is, uuid &u) : line 438 sha1.hpp unsigned int left_rotate(unsigned int x, size_t n) : line 26 void sha1::reset() : line 63 sha1::sha1() : line 58 void sha1::process_block() : line 100 void sha1::process_byte(unsigned char byte) : line 75 void sha1::process_block(void const* bytes_begin, void const* bytes_end) : line 85 void sha1::process_bytes(void const* buffer, std::size_t byte_count) : line 94 void sha1::get_digest(digest_type digest) : line 152 regards, Oliver