#ifndef MD5_H | |
#define MD5_H | |
#ifdef HAVE_STDINT_H | |
#include <stdint.h> | |
#else | |
typedef unsigned int uint32_t; | |
#endif | |
#define MD5LENGTH 16 | |
struct MD5Context { | |
uint32_t buf[4]; | |
uint32_t bits[2]; | |
unsigned char in[64]; | |
}; | |
void MD5Init(struct MD5Context *context); | |
void MD5Update(struct MD5Context *context, unsigned char const *buf, | |
unsigned len); | |
void MD5Final(unsigned char digest[MD5LENGTH], struct MD5Context *context); | |
void MD5Transform(uint32_t buf[4], uint32_t const in[16]); | |
/* | |
* This is needed to make RSAREF happy on some MS-DOS compilers. | |
*/ | |
typedef struct MD5Context MD5_CTX; | |
#endif /* !MD5_H */ |