ATLAS Offline Software
MD5.h
Go to the documentation of this file.
1 
9 #ifndef CXXUTILS_MD5_H
10 #define CXXUTILS_MD5_H
11 
12 
13 #include <string>
14 #include <cstdlib>
15 #include <cstdint>
16 #include <uuid/uuid.h>
17 
18 
19 class MD5
20 {
21 public:
22  MD5 (const unsigned char* buffer, unsigned long len);
23  MD5 (const char* buffer, size_t len);
24  MD5 (const std::string& buffer);
25  void raw_digest (unsigned char* s) const; // 16-byte buffer
26  void uuid_digest (uuid_t& uuid) const;
27  std::string hex_digest() const;
28 
29 private:
31  struct Context {
34  unsigned char buffer[64];
36  };
37 
39  unsigned char m_digest[16];
40 
41  void init();
42  void update (const void* data, size_t size);
43  void digest (unsigned char* result);
44 
45  const void* body (const void* data, size_t size);
46 };
47 
48 
49 #endif // not CXXUTILS_MD5_H
MD5::Context::c
MD5_u32plus c
Definition: MD5.h:33
data
char data[hepevt_bytes_allocation_ATLAS]
Definition: HepEvt.cxx:11
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
get_generator_info.result
result
Definition: get_generator_info.py:21
MD5::Context::lo
MD5_u32plus lo
Definition: MD5.h:32
MD5::Context::d
MD5_u32plus d
Definition: MD5.h:33
MD5::hex_digest
std::string hex_digest() const
Definition: MD5.cxx:94
MD5::Context::b
MD5_u32plus b
Definition: MD5.h:33
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
MD5::body
const void * body(const void *data, size_t size)
Definition: MD5.cxx:161
MD5::MD5_u32plus
uint32_t MD5_u32plus
Definition: MD5.h:30
MD5::Context::hi
MD5_u32plus hi
Definition: MD5.h:32
MD5::raw_digest
void raw_digest(unsigned char *s) const
Definition: MD5.cxx:82
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
createCoolChannelIdFile.buffer
buffer
Definition: createCoolChannelIdFile.py:12
MD5::init
void init()
Definition: MD5.cxx:269
MD5::MD5
MD5(const unsigned char *buffer, unsigned long len)
Definition: MD5.cxx:56
MD5::Context
Definition: MD5.h:31
MD5::update
void update(const void *data, size_t size)
Definition: MD5.cxx:281
MD5::Context::a
MD5_u32plus a
Definition: MD5.h:33
MD5
Definition: MD5.h:20
MD5::uuid_digest
void uuid_digest(uuid_t &uuid) const
Definition: MD5.cxx:88
MD5::m_ctx
Context m_ctx
Definition: MD5.h:38
MD5::digest
void digest(unsigned char *result)
Definition: MD5.cxx:322
MD5::Context::buffer
unsigned char buffer[64]
Definition: MD5.h:34
MD5::Context::block
MD5_u32plus block[16]
Definition: MD5.h:35
MD5::m_digest
unsigned char m_digest[16]
Definition: MD5.h:39