*/
-#include <iomanip>
-#include <openssl/md5.h>
#include "digester.h"
#include "safe_stringstream.h"
+#include <nettle/md5.h>
+#include <iomanip>
using std::string;
using std::hex;
Digester::Digester ()
{
- MD5_Init (&_context);
+ md5_init (&_context);
}
Digester::~Digester ()
void
Digester::add (void const * data, size_t size)
{
- MD5_Update (&_context, data, size);
+ md5_update (&_context, size, reinterpret_cast<uint8_t const *> (data));
}
void
Digester::add (string const & s)
{
- add (s.c_str (), s.length ());
+ add (s.c_str(), s.length());
}
string
Digester::get () const
{
if (!_digest) {
- unsigned char digest[MD5_DIGEST_LENGTH];
- MD5_Final (digest, &_context);
+ unsigned char digest[MD5_DIGEST_SIZE];
+ md5_digest (&_context, MD5_DIGEST_SIZE, digest);
SafeStringStream s;
- for (int i = 0; i < MD5_DIGEST_LENGTH; ++i) {
+ for (int i = 0; i < MD5_DIGEST_SIZE; ++i) {
s << hex << setfill('0') << setw(2) << ((int) digest[i]);
}
*/
-#include <openssl/md5.h>
+#include <nettle/md5.h>
#include <boost/noncopyable.hpp>
#include <boost/optional.hpp>
#include <string>
std::string get () const;
private:
- mutable MD5_CTX _context;
+ mutable md5_ctx _context;
mutable boost::optional<std::string> _digest;
};
AVCODEC AVUTIL AVFORMAT AVFILTER SWSCALE
BOOST_FILESYSTEM BOOST_THREAD BOOST_DATETIME BOOST_SIGNALS2 BOOST_REGEX
SAMPLERATE POSTPROC TIFF MAGICK SSH DCP CXML GLIB LZMA XML++
- CURL ZIP FONTCONFIG PANGOMM CAIROMM XMLSEC SUB ICU
+ CURL ZIP FONTCONFIG PANGOMM CAIROMM XMLSEC SUB ICU NETTLE
"""
if bld.env.TARGET_OSX:
else:
conf.env.LIB_XMLSEC = ['xmlsec1-openssl', 'xmlsec1']
+ # nettle
+ config.check_cfg(package="nettle", args='--cflags --libs', uselib_store='NETTLE', mandatory=True)
+
# FFmpeg
if conf.options.static_ffmpeg:
names = ['avformat', 'avfilter', 'avcodec', 'avutil', 'swscale', 'postproc']