diff options
author | Dan Fandrich <dan@coneharvesters.com> | 2017-04-21 22:33:17 +0200 |
---|---|---|
committer | Dan Fandrich <dan@coneharvesters.com> | 2017-04-21 22:42:14 +0200 |
commit | 5f830eaba0b4c00dabf095cede048ddcea736d9d (patch) | |
tree | e51ffa0f24ef1a7041f4aff41a3c8fe0baf192bd /lib/curl_ntlm_core.c | |
parent | 49eee28822f8eef78b736097711fb798daf3a12b (diff) | |
download | gnurl-5f830eaba0b4c00dabf095cede048ddcea736d9d.tar.gz gnurl-5f830eaba0b4c00dabf095cede048ddcea736d9d.tar.bz2 gnurl-5f830eaba0b4c00dabf095cede048ddcea736d9d.zip |
mbedtls: enable NTLM (& SMB) even if MD4 support is unavailable
In that case, use libcurl's internal MD4 routine. This fixes tests 1013
and 1014 which were failing due to configure assuming NTLM and SMB were
always available whenever mbed TLS was in use (which is now true).
Diffstat (limited to 'lib/curl_ntlm_core.c')
-rw-r--r-- | lib/curl_ntlm_core.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/curl_ntlm_core.c b/lib/curl_ntlm_core.c index fb43dda19..b15215b2f 100644 --- a/lib/curl_ntlm_core.c +++ b/lib/curl_ntlm_core.c @@ -80,6 +80,9 @@ # include <mbedtls/des.h> # include <mbedtls/md4.h> +# if !defined(MBEDTLS_MD4_C) +# include "curl_md4.h" +# endif #elif defined(USE_NSS) @@ -568,10 +571,11 @@ CURLcode Curl_ntlm_core_mk_nt_hash(struct Curl_easy *data, gcry_md_write(MD4pw, pw, 2 * len); memcpy(ntbuffer, gcry_md_read(MD4pw, 0), MD4_DIGEST_LENGTH); gcry_md_close(MD4pw); +#elif defined(USE_NSS) || defined(USE_OS400CRYPTO) || \ + (defined(USE_MBEDTLS) && !defined(MBEDTLS_MD4_C)) + Curl_md4it(ntbuffer, pw, 2 * len); #elif defined(USE_MBEDTLS) mbedtls_md4(pw, 2 * len, ntbuffer); -#elif defined(USE_NSS) || defined(USE_OS400CRYPTO) - Curl_md4it(ntbuffer, pw, 2 * len); #elif defined(USE_DARWINSSL) (void)CC_MD4(pw, (CC_LONG)(2 * len), ntbuffer); #elif defined(USE_WIN32_CRYPTO) |