From b180a273fab64b601e7f44a36a0ec8bd5363e8e1 Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Fri, 18 Aug 2017 07:53:33 +0200 Subject: [PATCH] metalink: allow compiling with multiple SSL backends Previously, the code assumed that at most one of the SSL backends would be compiled in, emulating OpenSSL's functions if the configured backend was not OpenSSL itself. However, now we allow building with multiple SSL backends and choosing one at runtime. Therefore, metalink needs to be adjusted to handle this scenario, too. Signed-off-by: Johannes Schindelin --- src/tool_metalink.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/tool_metalink.c b/src/tool_metalink.c index 4713a911b..a20aec14e 100644 --- a/src/tool_metalink.c +++ b/src/tool_metalink.c @@ -117,7 +117,9 @@ struct win32_crypto_hash { return PARAM_NO_MEM; \ } WHILE_FALSE -#ifdef USE_GNUTLS_NETTLE +#if defined(USE_OPENSSL) +/* Functions are already defined */ +#elif defined(USE_GNUTLS_NETTLE) static int MD5_Init(MD5_CTX *ctx) { @@ -375,7 +377,7 @@ static void SHA256_Final(unsigned char digest[32], SHA256_CTX *ctx) sha256_finish(ctx, digest); } -#elif defined(_WIN32) && !defined(USE_OPENSSL) +#elif defined(_WIN32) static void win32_crypto_final(struct win32_crypto_hash *ctx, unsigned char *digest,