From 0b337ecc91f30188987dc441dc1fc67446a86676 Mon Sep 17 00:00:00 2001 From: Nick Zitzmann Date: Sun, 23 Feb 2020 20:23:52 -0600 Subject: md4: use init/update/final functions in Secure Transport We can use CC_MD4_Init/Update/Final without having to allocate memory directly. Closes #4979 --- lib/md4.c | 28 ++++++++-------------------- 1 file changed, 8 insertions(+), 20 deletions(-) (limited to 'lib') diff --git a/lib/md4.c b/lib/md4.c index b33ec8415..38f1b2bc9 100644 --- a/lib/md4.c +++ b/lib/md4.c @@ -97,7 +97,10 @@ static void MD4_Final(unsigned char *result, MD4_CTX *ctx) /* When OpenSSL is available we use the MD4-functions from OpenSSL */ #include -#elif defined(USE_SECTRANSP) +#elif (defined(__MAC_OS_X_VERSION_MAX_ALLOWED) && \ + (__MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)) || \ + (defined(__IPHONE_OS_VERSION_MAX_ALLOWED) && \ + (__IPHONE_OS_VERSION_MAX_ALLOWED >= 20000)) #include @@ -106,36 +109,21 @@ static void MD4_Final(unsigned char *result, MD4_CTX *ctx) /* The last #include file should be: */ #include "memdebug.h" -typedef struct { - void *data; - unsigned long size; -} MD4_CTX; +typedef CC_MD4_CTX MD4_CTX; static void MD4_Init(MD4_CTX *ctx) { - ctx->data = NULL; - ctx->size = 0; + (void)CC_MD4_Init(ctx); } static void MD4_Update(MD4_CTX *ctx, const void *data, unsigned long size) { - if(ctx->data == NULL) { - ctx->data = malloc(size); - if(ctx->data != NULL) { - memcpy(ctx->data, data, size); - ctx->size = size; - } - } + (void)CC_MD4_Update(ctx, data, (CC_LONG)size); } static void MD4_Final(unsigned char *result, MD4_CTX *ctx) { - if(ctx->data != NULL) { - (void)CC_MD4(ctx->data, (CC_LONG) ctx->size, result); - - Curl_safefree(ctx->data); - ctx->size = 0; - } + (void)CC_MD4_Final(result, ctx); } #elif defined(USE_WIN32_CRYPTO) -- cgit v1.2.3