From 263f69a40e5423d7317cc33ddb975ab285660a98 Mon Sep 17 00:00:00 2001 From: Adam Date: Tue, 3 Aug 2010 16:59:24 -0400 Subject: [PATCH] Fixed enc_md5, it has been broken since revision ae38212c1ce829c783edf971081c90137abb49a0 --- modules/core/enc_md5.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/modules/core/enc_md5.cpp b/modules/core/enc_md5.cpp index fe9566d38..28927af33 100644 --- a/modules/core/enc_md5.cpp +++ b/modules/core/enc_md5.cpp @@ -328,19 +328,18 @@ class EMD5 : public Module EventReturn OnEncrypt(const Anope::string &src, Anope::string &dest) { MD5_CTX context; - char *digest = new char[Config.PassLen]; + unsigned char digest[16] = ""; Anope::string buf = "md5:"; Anope::string cpass; MD5Init(&context); MD5Update(&context, reinterpret_cast(src.c_str()), src.length()); - MD5Final(reinterpret_cast(digest), &context); + MD5Final(digest, &context); - b64_encode(digest, cpass); + b64_encode(reinterpret_cast(digest), cpass); buf += cpass; Alog(LOG_DEBUG_2) << "(enc_md5) hashed password from [" << src << "] to [" << buf << "]"; dest = buf; - delete [] digest; return EVENT_ALLOW; }