summaryrefslogtreecommitdiffstats
path: root/src/network/ssl/qsslcertificate.h
diff options
context:
space:
mode:
authorTimur Pocheptsov <timur.pocheptsov@qt.io>2021-01-26 17:20:29 +0100
committerTimur Pocheptsov <timur.pocheptsov@qt.io>2021-02-07 16:10:18 +0100
commit405337ee7276be4b76e86745c0694c51283b6b07 (patch)
tree563beb2e35aa24edf8b6346ca42a42850cc0488f /src/network/ssl/qsslcertificate.h
parent137f5518b84439845aeb5d115341b32fee33bf10 (diff)
Introduce QSsl::X509Certificate interface and its implementations
To enable QSslCertificate to use TLS plugins. All backend-specific code is to be moved from QSslCertificate(Private) making them backend-neutral. Pick-to: dev Task-number: QTBUG-90954 Task-number: QTBUG-65922 Change-Id: Ic9d5abf91e42ce81fe56239f95ae97b64035e950 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'src/network/ssl/qsslcertificate.h')
-rw-r--r--src/network/ssl/qsslcertificate.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/network/ssl/qsslcertificate.h b/src/network/ssl/qsslcertificate.h
index cf97dcbee8..a2ba90465f 100644
--- a/src/network/ssl/qsslcertificate.h
+++ b/src/network/ssl/qsslcertificate.h
@@ -66,6 +66,12 @@ class QSslCertificate;
// qHash is a friend, but we can't use default arguments for friends (ยง8.3.6.4)
Q_NETWORK_EXPORT size_t qHash(const QSslCertificate &key, size_t seed = 0) noexcept;
+namespace QSsl {
+
+class X509Certificate;
+
+} // namespace QSsl.
+
class QSslCertificatePrivate;
class Q_NETWORK_EXPORT QSslCertificate
{
@@ -157,9 +163,14 @@ public:
Qt::HANDLE handle() const;
private:
+ QSsl::X509Certificate *backendImplementation() const
+ {
+ return nullptr; // TLSTODO
+ }
QExplicitlySharedDataPointer<QSslCertificatePrivate> d;
friend class QSslCertificatePrivate;
friend class QSslSocketBackendPrivate;
+ friend class QTlsBackend;
friend Q_NETWORK_EXPORT size_t qHash(const QSslCertificate &key, size_t seed) noexcept;
};