Title: [283208] trunk/Source/WebCore
Revision
283208
Author
[email protected]
Date
2021-09-28 20:16:47 -0700 (Tue, 28 Sep 2021)

Log Message

[Curl] Set CURL_LOCK_DATA_SSL_SESSION option to reduce SSL/TLS handshake time
https://bugs.webkit.org/show_bug.cgi?id=230818

Reviewed by Fujii Hironori.

Set CURL_LOCK_DATA_SSL_SESSION option to reuse Session ID.
It reduces SSL/TLS handshake time.

Covered by existing tests.

* platform/network/curl/CurlContext.cpp:
(WebCore::CurlShareHandle::CurlShareHandle):
(WebCore::CurlShareHandle::mutexFor):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (283207 => 283208)


--- trunk/Source/WebCore/ChangeLog	2021-09-29 01:33:02 UTC (rev 283207)
+++ trunk/Source/WebCore/ChangeLog	2021-09-29 03:16:47 UTC (rev 283208)
@@ -1,3 +1,19 @@
+2021-09-28  Takashi Komori  <[email protected]>
+
+        [Curl] Set CURL_LOCK_DATA_SSL_SESSION option to reduce SSL/TLS handshake time
+        https://bugs.webkit.org/show_bug.cgi?id=230818
+
+        Reviewed by Fujii Hironori.
+
+        Set CURL_LOCK_DATA_SSL_SESSION option to reuse Session ID.
+        It reduces SSL/TLS handshake time.
+
+        Covered by existing tests.
+
+        * platform/network/curl/CurlContext.cpp:
+        (WebCore::CurlShareHandle::CurlShareHandle):
+        (WebCore::CurlShareHandle::mutexFor):
+
 2021-09-28  Devin Rousso  <[email protected]>
 
         Move `DrawGlyphsRecorder` outside of `DisplayList`

Modified: trunk/Source/WebCore/platform/network/curl/CurlContext.cpp (283207 => 283208)


--- trunk/Source/WebCore/platform/network/curl/CurlContext.cpp	2021-09-29 01:33:02 UTC (rev 283207)
+++ trunk/Source/WebCore/platform/network/curl/CurlContext.cpp	2021-09-29 03:16:47 UTC (rev 283208)
@@ -171,6 +171,7 @@
     m_shareHandle = curl_share_init();
     curl_share_setopt(m_shareHandle, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE);
     curl_share_setopt(m_shareHandle, CURLSHOPT_SHARE, CURL_LOCK_DATA_DNS);
+    curl_share_setopt(m_shareHandle, CURLSHOPT_SHARE, CURL_LOCK_DATA_SSL_SESSION);
     curl_share_setopt(m_shareHandle, CURLSHOPT_LOCKFUNC, lockCallback);
     curl_share_setopt(m_shareHandle, CURLSHOPT_UNLOCKFUNC, unlockCallback);
 }
@@ -198,6 +199,7 @@
     static Lock cookieMutex;
     static Lock dnsMutex;
     static Lock shareMutex;
+    static Lock sslSessionMutex;
 
     switch (data) {
     case CURL_LOCK_DATA_COOKIE:
@@ -206,6 +208,8 @@
         return &dnsMutex;
     case CURL_LOCK_DATA_SHARE:
         return &shareMutex;
+    case CURL_LOCK_DATA_SSL_SESSION:
+        return &sslSessionMutex;
     default:
         ASSERT_NOT_REACHED();
         return nullptr;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to