mirror of
https://github.com/curl/curl.git
synced 2026-04-14 22:51:53 +03:00
Schannel is not supported by UWP. SSPI is also required by Schannel in curl, and SSPI also isn't supported by UWP. mingw-w64 is able to create such build regardless (my guess: due to API parts not accurately marked as UWP-only), but the binary is unlikely to work. With MSVC the failure happens at build-time. Ref: https://learn.microsoft.com/windows/win32/api/sspi/nf-sspi-initsecurityinterfacea#requirements Ref: https://learn.microsoft.com/windows/win32/secauthn/initializesecuritycontext--schannel#requirements Drop all UWP-related logic, including two related feature checks, that can now be permanently enabled. Also: - build: show fatal error for Schannel in UWP mode. - build: do not allow enabling SSPI in UWP mode. - drop undocumented option `DISABLE_SCHANNEL_CLIENT_CERT`. Added without mention in an unrelated commit. The PR text says to save size. On x64 this is 0.3%, or 4KB out of 1.3MB. The tiny gain doesn't justify an extra build variant. Ref:8beff43559- move `MPROTO_SCHANNEL_CERT_SHARE_KEY` closer to its use. - replace commented block with `#if 0`. Reviewed-by: Jay Satiro Follow-up tocd0ec4784c#17089 Closes #18116
50 lines
1.8 KiB
Text
50 lines
1.8 KiB
Text
#***************************************************************************
|
|
# _ _ ____ _
|
|
# Project ___| | | | _ \| |
|
|
# / __| | | | |_) | |
|
|
# | (__| |_| | _ <| |___
|
|
# \___|\___/|_| \_\_____|
|
|
#
|
|
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
#
|
|
# This software is licensed as described in the file COPYING, which
|
|
# you should have received as part of this distribution. The terms
|
|
# are also available at https://curl.se/docs/copyright.html.
|
|
#
|
|
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
|
# copies of the Software, and permit persons to whom the Software is
|
|
# furnished to do so, under the terms of the COPYING file.
|
|
#
|
|
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
# KIND, either express or implied.
|
|
#
|
|
# SPDX-License-Identifier: curl
|
|
#
|
|
#***************************************************************************
|
|
|
|
AC_DEFUN([CURL_WITH_SCHANNEL], [
|
|
AC_MSG_CHECKING([whether to enable Windows native SSL/TLS])
|
|
if test "x$OPT_SCHANNEL" != xno; then
|
|
ssl_msg=
|
|
if test "x$OPT_SCHANNEL" != "xno" &&
|
|
test "x$curl_cv_native_windows" = "xyes"; then
|
|
if test "$curl_cv_winuwp" = 'yes'; then
|
|
AC_MSG_ERROR([UWP does not support Schannel.])
|
|
fi
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(USE_SCHANNEL, 1, [to enable Windows native SSL/TLS support])
|
|
ssl_msg="Schannel"
|
|
test schannel != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
|
|
SCHANNEL_ENABLED=1
|
|
# --with-schannel implies --enable-sspi
|
|
AC_DEFINE(USE_WINDOWS_SSPI, 1, [to enable SSPI support])
|
|
USE_WINDOWS_SSPI=1
|
|
curl_sspi_msg="enabled"
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
])
|