summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-12-12 18:29:54 (GMT)
committerBrad King <brad.king@kitware.com>2014-12-12 18:52:46 (GMT)
commitba8c6632194256a6a3370713d8e0423ad516361a (patch)
tree3dc15964e6934d5e79199437335548651f97499c
parenta829f09bdd5cf28c59eeebd39d1652be2bd23283 (diff)
downloadCMake-ba8c6632194256a6a3370713d8e0423ad516361a.zip
CMake-ba8c6632194256a6a3370713d8e0423ad516361a.tar.gz
CMake-ba8c6632194256a6a3370713d8e0423ad516361a.tar.bz2
curl: Use Windows SSL/TLS native implementation
On Windows, when CMAKE_USE_OPENSSL is OFF, use the OS implementation. This will allow the OS-configured CA list to be trusted automatically.
-rw-r--r--Help/release/dev/curl-winssl.rst9
-rw-r--r--Utilities/cmcurl/CMakeLists.txt6
2 files changed, 14 insertions, 1 deletions
diff --git a/Help/release/dev/curl-winssl.rst b/Help/release/dev/curl-winssl.rst
new file mode 100644
index 0000000..9a28f4f
--- /dev/null
+++ b/Help/release/dev/curl-winssl.rst
@@ -0,0 +1,9 @@
+curl-winssl
+-----------
+
+* On Windows, commands supporting network communication, such as
+ :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and
+ :command:`ctest_submit`, now support SSL/TLS even when CMake
+ is not built against OpenSSL. The Windows native SSL/TLS
+ implementation is used by default. OS-configured certificate
+ authorities will be trusted automatically.
diff --git a/Utilities/cmcurl/CMakeLists.txt b/Utilities/cmcurl/CMakeLists.txt
index eaf276b..1092e48 100644
--- a/Utilities/cmcurl/CMakeLists.txt
+++ b/Utilities/cmcurl/CMakeLists.txt
@@ -460,7 +460,11 @@ if(CMAKE_USE_OPENSSL)
add_definitions(-DCURL_CA_BUNDLE="${CURL_CA_BUNDLE}")
endif()
endif(OPENSSL_FOUND)
-endif(CMAKE_USE_OPENSSL)
+elseif(WIN32)
+ # Use Windows SSL/TLS native implementation.
+ add_definitions(-DUSE_SCHANNEL)
+ set(USE_WINDOWS_SSPI 1)
+endif()
#libSSH2
option(CMAKE_USE_LIBSSH2 "Use libSSH2" ON)