| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- /*============================================================================
- KWSys - Kitware System Library
- Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
- Distributed under the OSI-approved BSD License (the "License");
- see accompanying file Copyright.txt for details.
- This software is distributed WITHOUT ANY WARRANTY; without even the
- implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- See the License for more information.
- ============================================================================*/
- #ifndef @KWSYS_NAMESPACE@_MD5_h
- #define @KWSYS_NAMESPACE@_MD5_h
- #include <@KWSYS_NAMESPACE@/Configure.h>
- /* Redefine all public interface symbol names to be in the proper
- namespace. These macros are used internally to kwsys only, and are
- not visible to user code. Use kwsysHeaderDump.pl to reproduce
- these macros after making changes to the interface. */
- #if !defined(KWSYS_NAMESPACE)
- # define kwsys_ns(x) @KWSYS_NAMESPACE@##x
- # define kwsysEXPORT @KWSYS_NAMESPACE@_EXPORT
- #endif
- #if !@KWSYS_NAMESPACE@_NAME_IS_KWSYS
- # define kwsysMD5 kwsys_ns(MD5)
- # define kwsysMD5_s kwsys_ns(MD5_s)
- # define kwsysMD5_New kwsys_ns(MD5_New)
- # define kwsysMD5_Delete kwsys_ns(MD5_Delete)
- # define kwsysMD5_Initialize kwsys_ns(MD5_Initialize)
- # define kwsysMD5_Append kwsys_ns(MD5_Append)
- # define kwsysMD5_Finalize kwsys_ns(MD5_Finalize)
- # define kwsysMD5_FinalizeHex kwsys_ns(MD5_FinalizeHex)
- # define kwsysMD5_DigestToHex kwsys_ns(MD5_DigestToHex)
- #endif
- #if defined(__cplusplus)
- extern "C"
- {
- #endif
- /**
- * MD5 state data structure.
- */
- typedef struct kwsysMD5_s kwsysMD5;
- /**
- * Create a new MD5 instance. The returned instance is not initialized.
- */
- kwsysEXPORT kwsysMD5* kwsysMD5_New(void);
- /**
- * Delete an old MD5 instance.
- */
- kwsysEXPORT void kwsysMD5_Delete(kwsysMD5* md5);
- /**
- * Initialize a new MD5 digest.
- */
- kwsysEXPORT void kwsysMD5_Initialize(kwsysMD5* md5);
- /**
- * Append data to an MD5 digest. If the given length is negative,
- * data will be read up to but not including a terminating null.
- */
- kwsysEXPORT void kwsysMD5_Append(kwsysMD5* md5, unsigned char const* data,
- int length);
- /**
- * Finalize a MD5 digest and get the 16-byte hash value.
- */
- kwsysEXPORT void kwsysMD5_Finalize(kwsysMD5* md5, unsigned char digest[16]);
- /**
- * Finalize a MD5 digest and get the 32-bit hexadecimal representation.
- */
- kwsysEXPORT void kwsysMD5_FinalizeHex(kwsysMD5* md5, char buffer[32]);
- /**
- * Convert a MD5 digest 16-byte value to a 32-byte hexadecimal representation.
- */
- kwsysEXPORT void kwsysMD5_DigestToHex(unsigned char const digest[16],
- char buffer[32]);
- #if defined(__cplusplus)
- } /* extern "C" */
- #endif
- /* If we are building a kwsys .c or .cxx file, let it use these macros.
- Otherwise, undefine them to keep the namespace clean. */
- #if !defined(KWSYS_NAMESPACE)
- # undef kwsys_ns
- # undef kwsysEXPORT
- # if !@KWSYS_NAMESPACE@_NAME_IS_KWSYS
- # undef kwsysMD5
- # undef kwsysMD5_s
- # undef kwsysMD5_New
- # undef kwsysMD5_Delete
- # undef kwsysMD5_Initialize
- # undef kwsysMD5_Append
- # undef kwsysMD5_Finalize
- # undef kwsysMD5_FinalizeHex
- # undef kwsysMD5_DigestToHex
- # endif
- #endif
- #endif
|