X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fdigester.cc;h=8542c75a13358a0a97dc9c2fa51e5c86c63ec8b4;hb=c162f9d8b127f56b8da46b83908000611033e6a5;hp=155d43af478b32d62fcae50a8e13282ba6bbb5b9;hpb=b1dc9c3a2f7e55c9afc5bf2d5b465371b048e14f;p=dcpomatic.git diff --git a/src/lib/digester.cc b/src/lib/digester.cc index 155d43af4..8542c75a1 100644 --- a/src/lib/digester.cc +++ b/src/lib/digester.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2014-2016 Carl Hetherington + Copyright (C) 2014-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,37 +18,46 @@ */ + #include "digester.h" +#include "dcpomatic_assert.h" #include #include +#include + using std::string; using std::hex; using std::setfill; using std::setw; + Digester::Digester () { md5_init (&_context); } + Digester::~Digester () { get (); } + void Digester::add (void const * data, size_t size) { - md5_update (&_context, size, reinterpret_cast (data)); + md5_update (&_context, size, reinterpret_cast(data)); } + void Digester::add (string const & s) { add (s.c_str(), s.length()); } + string Digester::get () const { @@ -66,3 +75,17 @@ Digester::get () const return _digest.get (); } + + +void +Digester::get (uint8_t* buffer) const +{ + md5_digest (&_context, MD5_DIGEST_SIZE, buffer); +} + + +int +Digester::size () const +{ + return MD5_DIGEST_SIZE; +}