ewmscp  ..
md5sum.h
Go to the documentation of this file.
1 #ifndef __md5sum_h__
2 #define __md5sum_h__
3 
4 #include <string>
5 #ifdef USE_OPENSSL
6 #include <openssl/evp.h>
7 #else
8 #include "md5.h"
9 #endif
10 
11 #include "checksumBase.h"
12 namespace checksum {
13 
18  class md5sum: public base {
19  private:
20  static factoryTemplate<md5sum> factory;
21  #ifdef USE_OPENSSL
22  decltype(EVP_MD_CTX_create()) ctx;
23  decltype(EVP_md5()) mdType;
24  #else
25  struct md5_ctx ctx;
26  #endif
27  public:
28  md5sum(const std::string& name);
29  void update(void *data, size_t size) override;
30  void update(size_t size) override;
31  void finish() override;
32  };
33 }; // end namespace checksum
34 
35 #endif
checksumBase.h
checksum::md5sum::update
void update(void *data, size_t size) override
proces size bytes in the block at data
Definition: md5sum.cpp:20
checksum::md5sum
class to calculate md5sums.
Definition: md5sum.h:18
checksum::md5sum::ctx
struct md5_ctx ctx
Definition: md5sum.h:25
checksum::base::name
const std::string & name
Definition: checksumBase.h:37
checksum::base
Definition: checksumBase.h:8
checksum::md5sum::md5sum
md5sum(const std::string &name)
Definition: md5sum.cpp:10
md5.h
checksum::md5sum::finish
void finish() override
finish calculation ad write to result
Definition: md5sum.cpp:70
checksum::md5sum::factory
static factoryTemplate< md5sum > factory
Definition: md5sum.h:20
checksum
Definition: adler32.cpp:9
md5_ctx
Definition: md5.h:70