mirror of
https://github.com/curl/curl.git
synced 2026-08-05 05:06:13 +03:00
sync them of up together with sha256
This commit is contained in:
parent
f579308fad
commit
2d1c3cf1af
3 changed files with 36 additions and 44 deletions
13
lib/md4.c
13
lib/md4.c
|
|
@ -53,13 +53,11 @@ static int my_md4_init(my_md4_ctx *ctx)
|
|||
if(!*ctx)
|
||||
return 0;
|
||||
|
||||
if(EVP_DigestInit_ex(*ctx, EVP_md4(), NULL))
|
||||
return 1;
|
||||
|
||||
EVP_MD_CTX_free(*ctx);
|
||||
*ctx = NULL;
|
||||
|
||||
return 0;
|
||||
if(!EVP_DigestInit_ex(*ctx, EVP_md4(), NULL))
|
||||
EVP_MD_CTX_free(*ctx);
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void my_md4_update(my_md4_ctx *ctx,
|
||||
|
|
@ -72,7 +70,6 @@ static void my_md4_final(unsigned char *digest, my_md4_ctx *ctx)
|
|||
{
|
||||
(void)EVP_DigestFinal_ex(*ctx, digest, NULL);
|
||||
EVP_MD_CTX_free(*ctx);
|
||||
*ctx = NULL;
|
||||
}
|
||||
|
||||
#elif defined(USE_WOLFSSL) && !defined(NO_MD4)
|
||||
|
|
|
|||
40
lib/md5.c
40
lib/md5.c
|
|
@ -77,38 +77,34 @@ static void my_md5_final(unsigned char *digest, void *ctx)
|
|||
|
||||
typedef EVP_MD_CTX *my_md5_ctx;
|
||||
|
||||
static CURLcode my_md5_init(void *ctx)
|
||||
static CURLcode my_md5_init(void *in)
|
||||
{
|
||||
EVP_MD_CTX **pctx = (EVP_MD_CTX **)ctx;
|
||||
|
||||
*pctx = EVP_MD_CTX_new();
|
||||
if(!*pctx)
|
||||
EVP_MD_CTX **ctx = (EVP_MD_CTX **)in;
|
||||
*ctx = EVP_MD_CTX_new();
|
||||
if(!*ctx)
|
||||
return CURLE_OUT_OF_MEMORY;
|
||||
|
||||
if(EVP_DigestInit_ex(*pctx, EVP_md5(), NULL))
|
||||
return CURLE_OK;
|
||||
|
||||
EVP_MD_CTX_free(*pctx);
|
||||
*pctx = NULL;
|
||||
|
||||
return CURLE_FAILED_INIT;
|
||||
if(!EVP_DigestInit_ex(*ctx, EVP_md5(), NULL)) {
|
||||
EVP_MD_CTX_free(*ctx);
|
||||
*ctx = NULL;
|
||||
return CURLE_FAILED_INIT;
|
||||
}
|
||||
return CURLE_OK;
|
||||
}
|
||||
|
||||
static void my_md5_update(void *ctx,
|
||||
static void my_md5_update(void *in,
|
||||
const unsigned char *input, unsigned int len)
|
||||
{
|
||||
EVP_MD_CTX **pctx = (EVP_MD_CTX **)ctx;
|
||||
|
||||
(void)EVP_DigestUpdate(*pctx, input, len);
|
||||
EVP_MD_CTX **ctx = (EVP_MD_CTX **)in;
|
||||
(void)EVP_DigestUpdate(*ctx, input, len);
|
||||
}
|
||||
|
||||
static void my_md5_final(unsigned char *digest, void *ctx)
|
||||
static void my_md5_final(unsigned char *digest, void *in)
|
||||
{
|
||||
EVP_MD_CTX **pctx = (EVP_MD_CTX **)ctx;
|
||||
|
||||
(void)EVP_DigestFinal_ex(*pctx, digest, NULL);
|
||||
EVP_MD_CTX_free(*pctx);
|
||||
*pctx = NULL;
|
||||
EVP_MD_CTX **ctx = (EVP_MD_CTX **)in;
|
||||
(void)EVP_DigestFinal_ex(*ctx, digest, NULL);
|
||||
EVP_MD_CTX_free(*ctx);
|
||||
*ctx = NULL;
|
||||
}
|
||||
|
||||
#elif defined(USE_WOLFSSL) && !defined(NO_MD5)
|
||||
|
|
|
|||
27
lib/sha256.c
27
lib/sha256.c
|
|
@ -53,20 +53,18 @@
|
|||
#ifdef USE_OPENSSL
|
||||
#include <openssl/evp.h>
|
||||
|
||||
struct ossl_sha256_ctx {
|
||||
EVP_MD_CTX *openssl_ctx;
|
||||
};
|
||||
typedef struct ossl_sha256_ctx my_sha256_ctx;
|
||||
typedef EVP_MD_CTX *my_sha256_ctx;
|
||||
|
||||
static CURLcode my_sha256_init(void *in)
|
||||
{
|
||||
my_sha256_ctx *ctx = (my_sha256_ctx *)in;
|
||||
ctx->openssl_ctx = EVP_MD_CTX_new();
|
||||
if(!ctx->openssl_ctx)
|
||||
EVP_MD_CTX **ctx = (EVP_MD_CTX **)in;
|
||||
*ctx = EVP_MD_CTX_new();
|
||||
if(!*ctx)
|
||||
return CURLE_OUT_OF_MEMORY;
|
||||
|
||||
if(!EVP_DigestInit_ex(ctx->openssl_ctx, EVP_sha256(), NULL)) {
|
||||
EVP_MD_CTX_free(ctx->openssl_ctx);
|
||||
if(!EVP_DigestInit_ex(*ctx, EVP_sha256(), NULL)) {
|
||||
EVP_MD_CTX_free(*ctx);
|
||||
*ctx = NULL;
|
||||
return CURLE_FAILED_INIT;
|
||||
}
|
||||
return CURLE_OK;
|
||||
|
|
@ -76,15 +74,16 @@ static void my_sha256_update(void *in,
|
|||
const unsigned char *data,
|
||||
unsigned int length)
|
||||
{
|
||||
my_sha256_ctx *ctx = (my_sha256_ctx *)in;
|
||||
EVP_DigestUpdate(ctx->openssl_ctx, data, length);
|
||||
EVP_MD_CTX **ctx = (EVP_MD_CTX **)in;
|
||||
(void)EVP_DigestUpdate(*ctx, data, length);
|
||||
}
|
||||
|
||||
static void my_sha256_final(unsigned char *digest, void *in)
|
||||
{
|
||||
my_sha256_ctx *ctx = (my_sha256_ctx *)in;
|
||||
EVP_DigestFinal_ex(ctx->openssl_ctx, digest, NULL);
|
||||
EVP_MD_CTX_free(ctx->openssl_ctx);
|
||||
EVP_MD_CTX **ctx = (EVP_MD_CTX **)in;
|
||||
(void)EVP_DigestFinal_ex(*ctx, digest, NULL);
|
||||
EVP_MD_CTX_free(*ctx);
|
||||
*ctx = NULL;
|
||||
}
|
||||
|
||||
#elif defined(USE_WOLFSSL)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue