diff options
Diffstat (limited to 'src/network/ssl/qsslsocket_openssl_p.h')
-rw-r--r-- | src/network/ssl/qsslsocket_openssl_p.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/network/ssl/qsslsocket_openssl_p.h b/src/network/ssl/qsslsocket_openssl_p.h index b31eae9c97..deeceb8d85 100644 --- a/src/network/ssl/qsslsocket_openssl_p.h +++ b/src/network/ssl/qsslsocket_openssl_p.h @@ -117,6 +117,11 @@ public: void disconnected(); QSslCipher sessionCipher() const; void continueHandshake(); + bool checkSslErrors(); +#ifdef Q_OS_WIN + void fetchCaRootForCert(const QSslCertificate &cert); + void _q_caRootLoaded(QSslCertificate,QSslCertificate); +#endif Q_AUTOTEST_EXPORT static long setupOpenSslOptions(QSsl::SslProtocol protocol, QSsl::SslOptions sslOptions); static QSslCipher QSslCipher_from_SSL_CIPHER(SSL_CIPHER *cipher); @@ -127,6 +132,23 @@ public: static QString getErrorsFromOpenSsl(); }; +#ifdef Q_OS_WIN +class QWindowsCaRootFetcher : public QObject +{ + Q_OBJECT; +public: + QWindowsCaRootFetcher(const QSslCertificate &certificate, QSslSocket::SslMode sslMode); + ~QWindowsCaRootFetcher(); +public slots: + void start(); +signals: + void finished(QSslCertificate brokenChain, QSslCertificate caroot); +private: + QSslCertificate cert; + QSslSocket::SslMode mode; +}; +#endif + QT_END_NAMESPACE #endif |