1 /********** 2 This library is free software; you can redistribute it and/or modify it under 3 the terms of the GNU Lesser General Public License as published by the 4 Free Software Foundation; either version 3 of the License, or (at your 5 option) any later version. (See <http://www.gnu.org/copyleft/lesser.html>.) 6 7 This library is distributed in the hope that it will be useful, but WITHOUT 8 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 9 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for 10 more details. 11 12 You should have received a copy of the GNU Lesser General Public License 13 along with this library; if not, write to the Free Software Foundation, Inc., 14 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 15 **********/ 16 // "liveMedia" 17 // Copyright (c) 1996-2020 Live Networks, Inc. All rights reserved. 18 // Because MD5 may not be implemented (at least, with the same interface) on all systems, 19 // we have our own implementation. 20 // C++ header 21 22 #ifndef _OUR_MD5_HH 23 #define _OUR_MD5_HH 24 25 extern char* our_MD5Data(unsigned char const* data, unsigned dataSize, char* outputDigest); 26 // "outputDigest" must be either NULL (in which case this function returns a heap-allocated 27 // buffer, which should be later delete[]d by the caller), or else it must point to 28 // a (>=)33-byte buffer (which this function will also return). 29 30 extern unsigned char* our_MD5DataRaw(unsigned char const* data, unsigned dataSize, 31 unsigned char* outputDigest); 32 // Like "ourMD5Data()", except that it returns the digest in 'raw' binary form, rather than 33 // as an ASCII hex string. 34 // "outputDigest" must be either NULL (in which case this function returns a heap-allocated 35 // buffer, which should be later delete[]d by the caller), or else it must point to 36 // a (>=)16-byte buffer (which this function will also return). 37 38 #endif 39