|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
   97   for (
int i = 0; 
i < 16; 
i++) {
 
  112 #define F(x, y, z)          ((z) ^ ((x) & ((y) ^ (z)))) 
  113 #define G(x, y, z)          ((y) ^ ((z) & ((x) ^ (y)))) 
  114 #define H(x, y, z)          (((x) ^ (y)) ^ (z)) 
  115 #define H2(x, y, z)         ((x) ^ ((y) ^ (z))) 
  116 #define I(x, y, z)          ((y) ^ ((x) | ~(z))) 
  121 #define STEP(f, a, b, c, d, x, t, s) \ 
  122     (a) += f((b), (c), (d)) + (x) + (t); \ 
  123     (a) = (((a) << (s)) | (((a) & 0xffffffff) >> (32 - (s)))); \ 
  141 #if defined(__i386__) || defined(__x86_64__) || defined(__vax__) 
  143     (*(MD5_u32plus *)&ptr[(n) * 4]) 
  149     (MD5_u32plus)ptr[(n) * 4] | \ 
  150     ((MD5_u32plus)ptr[(n) * 4 + 1] << 8) | \ 
  151     ((MD5_u32plus)ptr[(n) * 4 + 2] << 16) | \ 
  152     ((MD5_u32plus)ptr[(n) * 4 + 3] << 24)) 
  163     const unsigned char *
ptr;
 
  168     ptr = (
const unsigned char *)
data;
 
  259     } 
while (
size -= 64);
 
  284     unsigned long used, available;
 
  292     used = saved_lo & 0x3f;
 
  295         available = 64 - 
used;
 
  297         if (
size < available) {
 
  303         data = (
const unsigned char *)
data + available;
 
  316 #define OUT(dst, src) \ 
  317     (dst)[0] = (unsigned char)(src); \ 
  318     (dst)[1] = (unsigned char)((src) >> 8); \ 
  319     (dst)[2] = (unsigned char)((src) >> 16); \ 
  320     (dst)[3] = (unsigned char)((src) >> 24); 
  324     unsigned long used, available;
 
  331     available = 64 - 
used;
 
  355     memset(ctx, 0, 
sizeof(*ctx));
 
  
char data[hepevt_bytes_allocation_ATLAS]
std::string hex_digest() const
const void * body(const void *data, size_t size)
void raw_digest(unsigned char *s) const
solar's public-domain MD5, wrapped for C++.
MD5(const unsigned char *buffer, unsigned long len)
void update(const void *data, size_t size)
void uuid_digest(uuid_t &uuid) const
void digest(unsigned char *result)
unsigned char m_digest[16]
#define STEP(f, a, b, c, d, x, t, s)