From: Steve Holme <steve_holme@hotmail.com>
Date: Sun, 7 Dec 2014 20:44:57 +0000 (+0000)
Subject: smb: Fixed Windows autoconf builds following commit eb88d778e7
X-Git-Tag: curl-7_40_0~196
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=dcd484a23859a3c7107f81ca9f54fed9d81eb2ca;p=curl

smb: Fixed Windows autoconf builds following commit eb88d778e7

As Windows based autoconf builds don't yet define USE_WIN32_CRYPTO
either explicitly through --enable-win32-cypto or automatically on
_WIN32 based platforms, subsequent builds broke with the following
error message:

"Can't compile NTLM support without a crypto library."
---

diff --git a/lib/curl_ntlm_core.c b/lib/curl_ntlm_core.c
index ee015398c..9eb92ecb6 100644
--- a/lib/curl_ntlm_core.c
+++ b/lib/curl_ntlm_core.c
@@ -31,6 +31,8 @@
  * http://www.innovation.ch/java/ntlm.html
  */
 
+#if !defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO)
+
 #ifdef USE_SSLEAY
 
 #  ifdef USE_OPENSSL
@@ -734,4 +736,6 @@ CURLcode  Curl_ntlm_core_mk_lmv2_resp(unsigned char *ntlmv2hash,
 
 #endif /* USE_NTRESPONSES */
 
+#endif /* !USE_WINDOWS_SSPI || USE_WIN32_CRYPTO */
+
 #endif /* USE_NTLM */
diff --git a/lib/curl_ntlm_core.h b/lib/curl_ntlm_core.h
index 5e89ef056..a600f0a7f 100644
--- a/lib/curl_ntlm_core.h
+++ b/lib/curl_ntlm_core.h
@@ -26,6 +26,8 @@
 
 #if defined(USE_NTLM)
 
+#if !defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO)
+
 #ifdef USE_SSLEAY
 #  if !defined(OPENSSL_VERSION_NUMBER) && \
       !defined(HEADER_SSL_H) && !defined(HEADER_MD5_H)
@@ -90,6 +92,8 @@ CURLcode  Curl_ntlm_core_mk_lmv2_resp(unsigned char *ntlmv2hash,
 
 #endif /* USE_NTRESPONSES */
 
+#endif /* !USE_WINDOWS_SSPI || USE_WIN32_CRYPTO */
+
 #endif /* USE_NTLM */
 
 #endif /* HEADER_CURL_NTLM_CORE_H */
diff --git a/lib/smb.c b/lib/smb.c
index 7627c8943..2b2781aca 100644
--- a/lib/smb.c
+++ b/lib/smb.c
@@ -24,6 +24,8 @@
 
 #if !defined(CURL_DISABLE_SMB) && defined(USE_NTLM)
 
+#if !defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO)
+
 #define BUILDING_CURL_SMB_C
 
 #ifdef _WIN32
@@ -894,4 +896,6 @@ static CURLcode smb_parse_url_path(struct connectdata *conn)
   return CURLE_OK;
 }
 
+#endif /* !USE_WINDOWS_SSPI || USE_WIN32_CRYPTO */
+
 #endif /* CURL_DISABLE_SMB && USE_NTLM */
diff --git a/lib/smb.h b/lib/smb.h
index ff1a812e3..233f4abd6 100644
--- a/lib/smb.h
+++ b/lib/smb.h
@@ -258,9 +258,13 @@ struct smb_tree_disconnect {
 
 #if !defined(CURL_DISABLE_SMB) && defined(USE_NTLM)
 
+#if !defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO)
+
 extern const struct Curl_handler Curl_handler_smb;
 extern const struct Curl_handler Curl_handler_smbs;
 
+#endif /* !USE_WINDOWS_SSPI || USE_WIN32_CRYPTO */
+
 #endif /* CURL_DISABLE_SMB && USE_NTLM */
 
 #endif /* HEADER_CURL_SMB_H */
diff --git a/lib/url.c b/lib/url.c
index 8b4f3a95c..9996dd527 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -220,7 +220,8 @@ static const struct Curl_handler * const protocols[] = {
 #endif
 #endif
 
-#if !defined(CURL_DISABLE_SMB) && defined(USE_NTLM)
+#if !defined(CURL_DISABLE_SMB) && defined(USE_NTLM) && \
+   (!defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO))
   &Curl_handler_smb,
 #ifdef USE_SSL
   &Curl_handler_smbs,
diff --git a/lib/version.c b/lib/version.c
index 4b583e8e5..83143f402 100644
--- a/lib/version.c
+++ b/lib/version.c
@@ -216,7 +216,8 @@ static const char * const protocols[] = {
 #ifdef USE_LIBSSH2
   "sftp",
 #endif
-#if !defined(CURL_DISABLE_SMB) && defined(USE_NTLM)
+#if !defined(CURL_DISABLE_SMB) && defined(USE_NTLM) && \
+   (!defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO))
   "smb",
 #  ifdef USE_SSL
   "smbs",