diff options
Diffstat (limited to 'src/network/ssl/qsslcertificate_p.h')
-rw-r--r-- | src/network/ssl/qsslcertificate_p.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/network/ssl/qsslcertificate_p.h b/src/network/ssl/qsslcertificate_p.h index dfdceab502..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,14 +100,18 @@ public: if (x509) q_X509_free(x509); #endif +#if QT_CONFIG(schannel) + if (certificateContext) + CertFreeCertificateContext(certificateContext); +#endif } bool null; QByteArray versionString; QByteArray serialNumberString; - QMap<QByteArray, QString> issuerInfo; - QMap<QByteArray, QString> subjectInfo; + QMultiMap<QByteArray, QString> issuerInfo; + QMultiMap<QByteArray, QString> subjectInfo; QDateTime notValidAfter; QDateTime notValidBefore; @@ -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 |