00001 00012 #ifndef DKUTIL_C_MD5_H 00013 #define DKUTIL_C_MD5_H 00014 00015 #include "dkcOSIndependent.h" 00016 #include "md5.h" 00017 00019 #define MD5_BIN_BUFFER_SIZE 16 00020 00021 #define MD5_STR_BUFFER_SIZE 33 00022 00023 00024 typedef struct dkc_MD5{ 00025 md5_state_t d; 00026 BYTE mFinalized; 00027 }DKC_MD5; 00028 00034 DKC_EXTERN DKC_MD5 *WINAPI dkcAllocMD5(); 00036 DKC_EXTERN void WINAPI dkcMD5Init(DKC_MD5 *); 00045 DKC_EXTERN int WINAPI dkcMD5Load(DKC_MD5 *p,const BYTE *pBuffer,DWORD dwSize); 00046 00048 DKC_EXTERN void WINAPI dkcMD5LoadStandard(DKC_MD5 *p,const BYTE *pBuffer,DWORD dwSize); 00049 00050 00056 DKC_EXTERN void WINAPI dkcMD5Final(DKC_MD5 *p); 00063 DKC_EXTERN int WINAPI dkcMD5DigestStr(DKC_MD5 *p,char *buff,size_t size); 00065 DKC_EXTERN int WINAPI dkcMD5Digest(DKC_MD5 *p,BYTE *buff,size_t size); 00066 00072 DKC_EXTERN int WINAPI dkcMD5FinalDigestStr(DKC_MD5 *p,char *buff,size_t size); 00074 DKC_EXTERN int WINAPI dkcMD5FinalDigest(DKC_MD5 *p,BYTE *buff,size_t size); 00075 00080 DKC_EXTERN int WINAPI dkcFreeMD5(DKC_MD5 **p); 00081 00082 00083 00084 00085 #endif //end of include once