summaryrefslogtreecommitdiffstats
path: root/src/network/ssl/qsslcontext_p.h
diff options
context:
space:
mode:
authorPeter Hartmann <phartmann@blackberry.com>2013-04-30 14:48:22 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-05-10 09:15:55 +0200
commit3be197881f100d1c3c8f3ce00501d7a32eb51119 (patch)
treef37ff774e4182560f45f9a2c85efe25bf43cce3f /src/network/ssl/qsslcontext_p.h
parent2116f9904afca7b3942433269b66a9756d5876bc (diff)
QSslConfiguration: add API to persist and resume SSL sessions
Session tickets can be cached on the client side for hours (e.g. graph.facebook.com: ~ 24 hours, api.twitter.com: 4 hours), because the server does not need to maintain state. We need public API for it so an application can cache the session (e.g. to disk) and resume a session already with the 1st handshake, saving one network round trip. Task-number: QTBUG-20668 Change-Id: I10255932dcd528ee1231538cb72b52b97f9f4a3c Reviewed-by: Richard J. Moore <rich@kde.org>
Diffstat (limited to 'src/network/ssl/qsslcontext_p.h')
-rw-r--r--src/network/ssl/qsslcontext_p.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/network/ssl/qsslcontext_p.h b/src/network/ssl/qsslcontext_p.h
index c8578d349e..2b596798a6 100644
--- a/src/network/ssl/qsslcontext_p.h
+++ b/src/network/ssl/qsslcontext_p.h
@@ -69,6 +69,9 @@ public:
SSL* createSsl();
bool cacheSession(SSL*); // should be called when handshake completed
+ QByteArray sessionASN1() const;
+ void setSessionASN1(const QByteArray &sessionASN1);
+ int sessionTicketLifeTimeHint() const;
protected:
QSslContext();
@@ -76,6 +79,8 @@ private:
SSL_CTX* ctx;
EVP_PKEY *pkey;
SSL_SESSION *session;
+ QByteArray m_sessionASN1;
+ int m_sessionTicketLifeTimeHint;
QSslError::SslError errorCode;
QString errorStr;
QSslConfiguration sslConfiguration;