4 /* Try to avoid clashes with OpenSSL */
16 struct HMACMD5Context
{
17 struct MD5Context ctx
;
18 unsigned char k_ipad
[65];
19 unsigned char k_opad
[65];
21 #endif /* _HMAC_MD5_H */
23 void MD5Init(struct MD5Context
*context
);
24 void MD5Update(struct MD5Context
*context
, unsigned char const *buf
,
26 void MD5Final(unsigned char digest
[16], struct MD5Context
*context
);
28 /* The following definitions come from lib/hmacmd5.c */
30 void hmac_md5_init_rfc2104(unsigned char *key
, int key_len
,
31 struct HMACMD5Context
*ctx
);
32 void hmac_md5_init_limK_to_64(const unsigned char *key
, int key_len
,
33 struct HMACMD5Context
*ctx
);
34 void hmac_md5_update(const unsigned char *text
, int text_len
,
35 struct HMACMD5Context
*ctx
);
36 void hmac_md5_final(unsigned char *digest
, struct HMACMD5Context
*ctx
);
37 void hmac_md5(unsigned char key
[16], unsigned char *data
, int data_len
,
38 unsigned char *digest
);