-/*\r
- Copyright (C) 1999, 2002 Aladdin Enterprises. All rights reserved.\r
-\r
- This software is provided 'as-is', without any express or implied\r
- warranty. In no event will the authors be held liable for any damages\r
- arising from the use of this software.\r
-\r
- Permission is granted to anyone to use this software for any purpose,\r
- including commercial applications, and to alter it and redistribute it\r
- freely, subject to the following restrictions:\r
-\r
- 1. The origin of this software must not be misrepresented; you must not\r
- claim that you wrote the original software. If you use this software\r
- in a product, an acknowledgment in the product documentation would be\r
- appreciated but is not required.\r
- 2. Altered source versions must be plainly marked as such, and must not be\r
- misrepresented as being the original software.\r
- 3. This notice may not be removed or altered from any source distribution.\r
-\r
- L. Peter Deutsch\r
- ghost@aladdin.com\r
-\r
- */\r
-/* $Id: md5lib.h,v 1.1 2003/07/18 04:24:39 ydnar Exp $ */\r
-/*\r
- Independent implementation of MD5 (RFC 1321).\r
-\r
- This code implements the MD5 Algorithm defined in RFC 1321, whose\r
- text is available at\r
- http://www.ietf.org/rfc/rfc1321.txt\r
- The code is derived from the text of the RFC, including the test suite\r
- (section A.5) but excluding the rest of Appendix A. It does not include\r
- any code or documentation that is identified in the RFC as being\r
- copyrighted.\r
-\r
- The original and principal author of md5.h is L. Peter Deutsch\r
- <ghost@aladdin.com>. Other authors are noted in the change history\r
- that follows (in reverse chronological order):\r
-\r
- 2002-04-13 lpd Removed support for non-ANSI compilers; removed\r
- references to Ghostscript; clarified derivation from RFC 1321;\r
- now handles byte order either statically or dynamically.\r
- 1999-11-04 lpd Edited comments slightly for automatic TOC extraction.\r
- 1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5);\r
- added conditionalization for C++ compilation from Martin\r
- Purschke <purschke@bnl.gov>.\r
- 1999-05-03 lpd Original version.\r
- */\r
-\r
-#ifndef md5_INCLUDED\r
-# define md5_INCLUDED\r
-\r
-/*\r
- * This package supports both compile-time and run-time determination of CPU\r
- * byte order. If ARCH_IS_BIG_ENDIAN is defined as 0, the code will be\r
- * compiled to run only on little-endian CPUs; if ARCH_IS_BIG_ENDIAN is\r
- * defined as non-zero, the code will be compiled to run only on big-endian\r
- * CPUs; if ARCH_IS_BIG_ENDIAN is not defined, the code will be compiled to\r
- * run on either big- or little-endian CPUs, but will run slightly less\r
- * efficiently on either one than if ARCH_IS_BIG_ENDIAN is defined.\r
- */\r
-\r
-typedef unsigned char md5_byte_t; /* 8-bit byte */\r
-typedef unsigned int md5_word_t; /* 32-bit word */\r
-\r
-/* Define the state of the MD5 Algorithm. */\r
-typedef struct md5_state_s {\r
- md5_word_t count[2]; /* message length in bits, lsw first */\r
- md5_word_t abcd[4]; /* digest buffer */\r
- md5_byte_t buf[64]; /* accumulate block */\r
-} md5_state_t;\r
-\r
-#ifdef __cplusplus\r
-extern "C" \r
-{\r
-#endif\r
-\r
-/* Initialize the algorithm. */\r
-void md5_init(md5_state_t *pms);\r
-\r
-/* Append a string to the message. */\r
-void md5_append(md5_state_t *pms, const md5_byte_t *data, int nbytes);\r
-\r
-/* Finish the message and return the digest. */\r
-void md5_finish(md5_state_t *pms, md5_byte_t digest[16]);\r
-\r
-#ifdef __cplusplus\r
-} /* end extern "C" */\r
-#endif\r
-\r
-#endif /* md5_INCLUDED */\r
+/*
+ Copyright (C) 1999, 2002 Aladdin Enterprises. All rights reserved.
+
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+ L. Peter Deutsch
+ ghost@aladdin.com
+
+ */
+/* $Id: md5lib.h,v 1.1.2.1 2003/07/19 23:25:50 spog Exp $ */
+/*
+ Independent implementation of MD5 (RFC 1321).
+
+ This code implements the MD5 Algorithm defined in RFC 1321, whose
+ text is available at
+ http://www.ietf.org/rfc/rfc1321.txt
+ The code is derived from the text of the RFC, including the test suite
+ (section A.5) but excluding the rest of Appendix A. It does not include
+ any code or documentation that is identified in the RFC as being
+ copyrighted.
+
+ The original and principal author of md5.h is L. Peter Deutsch
+ <ghost@aladdin.com>. Other authors are noted in the change history
+ that follows (in reverse chronological order):
+
+ 2002-04-13 lpd Removed support for non-ANSI compilers; removed
+ references to Ghostscript; clarified derivation from RFC 1321;
+ now handles byte order either statically or dynamically.
+ 1999-11-04 lpd Edited comments slightly for automatic TOC extraction.
+ 1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5);
+ added conditionalization for C++ compilation from Martin
+ Purschke <purschke@bnl.gov>.
+ 1999-05-03 lpd Original version.
+ */
+
+#ifndef md5_INCLUDED
+# define md5_INCLUDED
+
+/*
+ * This package supports both compile-time and run-time determination of CPU
+ * byte order. If ARCH_IS_BIG_ENDIAN is defined as 0, the code will be
+ * compiled to run only on little-endian CPUs; if ARCH_IS_BIG_ENDIAN is
+ * defined as non-zero, the code will be compiled to run only on big-endian
+ * CPUs; if ARCH_IS_BIG_ENDIAN is not defined, the code will be compiled to
+ * run on either big- or little-endian CPUs, but will run slightly less
+ * efficiently on either one than if ARCH_IS_BIG_ENDIAN is defined.
+ */
+
+typedef unsigned char md5_byte_t; /* 8-bit byte */
+typedef unsigned int md5_word_t; /* 32-bit word */
+
+/* Define the state of the MD5 Algorithm. */
+typedef struct md5_state_s {
+ md5_word_t count[2]; /* message length in bits, lsw first */
+ md5_word_t abcd[4]; /* digest buffer */
+ md5_byte_t buf[64]; /* accumulate block */
+} md5_state_t;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/* Initialize the algorithm. */
+void md5_init( md5_state_t *pms );
+
+/* Append a string to the message. */
+void md5_append( md5_state_t *pms, const md5_byte_t *data, int nbytes );
+
+/* Finish the message and return the digest. */
+void md5_finish( md5_state_t * pms, md5_byte_t digest[16] );
+
+#ifdef __cplusplus
+} /* end extern "C" */
+#endif
+
+#endif /* md5_INCLUDED */