1 #ifndef MD5_H 2 #define MD5_H 3 4 typedef unsigned int word32; 5 6 struct MD5Context { 7 word32 buf[4]; 8 word32 bits[2]; 9 union { 10 unsigned char in[64]; 11 word32 in32[16]; 12 }; 13 }; 14 15 void MD5Init(struct MD5Context *context); 16 void MD5Update(struct MD5Context *context, unsigned char const *buf, 17 unsigned len); 18 void MD5Final(unsigned char digest[16], struct MD5Context *context); 19 void MD5Transform(word32 buf[4], word32 const in[16]); 20 21 /* 22 * This is needed to make RSAREF happy on some MS-DOS compilers. 23 */ 24 typedef struct MD5Context MD5_CTX; 25 26 #endif 27