diff options
author | Mårten Nordheim <marten.nordheim@qt.io> | 2018-08-24 17:37:36 +0200 |
---|---|---|
committer | Mårten Nordheim <marten.nordheim@qt.io> | 2019-01-22 15:19:48 +0000 |
commit | 7cc6f78dd448992c9a9cb31e001b908d44028516 (patch) | |
tree | ee51817ef66c9263cbac7af86f9a04b12ea6a0d4 /src/network/ssl/qsslcertificate_p.h | |
parent | e0567d137df4ff3978f767fa723ae05a7b0ab546 (diff) |
Schannel support
Adds support for Schannel, an SSL backend for Windows, as an
alternative to OpenSSL.
[ChangeLog][QtNetwork][Ssl] Added support for Schannel on Desktop
Windows. To build Qt with Schannel support use '-schannel' during
configure.
Task-number: QTBUG-62637
Change-Id: Ic4fb8ed3657dab994f9f4a4ac5cbddc7001a0a46
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'src/network/ssl/qsslcertificate_p.h')
-rw-r--r-- | src/network/ssl/qsslcertificate_p.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/network/ssl/qsslcertificate_p.h b/src/network/ssl/qsslcertificate_p.h index 2dbc4145af..4b331d4c4e 100644 --- a/src/network/ssl/qsslcertificate_p.h +++ b/src/network/ssl/qsslcertificate_p.h @@ -75,6 +75,10 @@ struct ASN1_OBJECT; #include <windows.security.cryptography.certificates.h> #endif +#if QT_CONFIG(schannel) +#include <wincrypt.h> +#endif + QT_BEGIN_NAMESPACE // forward declaration @@ -96,6 +100,10 @@ public: if (x509) q_X509_free(x509); #endif +#if QT_CONFIG(schannel) + if (certificateContext) + CertFreeCertificateContext(certificateContext); +#endif } bool null; @@ -143,6 +151,12 @@ public: static QSslCertificate QSslCertificate_from_Certificate(ABI::Windows::Security::Cryptography::Certificates::ICertificate *iCertificate); #endif + +#if QT_CONFIG(schannel) + const CERT_CONTEXT *certificateContext = nullptr; + + static QSslCertificate QSslCertificate_from_CERT_CONTEXT(const CERT_CONTEXT *certificateContext); +#endif }; QT_END_NAMESPACE |