Title: [260370] branches/safari-609-branch

Diff

Modified: branches/safari-609-branch/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp (260369 => 260370)


--- branches/safari-609-branch/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp	2020-04-20 16:23:25 UTC (rev 260369)
+++ branches/safari-609-branch/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp	2020-04-20 16:54:15 UTC (rev 260370)
@@ -91,9 +91,6 @@
     , m_throttler(*this, processPool.shouldTakeUIBackgroundAssertion())
 {
     connect();
-
-    if (auto* websiteDataStore = m_processPool.websiteDataStore())
-        m_websiteDataStores.set(websiteDataStore->sessionID(), makeRef(*websiteDataStore));
 }
 
 NetworkProcessProxy::~NetworkProcessProxy()
@@ -1170,7 +1167,6 @@
 #if ENABLE(INDEXED_DATABASE)
         createSymLinkForFileUpgrade(store->resolvedIndexedDatabaseDirectory());
 #endif
-        m_websiteDataStores.set(sessionID, WTFMove(store));
     }
 }
 
@@ -1178,25 +1174,13 @@
 {
     if (canSendMessage())
         send(Messages::NetworkProcess::DestroySession { sessionID }, 0);
-    if (!sessionID.isEphemeral())
-        m_websiteDataStores.remove(sessionID);
 }
 
 WebsiteDataStore* NetworkProcessProxy::websiteDataStoreFromSessionID(PAL::SessionID sessionID)
 {
-    auto iterator = m_websiteDataStores.find(sessionID);
-    if (iterator != m_websiteDataStores.end())
-        return iterator->value.get();
-
-    if (auto* websiteDataStore = m_processPool.websiteDataStore()) {
-        if (sessionID == websiteDataStore->sessionID())
-            return websiteDataStore;
-    }
-
-    if (sessionID != PAL::SessionID::defaultSessionID())
-        return nullptr;
-
-    return WebKit::WebsiteDataStore::defaultDataStore().ptr();
+    if (sessionID == PAL::SessionID::defaultSessionID())
+        return WebsiteDataStore::defaultDataStore().ptr();
+    return WebsiteDataStore::existingNonDefaultDataStoreForSessionID(sessionID);
 }
 
 void NetworkProcessProxy::retrieveCacheStorageParameters(PAL::SessionID sessionID)

Modified: branches/safari-609-branch/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h (260369 => 260370)


--- branches/safari-609-branch/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h	2020-04-20 16:23:25 UTC (rev 260369)
+++ branches/safari-609-branch/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h	2020-04-20 16:54:15 UTC (rev 260370)
@@ -295,8 +295,6 @@
     HashSet<WebUserContentControllerProxy*> m_webUserContentControllerProxies;
 #endif
 
-    HashMap<PAL::SessionID, RefPtr<WebsiteDataStore>> m_websiteDataStores;
-    
     std::unique_ptr<ProcessAssertion> m_uploadAssertion;
 };
 

Modified: branches/safari-609-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm (260369 => 260370)


--- branches/safari-609-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm	2020-04-20 16:23:25 UTC (rev 260369)
+++ branches/safari-609-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm	2020-04-20 16:54:15 UTC (rev 260370)
@@ -171,6 +171,25 @@
     EXPECT_TRUE([methods[0] isEqualToString:NSURLAuthenticationMethodServerTrust]);
     EXPECT_TRUE([methods[1] isEqualToString:NSURLAuthenticationMethodClientCertificate]);
 }
+
+TEST(Challenge, ClientCertificateNonPersistentDataStore)
+{
+    using namespace TestWebKitAPI;
+    TCPServer server(TCPServer::Protocol::HTTPSWithClientCertificateRequest, TCPServer::respondWithOK);
+
+    auto configuration = adoptNS([WKWebViewConfiguration new]);
+    [configuration setWebsiteDataStore:[WKWebsiteDataStore nonPersistentDataStore]];
+    auto webView = adoptNS([[WKWebView alloc] initWithFrame:CGRectZero configuration:configuration.get()]);
+    auto delegate = adoptNS([ClientCertificateDelegate new]);
+    [webView setNavigationDelegate:delegate.get()];
+    [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://127.0.0.1:%d/", server.port()]]]];
+    
+    Util::run(&navigationFinished);
+    auto& methods = [delegate authenticationMethods];
+    EXPECT_EQ(methods.size(), 2ull);
+    EXPECT_TRUE([methods[0] isEqualToString:NSURLAuthenticationMethodServerTrust]);
+    EXPECT_TRUE([methods[1] isEqualToString:NSURLAuthenticationMethodClientCertificate]);
+}
 #endif
 
 static bool receivedSecondChallenge;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to