hmac.c
上传用户:s81996212
上传日期:2007-01-04
资源大小:722k
文件大小:1k
源码类别:

WEB邮件程序

开发平台:

C/C++

  1. /*
  2. ** Copyright 1998 - 1999 Double Precision, Inc.
  3. ** See COPYING for distribution information.
  4. */
  5. #define MD5_INTERNAL
  6. #include "md5.h"
  7. #include "../libhmac/hmac.h"
  8. static void alloc_context( void (*func)(void *, void *), void *arg)
  9. {
  10. struct MD5_CONTEXT c;
  11. (*func)((void *)&c, arg);
  12. }
  13. static void alloc_hash( void (*func)(unsigned char *, void *), void *arg)
  14. {
  15. unsigned char c[MD5_DIGEST_SIZE];
  16. (*func)(c, arg);
  17. }
  18. struct hmac_hashinfo hmac_md5 = {
  19. "md5",
  20. MD5_BLOCK_SIZE,
  21. MD5_DIGEST_SIZE,
  22. sizeof(struct MD5_CONTEXT),
  23. (void (*)(void *))md5_context_init,
  24. (void (*)(void *, const void *, unsigned))md5_context_hashstream,
  25. (void (*)(void *, unsigned long))md5_context_endstream,
  26. (void (*)(void *, unsigned char *))md5_context_digest,
  27. (void (*)(void *, const unsigned char *))md5_context_restore,
  28.         alloc_context,
  29. alloc_hash};