Diff
Modified: trunk/Source/WebCore/ChangeLog (239736 => 239737)
--- trunk/Source/WebCore/ChangeLog 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebCore/ChangeLog 2019-01-08 20:49:39 UTC (rev 239737)
@@ -1,5 +1,27 @@
2019-01-08 Alex Christensen <achristen...@webkit.org>
+ Stop using NetworkStorageSession in WebProcess
+ https://bugs.webkit.org/show_bug.cgi?id=193236
+
+ Reviewed by Don Olmstead.
+
+ No change in behavior. Some code was only used for ResourceHandle, which isn't used in modern WebKit,
+ and for cookies, which are handled in the NetworkProcess in modern WebKit.
+
+ * loader/CookieJar.cpp:
+ (WebCore::storageSession):
+ * loader/EmptyClients.cpp:
+ * platform/network/NetworkingContext.h:
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::createNSURLConnection):
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::platformLoadResourceSynchronously):
+ (WebCore::ResourceHandle::willSendRequest):
+ (WebCore::ResourceHandle::tryHandlePasswordBasedAuthentication):
+ (WebCore::ResourceHandle::receivedCredential):
+
+2019-01-08 Alex Christensen <achristen...@webkit.org>
+
Unreviewed, rolling out r239727.
Broke API tests
Modified: trunk/Source/WebCore/loader/CookieJar.cpp (239736 => 239737)
--- trunk/Source/WebCore/loader/CookieJar.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebCore/loader/CookieJar.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -41,22 +41,6 @@
namespace WebCore {
-static NetworkingContext* networkingContext(const Document& document)
-{
- // FIXME: Returning 0 means falling back to default context. That's not a choice that is appropriate to do at runtime
- Frame* frame = document.frame();
- if (!frame)
- return nullptr;
-
- return frame->loader().networkingContext();
-}
-
-inline NetworkStorageSession& storageSession(const Document& document)
-{
- NetworkingContext* context = networkingContext(document);
- return context ? context->storageSession() : NetworkStorageSession::defaultStorageSession();
-}
-
static IncludeSecureCookies shouldIncludeSecureCookies(const Document& document, const URL& url)
{
return (url.protocolIs("https") && !document.foundMixedContent().contains(SecurityContext::MixedContentType::Active)) ? IncludeSecureCookies::Yes : IncludeSecureCookies::No;
@@ -78,9 +62,9 @@
std::pair<String, bool> result;
auto frame = document.frame();
if (frame)
- result = platformStrategies()->cookiesStrategy()->cookiesForDOM(storageSession(document), document.firstPartyForCookies(), sameSiteInfo(document), url, frame->loader().client().frameID(), frame->loader().client().pageID(), includeSecureCookies);
+ result = platformStrategies()->cookiesStrategy()->cookiesForDOM(document.sessionID(), document.firstPartyForCookies(), sameSiteInfo(document), url, frame->loader().client().frameID(), frame->loader().client().pageID(), includeSecureCookies);
else
- result = platformStrategies()->cookiesStrategy()->cookiesForDOM(storageSession(document), document.firstPartyForCookies(), sameSiteInfo(document), url, WTF::nullopt, WTF::nullopt, includeSecureCookies);
+ result = platformStrategies()->cookiesStrategy()->cookiesForDOM(document.sessionID(), document.firstPartyForCookies(), sameSiteInfo(document), url, WTF::nullopt, WTF::nullopt, includeSecureCookies);
if (result.second)
document.setSecureCookiesAccessed();
@@ -93,7 +77,7 @@
TraceScope scope(FetchCookiesStart, FetchCookiesEnd);
CookieRequestHeaderFieldProxy proxy;
- proxy.sessionID = storageSession(document).sessionID();
+ proxy.sessionID = document.sessionID();
proxy.firstParty = document.firstPartyForCookies();
proxy.sameSiteInfo = sameSiteInfo(document);
proxy.url = ""
@@ -109,14 +93,14 @@
{
auto frame = document.frame();
if (frame)
- platformStrategies()->cookiesStrategy()->setCookiesFromDOM(storageSession(document), document.firstPartyForCookies(), sameSiteInfo(document), url, frame->loader().client().frameID(), frame->loader().client().pageID(), cookieString);
+ platformStrategies()->cookiesStrategy()->setCookiesFromDOM(document.sessionID(), document.firstPartyForCookies(), sameSiteInfo(document), url, frame->loader().client().frameID(), frame->loader().client().pageID(), cookieString);
else
- platformStrategies()->cookiesStrategy()->setCookiesFromDOM(storageSession(document), document.firstPartyForCookies(), sameSiteInfo(document), url, WTF::nullopt, WTF::nullopt, cookieString);
+ platformStrategies()->cookiesStrategy()->setCookiesFromDOM(document.sessionID(), document.firstPartyForCookies(), sameSiteInfo(document), url, WTF::nullopt, WTF::nullopt, cookieString);
}
bool cookiesEnabled(const Document& document)
{
- return platformStrategies()->cookiesStrategy()->cookiesEnabled(storageSession(document));
+ return platformStrategies()->cookiesStrategy()->cookiesEnabled(document.sessionID());
}
String cookieRequestHeaderFieldValue(Document& document, const URL& url)
@@ -126,9 +110,9 @@
std::pair<String, bool> result;
auto frame = document.frame();
if (frame)
- result = platformStrategies()->cookiesStrategy()->cookieRequestHeaderFieldValue(storageSession(document), document.firstPartyForCookies(), sameSiteInfo(document), url, frame->loader().client().frameID(), frame->loader().client().pageID(), includeSecureCookies);
+ result = platformStrategies()->cookiesStrategy()->cookieRequestHeaderFieldValue(document.sessionID(), document.firstPartyForCookies(), sameSiteInfo(document), url, frame->loader().client().frameID(), frame->loader().client().pageID(), includeSecureCookies);
else
- result = platformStrategies()->cookiesStrategy()->cookieRequestHeaderFieldValue(storageSession(document), document.firstPartyForCookies(), sameSiteInfo(document), url, WTF::nullopt, WTF::nullopt, includeSecureCookies);
+ result = platformStrategies()->cookiesStrategy()->cookieRequestHeaderFieldValue(document.sessionID(), document.firstPartyForCookies(), sameSiteInfo(document), url, WTF::nullopt, WTF::nullopt, includeSecureCookies);
if (result.second)
document.setSecureCookiesAccessed();
@@ -140,14 +124,14 @@
{
auto frame = document.frame();
if (frame)
- return platformStrategies()->cookiesStrategy()->getRawCookies(storageSession(document), document.firstPartyForCookies(), sameSiteInfo(document), url, frame->loader().client().frameID(), frame->loader().client().pageID(), cookies);
+ return platformStrategies()->cookiesStrategy()->getRawCookies(document.sessionID(), document.firstPartyForCookies(), sameSiteInfo(document), url, frame->loader().client().frameID(), frame->loader().client().pageID(), cookies);
- return platformStrategies()->cookiesStrategy()->getRawCookies(storageSession(document), document.firstPartyForCookies(), sameSiteInfo(document), url, WTF::nullopt, WTF::nullopt, cookies);
+ return platformStrategies()->cookiesStrategy()->getRawCookies(document.sessionID(), document.firstPartyForCookies(), sameSiteInfo(document), url, WTF::nullopt, WTF::nullopt, cookies);
}
void deleteCookie(const Document& document, const URL& url, const String& cookieName)
{
- platformStrategies()->cookiesStrategy()->deleteCookie(storageSession(document), url, cookieName);
+ platformStrategies()->cookiesStrategy()->deleteCookie(document.sessionID(), url, cookieName);
}
}
Modified: trunk/Source/WebCore/loader/EmptyClients.cpp (239736 => 239737)
--- trunk/Source/WebCore/loader/EmptyClients.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebCore/loader/EmptyClients.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -287,7 +287,7 @@
EmptyFrameNetworkingContext();
bool shouldClearReferrerOnHTTPSToHTTPRedirect() const { return true; }
- NetworkStorageSession& storageSession() const final { return NetworkStorageSession::defaultStorageSession(); }
+ NetworkStorageSession* storageSession() const final { return &NetworkStorageSession::defaultStorageSession(); }
#if PLATFORM(COCOA)
bool localFileContentSniffingEnabled() const { return false; }
Modified: trunk/Source/WebCore/platform/CookiesStrategy.h (239736 => 239737)
--- trunk/Source/WebCore/platform/CookiesStrategy.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebCore/platform/CookiesStrategy.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -40,13 +40,12 @@
class CookiesStrategy {
public:
- virtual std::pair<String, bool> cookiesForDOM(const NetworkStorageSession&, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies) = 0;
- virtual void setCookiesFromDOM(const NetworkStorageSession&, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String& cookieString) = 0;
- virtual bool cookiesEnabled(const NetworkStorageSession&) = 0;
- virtual std::pair<String, bool> cookieRequestHeaderFieldValue(const NetworkStorageSession&, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies) = 0;
- virtual std::pair<String, bool> cookieRequestHeaderFieldValue(PAL::SessionID, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies) = 0;
- virtual bool getRawCookies(const NetworkStorageSession&, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<Cookie>&) = 0;
- virtual void deleteCookie(const NetworkStorageSession&, const URL&, const String& cookieName) = 0;
+ virtual std::pair<String, bool> cookiesForDOM(const PAL::SessionID&, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies) = 0;
+ virtual void setCookiesFromDOM(const PAL::SessionID&, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String& cookieString) = 0;
+ virtual bool cookiesEnabled(const PAL::SessionID&) = 0;
+ virtual std::pair<String, bool> cookieRequestHeaderFieldValue(const PAL::SessionID&, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies) = 0;
+ virtual bool getRawCookies(const PAL::SessionID&, const URL& firstParty, const SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<Cookie>&) = 0;
+ virtual void deleteCookie(const PAL::SessionID&, const URL&, const String& cookieName) = 0;
protected:
virtual ~CookiesStrategy() = default;
@@ -53,16 +52,3 @@
};
} // namespace WebCore
-
-namespace WTF {
-
-template<> struct EnumTraits<WebCore::IncludeSecureCookies> {
- using values = EnumValues<
- WebCore::IncludeSecureCookies,
- WebCore::IncludeSecureCookies::No,
- WebCore::IncludeSecureCookies::Yes
- >;
-};
-
-} // namespace WTF
-
Modified: trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp (239736 => 239737)
--- trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -26,6 +26,7 @@
#include "config.h"
#include "NetworkStorageSession.h"
+#include "RuntimeApplicationChecks.h"
#include <pal/SessionID.h>
#include <wtf/NeverDestroyed.h>
#include <wtf/ProcessPrivilege.h>
Modified: trunk/Source/WebCore/platform/network/NetworkingContext.h (239736 => 239737)
--- trunk/Source/WebCore/platform/network/NetworkingContext.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebCore/platform/network/NetworkingContext.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -58,7 +58,7 @@
virtual String sourceApplicationIdentifier() const { return emptyString(); }
- virtual NetworkStorageSession& storageSession() const = 0;
+ virtual NetworkStorageSession* storageSession() const = 0;
#if PLATFORM(WIN)
virtual ResourceError blockedError(const ResourceRequest&) const = 0;
Modified: trunk/Source/WebCore/platform/network/cf/ResourceHandleCFNet.cpp (239736 => 239737)
--- trunk/Source/WebCore/platform/network/cf/ResourceHandleCFNet.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebCore/platform/network/cf/ResourceHandleCFNet.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -149,12 +149,12 @@
if (d->m_user.isEmpty() && d->m_pass.isEmpty()) {
// <rdar://problem/7174050> - For URLs that match the paths of those previously challenged for HTTP Basic authentication,
// try and reuse the credential preemptively, as allowed by RFC 2617.
- d->m_initialCredential = d->m_context->storageSession().credentialStorage().get(partition, firstRequest().url());
+ d->m_initialCredential = d->m_context->storageSession()->credentialStorage().get(partition, firstRequest().url());
} else {
// If there is already a protection space known for the URL, update stored credentials before sending a request.
// This makes it possible to implement logout by sending an XMLHttpRequest with known incorrect credentials, and aborting it immediately
// (so that an authentication dialog doesn't pop up).
- d->m_context->storageSession().credentialStorage().set(partition, Credential(d->m_user, d->m_pass, CredentialPersistenceNone), firstRequest().url());
+ d->m_context->storageSession()->credentialStorage().set(partition, Credential(d->m_user, d->m_pass, CredentialPersistenceNone), firstRequest().url());
}
}
@@ -261,7 +261,7 @@
if (!d->m_context->isValid())
return false;
- d->m_storageSession = d->m_context->storageSession().platformSession();
+ d->m_storageSession = d->m_context->storageSession()->platformSession();
bool shouldUseCredentialStorage = !client() || client()->shouldUseCredentialStorage(this);
@@ -307,7 +307,7 @@
// Only consider applying authentication credentials if this is actually a redirect and the redirect
// URL didn't include credentials of its own.
if (d->m_user.isEmpty() && d->m_pass.isEmpty() && !redirectResponse.isNull()) {
- Credential credential = d->m_context->storageSession().credentialStorage().get(partition, request.url());
+ Credential credential = d->m_context->storageSession()->credentialStorage().get(partition, request.url());
if (!credential.isEmpty()) {
d->m_initialCredential = credential;
@@ -382,7 +382,7 @@
URL urlToStore;
if (challenge.failureResponse().httpStatusCode() == 401)
urlToStore = challenge.failureResponse().url();
- d->m_context->storageSession().credentialStorage().set(partition, credential, challenge.protectionSpace(), urlToStore);
+ d->m_context->storageSession()->credentialStorage().set(partition, credential, challenge.protectionSpace(), urlToStore);
CFURLConnectionUseCredential(d->m_connection.get(), cfCredential.get(), challenge.cfURLAuthChallengeRef());
d->m_user = String();
@@ -396,16 +396,16 @@
// The stored credential wasn't accepted, stop using it.
// There is a race condition here, since a different credential might have already been stored by another ResourceHandle,
// but the observable effect should be very minor, if any.
- d->m_context->storageSession().credentialStorage().remove(partition, challenge.protectionSpace());
+ d->m_context->storageSession()->credentialStorage().remove(partition, challenge.protectionSpace());
}
if (!challenge.previousFailureCount()) {
- Credential credential = d->m_context->storageSession().credentialStorage().get(partition, challenge.protectionSpace());
+ Credential credential = d->m_context->storageSession()->credentialStorage().get(partition, challenge.protectionSpace());
if (!credential.isEmpty() && credential != d->m_initialCredential) {
ASSERT(credential.persistence() == CredentialPersistenceNone);
if (challenge.failureResponse().httpStatusCode() == 401) {
// Store the credential back, possibly adding it as a default for this directory.
- d->m_context->storageSession().credentialStorage().set(partition, credential, challenge.protectionSpace(), challenge.failureResponse().url());
+ d->m_context->storageSession()->credentialStorage().set(partition, credential, challenge.protectionSpace(), challenge.failureResponse().url());
}
#if PLATFORM(COCOA)
CFURLConnectionUseCredential(d->m_connection.get(), credential.cfCredential(), challenge.cfURLAuthChallengeRef());
@@ -455,7 +455,7 @@
if (challenge.failureResponse().httpStatusCode() == 401)
urlToStore = challenge.failureResponse().url();
- d->m_context->storageSession().credentialStorage().set(firstRequest().cachePartition(), webCredential, challenge.protectionSpace(), urlToStore);
+ d->m_context->storageSession()->credentialStorage().set(firstRequest().cachePartition(), webCredential, challenge.protectionSpace(), urlToStore);
if (d->m_connection) {
#if PLATFORM(COCOA)
@@ -571,7 +571,7 @@
bool shouldContentEncodingSniff = true;
RefPtr<ResourceHandle> handle = adoptRef(new ResourceHandle(context, request, &client, defersLoading, shouldContentSniff, shouldContentEncodingSniff));
- handle->d->m_storageSession = context->storageSession().platformSession();
+ handle->d->m_storageSession = context->storageSession()->platformSession();
if (handle->d->m_scheduledFailureType != NoFailure) {
error = context->blockedError(request);
Modified: trunk/Source/WebCore/platform/network/mac/ResourceHandleMac.mm (239736 => 239737)
--- trunk/Source/WebCore/platform/network/mac/ResourceHandleMac.mm 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebCore/platform/network/mac/ResourceHandleMac.mm 2019-01-08 20:49:39 UTC (rev 239737)
@@ -157,12 +157,12 @@
if (d->m_user.isEmpty() && d->m_pass.isEmpty()) {
// <rdar://problem/7174050> - For URLs that match the paths of those previously challenged for HTTP Basic authentication,
// try and reuse the credential preemptively, as allowed by RFC 2617.
- d->m_initialCredential = d->m_context->storageSession().credentialStorage().get(firstRequest().cachePartition(), firstRequest().url());
+ d->m_initialCredential = d->m_context->storageSession()->credentialStorage().get(firstRequest().cachePartition(), firstRequest().url());
} else {
// If there is already a protection space known for the URL, update stored credentials before sending a request.
// This makes it possible to implement logout by sending an XMLHttpRequest with known incorrect credentials, and aborting it immediately
// (so that an authentication dialog doesn't pop up).
- d->m_context->storageSession().credentialStorage().set(firstRequest().cachePartition(), Credential(d->m_user, d->m_pass, CredentialPersistenceNone), firstRequest().url());
+ d->m_context->storageSession()->credentialStorage().set(firstRequest().cachePartition(), Credential(d->m_user, d->m_pass, CredentialPersistenceNone), firstRequest().url());
}
}
@@ -240,7 +240,7 @@
if (!d->m_context->isValid())
return false;
- d->m_storageSession = d->m_context->storageSession().platformSession();
+ d->m_storageSession = d->m_context->storageSession()->platformSession();
// FIXME: Do not use the sync version of shouldUseCredentialStorage when the client returns true from usesAsyncCallbacks.
bool shouldUseCredentialStorage = !client() || client()->shouldUseCredentialStorage(this);
@@ -367,7 +367,7 @@
bool shouldContentEncodingSniff = true;
RefPtr<ResourceHandle> handle = adoptRef(new ResourceHandle(context, request, &client, defersLoading, shouldContentSniff, shouldContentEncodingSniff));
- handle->d->m_storageSession = context->storageSession().platformSession();
+ handle->d->m_storageSession = context->storageSession()->platformSession();
if (context && handle->d->m_scheduledFailureType != NoFailure) {
error = context->blockedError(request);
@@ -449,7 +449,7 @@
// Only consider applying authentication credentials if this is actually a redirect and the redirect
// URL didn't include credentials of its own.
if (d->m_user.isEmpty() && d->m_pass.isEmpty() && !redirectResponse.isNull()) {
- Credential credential = d->m_context->storageSession().credentialStorage().get(request.cachePartition(), request.url());
+ Credential credential = d->m_context->storageSession()->credentialStorage().get(request.cachePartition(), request.url());
if (!credential.isEmpty()) {
d->m_initialCredential = credential;
@@ -540,16 +540,16 @@
// The stored credential wasn't accepted, stop using it.
// There is a race condition here, since a different credential might have already been stored by another ResourceHandle,
// but the observable effect should be very minor, if any.
- d->m_context->storageSession().credentialStorage().remove(d->m_partition, challenge.protectionSpace());
+ d->m_context->storageSession()->credentialStorage().remove(d->m_partition, challenge.protectionSpace());
}
if (!challenge.previousFailureCount()) {
- Credential credential = d->m_context->storageSession().credentialStorage().get(d->m_partition, challenge.protectionSpace());
+ Credential credential = d->m_context->storageSession()->credentialStorage().get(d->m_partition, challenge.protectionSpace());
if (!credential.isEmpty() && credential != d->m_initialCredential) {
ASSERT(credential.persistence() == CredentialPersistenceNone);
if (challenge.failureResponse().httpStatusCode() == 401) {
// Store the credential back, possibly adding it as a default for this directory.
- d->m_context->storageSession().credentialStorage().set(d->m_partition, credential, challenge.protectionSpace(), challenge.failureResponse().url());
+ d->m_context->storageSession()->credentialStorage().set(d->m_partition, credential, challenge.protectionSpace(), challenge.failureResponse().url());
}
[challenge.sender() useCredential:credential.nsCredential() forAuthenticationChallenge:mac(challenge)];
return true;
@@ -591,7 +591,7 @@
URL urlToStore;
if (challenge.failureResponse().httpStatusCode() == 401)
urlToStore = challenge.failureResponse().url();
- d->m_context->storageSession().credentialStorage().set(d->m_partition, webCredential, ProtectionSpace([d->m_currentMacChallenge protectionSpace]), urlToStore);
+ d->m_context->storageSession()->credentialStorage().set(d->m_partition, webCredential, ProtectionSpace([d->m_currentMacChallenge protectionSpace]), urlToStore);
[[d->m_currentMacChallenge sender] useCredential:webCredential.nsCredential() forAuthenticationChallenge:d->m_currentMacChallenge];
} else
[[d->m_currentMacChallenge sender] useCredential:credential.nsCredential() forAuthenticationChallenge:d->m_currentMacChallenge];
Modified: trunk/Source/WebKit/ChangeLog (239736 => 239737)
--- trunk/Source/WebKit/ChangeLog 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/ChangeLog 2019-01-08 20:49:39 UTC (rev 239737)
@@ -1,3 +1,39 @@
+2019-01-08 Alex Christensen <achristen...@webkit.org>
+
+ Stop using NetworkStorageSession in WebProcess
+ https://bugs.webkit.org/show_bug.cgi?id=193236
+
+ Reviewed by Don Olmstead.
+
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::encode const):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ * Shared/WebsitePoliciesData.cpp:
+ (WebKit::WebsitePoliciesData::applyToDocumentLoader):
+ * UIProcess/WebProcessPool.cpp:
+ (WebKit::WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled):
+ (WebKit::WebProcessPool::tryTakePrewarmedProcess):
+ (WebKit::WebProcessPool::initializeNewWebProcess):
+ (WebKit::WebProcessPool::pageBeginUsingWebsiteDataStore):
+ (WebKit::WebProcessPool::pageEndUsingWebsiteDataStore):
+ (WebKit::WebProcessPool::processForNavigationInternal):
+ * WebProcess/InjectedBundle/InjectedBundle.cpp:
+ (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
+ * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
+ * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
+ (WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession): Deleted.
+ (WebKit::WebFrameNetworkingContext::storageSession const): Deleted.
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::setSessionID):
+ * WebProcess/WebProcess.cpp:
+ (WebKit::WebProcess::initializeWebProcess):
+ (WebKit::WebProcess::fetchWebsiteData):
+ (WebKit::WebProcess::addWebsiteDataStore): Deleted.
+ (WebKit::WebProcess::destroySession): Deleted.
+ * WebProcess/WebProcess.h:
+ * WebProcess/WebProcess.messages.in:
+
2019-01-08 Michael Catanzaro <mcatanz...@igalia.com>
Unreviewed, silence -Wformat warnings
Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp (239736 => 239737)
--- trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -72,7 +72,6 @@
encoder << shouldCaptureVideoInUIProcess;
encoder << shouldCaptureDisplayInUIProcess;
#endif
- encoder << shouldUseTestingNetworkSession;
encoder << urlSchemesRegisteredAsEmptyDocument;
encoder << urlSchemesRegisteredAsSecure;
encoder << urlSchemesRegisteredAsBypassingContentSecurityPolicy;
@@ -267,8 +266,6 @@
if (!decoder.decode(parameters.shouldCaptureDisplayInUIProcess))
return false;
#endif
- if (!decoder.decode(parameters.shouldUseTestingNetworkSession))
- return false;
if (!decoder.decode(parameters.urlSchemesRegisteredAsEmptyDocument))
return false;
if (!decoder.decode(parameters.urlSchemesRegisteredAsSecure))
Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.h (239736 => 239737)
--- trunk/Source/WebKit/Shared/WebProcessCreationParameters.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -124,7 +124,6 @@
double defaultRequestTimeoutInterval { INT_MAX };
- bool shouldUseTestingNetworkSession { false };
bool shouldAlwaysUseComplexTextCodePath { false };
bool shouldEnableMemoryPressureReliefLogging { false };
bool shouldSuppressMemoryPressureHandler { false };
Modified: trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp (239736 => 239737)
--- trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -161,11 +161,8 @@
if (websitePolicies.websiteDataStoreParameters) {
if (auto* frame = documentLoader.frame()) {
- if (auto* page = frame->page()) {
- auto sessionID = websitePolicies.websiteDataStoreParameters->networkSessionParameters.sessionID;
- WebProcess::singleton().addWebsiteDataStore(WTFMove(*websitePolicies.websiteDataStoreParameters));
- page->setSessionID(sessionID);
- }
+ if (auto* page = frame->page())
+ page->setSessionID(websitePolicies.websiteDataStoreParameters->networkSessionParameters.sessionID);
}
}
}
Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (239736 => 239737)
--- trunk/Source/WebKit/UIProcess/WebProcessPool.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -689,10 +689,8 @@
{
if (privateBrowsingEnabled) {
sendToNetworkingProcess(Messages::NetworkProcess::AddWebsiteDataStore(WebsiteDataStoreParameters::legacyPrivateSessionParameters()));
- sendToAllProcesses(Messages::WebProcess::AddWebsiteDataStore(WebsiteDataStoreParameters::legacyPrivateSessionParameters()));
} else {
networkProcess()->removeSession(PAL::SessionID::legacyPrivateSessionID());
- sendToAllProcesses(Messages::WebProcess::DestroySession(PAL::SessionID::legacyPrivateSessionID()));
}
}
@@ -765,8 +763,6 @@
ASSERT(m_prewarmedProcess->isPrewarmed());
m_prewarmedProcess->markIsNoLongerInPrewarmedPool();
- if (&m_prewarmedProcess->websiteDataStore() != &websiteDataStore)
- m_prewarmedProcess->send(Messages::WebProcess::AddWebsiteDataStore(websiteDataStore.parameters()), 0);
return std::exchange(m_prewarmedProcess, nullptr);
}
@@ -854,8 +850,6 @@
SandboxExtension::createHandleWithoutResolvingPath(parameters._javascript_ConfigurationDirectory, SandboxExtension::Type::ReadWrite, parameters._javascript_ConfigurationDirectoryExtensionHandle);
}
- parameters.shouldUseTestingNetworkSession = m_shouldUseTestingNetworkSession;
-
parameters.cacheModel = cacheModel();
parameters.languages = userPreferredLanguages();
@@ -942,9 +936,6 @@
process.send(Messages::WebProcess::SetQOS(webProcessLatencyQOS(), webProcessThroughputQOS()), 0);
#endif
- if (WebPreferences::anyPagesAreUsingPrivateBrowsing())
- process.send(Messages::WebProcess::AddWebsiteDataStore(WebsiteDataStoreParameters::legacyPrivateSessionParameters()), 0);
-
if (m_automationSession)
process.send(Messages::WebProcess::EnsureAutomationSessionProxy(m_automationSession->sessionIdentifier()), 0);
@@ -1188,12 +1179,10 @@
ASSERT(page.websiteDataStore().parameters().networkSessionParameters.sessionID == sessionID);
if (m_networkProcess)
m_networkProcess->addSession(makeRef(page.websiteDataStore()));
- page.process().send(Messages::WebProcess::AddWebsiteDataStore(WebsiteDataStoreParameters::privateSessionParameters(sessionID)), 0);
page.websiteDataStore().clearPendingCookies();
} else if (sessionID != PAL::SessionID::defaultSessionID()) {
if (m_networkProcess)
m_networkProcess->addSession(makeRef(page.websiteDataStore()));
- page.process().send(Messages::WebProcess::AddWebsiteDataStore(page.websiteDataStore().parameters()), 0);
page.websiteDataStore().clearPendingCookies();
}
@@ -1224,7 +1213,6 @@
// The last user of this non-default PAL::SessionID is gone, so clean it up in the child processes.
if (networkProcess())
networkProcess()->removeSession(sessionID);
- page.process().send(Messages::WebProcess::DestroySession(sessionID), 0);
}
}
@@ -2238,9 +2226,6 @@
if (&(*it)->page() == &page)
m_suspendedPages.remove(it);
- if (&process->websiteDataStore() != &page.websiteDataStore())
- process->send(Messages::WebProcess::AddWebsiteDataStore(page.websiteDataStore().parameters()), 0);
-
return completionHandler(WTFMove(process), nullptr, reason);
}
Modified: trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -357,7 +357,6 @@
ASSERT(!hasProcessPrivilege(ProcessPrivilege::CanAccessRawCookies));
if (enabled) {
WebProcess::singleton().ensureLegacyPrivateBrowsingSessionInNetworkProcess();
- WebFrameNetworkingContext::ensureWebsiteDataStoreSession(WebsiteDataStoreParameters::legacyPrivateSessionParameters());
} else
SessionTracker::destroySession(PAL::SessionID::legacyPrivateSessionID());
Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -107,36 +107,31 @@
// CookiesStrategy
-std::pair<String, bool> WebPlatformStrategies::cookiesForDOM(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
+std::pair<String, bool> WebPlatformStrategies::cookiesForDOM(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
{
String cookieString;
bool secureCookiesAccessed = false;
- if (!WebProcess::singleton().ensureNetworkProcessConnection().connection().sendSync(Messages::NetworkConnectionToWebProcess::CookiesForDOM(session.sessionID(), firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies), Messages::NetworkConnectionToWebProcess::CookiesForDOM::Reply(cookieString, secureCookiesAccessed), 0))
+ if (!WebProcess::singleton().ensureNetworkProcessConnection().connection().sendSync(Messages::NetworkConnectionToWebProcess::CookiesForDOM(sessionID, firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies), Messages::NetworkConnectionToWebProcess::CookiesForDOM::Reply(cookieString, secureCookiesAccessed), 0))
return { String(), false };
return { cookieString, secureCookiesAccessed };
}
-void WebPlatformStrategies::setCookiesFromDOM(const NetworkStorageSession& session, const URL& firstParty, const WebCore::SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String& cookieString)
+void WebPlatformStrategies::setCookiesFromDOM(const PAL::SessionID& sessionID, const URL& firstParty, const WebCore::SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String& cookieString)
{
- WebProcess::singleton().ensureNetworkProcessConnection().connection().send(Messages::NetworkConnectionToWebProcess::SetCookiesFromDOM(session.sessionID(), firstParty, sameSiteInfo, url, frameID, pageID, cookieString), 0);
+ WebProcess::singleton().ensureNetworkProcessConnection().connection().send(Messages::NetworkConnectionToWebProcess::SetCookiesFromDOM(sessionID, firstParty, sameSiteInfo, url, frameID, pageID, cookieString), 0);
}
-bool WebPlatformStrategies::cookiesEnabled(const NetworkStorageSession& session)
+bool WebPlatformStrategies::cookiesEnabled(const PAL::SessionID& sessionID)
{
bool result;
- if (!WebProcess::singleton().ensureNetworkProcessConnection().connection().sendSync(Messages::NetworkConnectionToWebProcess::CookiesEnabled(session.sessionID()), Messages::NetworkConnectionToWebProcess::CookiesEnabled::Reply(result), 0))
+ if (!WebProcess::singleton().ensureNetworkProcessConnection().connection().sendSync(Messages::NetworkConnectionToWebProcess::CookiesEnabled(sessionID), Messages::NetworkConnectionToWebProcess::CookiesEnabled::Reply(result), 0))
return false;
return result;
}
-std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
+std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
{
- return cookieRequestHeaderFieldValue(session.sessionID(), firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies);
-}
-
-std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(PAL::SessionID sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
-{
String cookieString;
bool secureCookiesAccessed = false;
if (!WebProcess::singleton().ensureNetworkProcessConnection().connection().sendSync(Messages::NetworkConnectionToWebProcess::CookieRequestHeaderFieldValue(sessionID, firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies), Messages::NetworkConnectionToWebProcess::CookieRequestHeaderFieldValue::Reply(cookieString, secureCookiesAccessed), 0))
@@ -144,16 +139,16 @@
return { cookieString, secureCookiesAccessed };
}
-bool WebPlatformStrategies::getRawCookies(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<Cookie>& rawCookies)
+bool WebPlatformStrategies::getRawCookies(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<Cookie>& rawCookies)
{
- if (!WebProcess::singleton().ensureNetworkProcessConnection().connection().sendSync(Messages::NetworkConnectionToWebProcess::GetRawCookies(session.sessionID(), firstParty, sameSiteInfo, url, frameID, pageID), Messages::NetworkConnectionToWebProcess::GetRawCookies::Reply(rawCookies), 0))
+ if (!WebProcess::singleton().ensureNetworkProcessConnection().connection().sendSync(Messages::NetworkConnectionToWebProcess::GetRawCookies(sessionID, firstParty, sameSiteInfo, url, frameID, pageID), Messages::NetworkConnectionToWebProcess::GetRawCookies::Reply(rawCookies), 0))
return false;
return true;
}
-void WebPlatformStrategies::deleteCookie(const NetworkStorageSession& session, const URL& url, const String& cookieName)
+void WebPlatformStrategies::deleteCookie(const PAL::SessionID& sessionID, const URL& url, const String& cookieName)
{
- WebProcess::singleton().ensureNetworkProcessConnection().connection().send(Messages::NetworkConnectionToWebProcess::DeleteCookie(session.sessionID(), url, cookieName), 0);
+ WebProcess::singleton().ensureNetworkProcessConnection().connection().send(Messages::NetworkConnectionToWebProcess::DeleteCookie(sessionID, url, cookieName), 0);
}
#if PLATFORM(COCOA)
Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.h (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -47,13 +47,12 @@
WebCore::BlobRegistry* createBlobRegistry() override;
// WebCore::CookiesStrategy
- std::pair<String, bool> cookiesForDOM(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- void setCookiesFromDOM(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String&) override;
- bool cookiesEnabled(const WebCore::NetworkStorageSession&) override;
- std::pair<String, bool> cookieRequestHeaderFieldValue(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- std::pair<String, bool> cookieRequestHeaderFieldValue(PAL::SessionID, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- bool getRawCookies(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<WebCore::Cookie>&) override;
- void deleteCookie(const WebCore::NetworkStorageSession&, const URL&, const String&) override;
+ std::pair<String, bool> cookiesForDOM(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
+ void setCookiesFromDOM(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String&) override;
+ bool cookiesEnabled(const PAL::SessionID&) override;
+ std::pair<String, bool> cookieRequestHeaderFieldValue(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
+ bool getRawCookies(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<WebCore::Cookie>&) override;
+ void deleteCookie(const PAL::SessionID&, const URL&, const String&) override;
// WebCore::PasteboardStrategy
#if PLATFORM(IOS_FAMILY)
Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.cpp (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -56,15 +56,6 @@
{
}
-NetworkStorageSession& WebFrameNetworkingContext::storageSession() const
-{
- if (frame()) {
- if (auto* storageSession = NetworkStorageSession::storageSession(frame()->page()->sessionID()))
- return *storageSession;
- }
- return NetworkStorageSession::defaultStorageSession();
-}
-
WebFrameLoaderClient* WebFrameNetworkingContext::webFrameLoaderClient() const
{
if (!frame())
Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.h (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -53,7 +53,7 @@
private:
WebFrameNetworkingContext(WebFrame*);
- WebCore::NetworkStorageSession& storageSession() const override;
+ WebCore::NetworkStorageSession* storageSession() const override { return nullptr; }
};
}
Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -56,7 +56,7 @@
RetainPtr<CFDataRef> sourceApplicationAuditData() const override;
String sourceApplicationIdentifier() const override;
WebCore::ResourceError blockedError(const WebCore::ResourceRequest&) const override;
- WebCore::NetworkStorageSession& storageSession() const override;
+ WebCore::NetworkStorageSession* storageSession() const override { return nullptr; }
};
}
Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm 2019-01-08 20:49:39 UTC (rev 239737)
@@ -43,20 +43,6 @@
namespace WebKit {
using namespace WebCore;
-void WebFrameNetworkingContext::ensureWebsiteDataStoreSession(WebsiteDataStoreParameters&& parameters)
-{
- ASSERT(!hasProcessPrivilege(ProcessPrivilege::CanAccessRawCookies));
- auto sessionID = parameters.networkSessionParameters.sessionID;
- if (NetworkStorageSession::storageSession(sessionID))
- return;
-
- String base = WebProcess::singleton().uiProcessBundleIdentifier();
- if (base.isNull())
- base = [[NSBundle mainBundle] bundleIdentifier];
-
- NetworkStorageSession::ensureSession(sessionID, base + '.' + String::number(sessionID.sessionID()));
-}
-
bool WebFrameNetworkingContext::localFileContentSniffingEnabled() const
{
return frame() && frame()->settings().localFileContentSniffingEnabled();
@@ -84,19 +70,6 @@
return frame()->loader().client().blockedError(request);
}
-NetworkStorageSession& WebFrameNetworkingContext::storageSession() const
-{
- ASSERT(RunLoop::isMain());
- ASSERT(!hasProcessPrivilege(ProcessPrivilege::CanAccessRawCookies));
- if (frame()) {
- if (auto* storageSession = WebCore::NetworkStorageSession::storageSession(frame()->page()->sessionID()))
- return *storageSession;
- // Some requests may still be coming shortly after WebProcess was told to destroy its session.
- LOG_ERROR("WEB Invalid session ID. Please file a bug unless you just disabled private browsing, in which case it's an expected race.");
- }
- return NetworkStorageSession::defaultStorageSession();
-}
-
WebFrameLoaderClient* WebFrameNetworkingContext::webFrameLoaderClient() const
{
if (!frame())
Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -58,15 +58,6 @@
{
}
-NetworkStorageSession& WebFrameNetworkingContext::storageSession() const
-{
- if (frame()) {
- if (auto* storageSession = NetworkStorageSession::storageSession(frame()->page()->sessionID()))
- return *storageSession;
- }
- return NetworkStorageSession::defaultStorageSession();
-}
-
WebFrameLoaderClient* WebFrameNetworkingContext::webFrameLoaderClient() const
{
if (!frame())
Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -51,7 +51,7 @@
private:
WebFrameNetworkingContext(WebFrame*);
- WebCore::NetworkStorageSession& storageSession() const override;
+ WebCore::NetworkStorageSession* storageSession() const override { return nullptr; }
};
}
Modified: trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -3043,8 +3043,6 @@
void WebPage::setSessionID(PAL::SessionID sessionID)
{
- if (sessionID.isEphemeral())
- WebProcess::singleton().addWebsiteDataStore(WebsiteDataStoreParameters::privateSessionParameters(sessionID));
m_page->setSessionID(sessionID);
}
Modified: trunk/Source/WebKit/WebProcess/WebProcess.cpp (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebProcess.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebProcess.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -381,9 +381,6 @@
setShouldUseFontSmoothing(parameters.shouldUseFontSmoothing);
- if (parameters.shouldUseTestingNetworkSession)
- NetworkStorageSession::switchToNewTestingSession();
-
ensureNetworkProcessConnection();
setTerminationTimeout(parameters.terminationTimeout);
@@ -540,16 +537,6 @@
m_fullKeyboardAccessEnabled = fullKeyboardAccessEnabled;
}
-void WebProcess::addWebsiteDataStore(WebsiteDataStoreParameters&& parameters)
-{
- WebFrameNetworkingContext::ensureWebsiteDataStoreSession(WTFMove(parameters));
-}
-
-void WebProcess::destroySession(PAL::SessionID sessionID)
-{
- SessionTracker::destroySession(sessionID);
-}
-
void WebProcess::ensureLegacyPrivateBrowsingSessionInNetworkProcess()
{
ensureNetworkProcessConnection().connection().send(Messages::NetworkConnectionToWebProcess::EnsureLegacyPrivateBrowsingSession(), 0);
@@ -1294,11 +1281,6 @@
for (auto& origin : MemoryCache::singleton().originsWithCache(sessionID))
websiteData.entries.append(WebsiteData::Entry { origin->data(), WebsiteDataType::MemoryCache, 0 });
}
-
- if (websiteDataTypes.contains(WebsiteDataType::Credentials)) {
- if (NetworkStorageSession::storageSession(sessionID))
- websiteData.originsWithCredentials = NetworkStorageSession::storageSession(sessionID)->credentialStorage().originsWithCredentials();
- }
}
void WebProcess::deleteWebsiteData(PAL::SessionID sessionID, OptionSet<WebsiteDataType> websiteDataTypes, WallTime modifiedSince)
Modified: trunk/Source/WebKit/WebProcess/WebProcess.h (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebProcess.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebProcess.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -178,8 +178,6 @@
void setCacheModel(CacheModel);
void ensureLegacyPrivateBrowsingSessionInNetworkProcess();
- void addWebsiteDataStore(WebsiteDataStoreParameters&&);
- void destroySession(PAL::SessionID);
void pageDidEnterWindow(uint64_t pageID);
void pageWillLeaveWindow(uint64_t pageID);
Modified: trunk/Source/WebKit/WebProcess/WebProcess.messages.in (239736 => 239737)
--- trunk/Source/WebKit/WebProcess/WebProcess.messages.in 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKit/WebProcess/WebProcess.messages.in 2019-01-08 20:49:39 UTC (rev 239737)
@@ -53,9 +53,6 @@
ClearCachedCredentials()
- AddWebsiteDataStore(struct WebKit::WebsiteDataStoreParameters websiteDataStoreParameters);
- DestroySession(PAL::SessionID sessionID)
-
# Plug-ins.
DidAddPlugInAutoStartOriginHash(uint32_t hash, WallTime expirationTime, PAL::SessionID sessionID)
ResetPlugInAutoStartOriginDefaultHashes(HashMap<uint32_t,WallTime> hashes)
Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (239736 => 239737)
--- trunk/Source/WebKitLegacy/mac/ChangeLog 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/mac/ChangeLog 2019-01-08 20:49:39 UTC (rev 239737)
@@ -1,5 +1,27 @@
2019-01-08 Alex Christensen <achristen...@webkit.org>
+ Stop using NetworkStorageSession in WebProcess
+ https://bugs.webkit.org/show_bug.cgi?id=193236
+
+ Reviewed by Don Olmstead.
+
+ * WebCoreSupport/WebFrameNetworkingContext.h:
+ * WebCoreSupport/WebFrameNetworkingContext.mm:
+ (WebFrameNetworkingContext::storageSession const):
+ * WebCoreSupport/WebPlatformStrategies.h:
+ * WebCoreSupport/WebPlatformStrategies.mm:
+ (WebPlatformStrategies::cookiesForDOM):
+ (WebPlatformStrategies::setCookiesFromDOM):
+ (WebPlatformStrategies::cookiesEnabled):
+ (WebPlatformStrategies::cookieRequestHeaderFieldValue):
+ (WebPlatformStrategies::getRawCookies):
+ (WebPlatformStrategies::deleteCookie):
+ * WebView/WebView.mm:
+ (-[WebView _cachedResponseForURL:]):
+ (-[WebView _clearCredentials]):
+
+2019-01-08 Alex Christensen <achristen...@webkit.org>
+
Unreviewed, rolling out r239727.
Broke API tests
Modified: trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameNetworkingContext.h (239736 => 239737)
--- trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameNetworkingContext.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameNetworkingContext.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -49,5 +49,5 @@
RetainPtr<CFDataRef> sourceApplicationAuditData() const override;
String sourceApplicationIdentifier() const override;
WebCore::ResourceError blockedError(const WebCore::ResourceRequest&) const override;
- WebCore::NetworkStorageSession& storageSession() const override;
+ WebCore::NetworkStorageSession* storageSession() const override;
};
Modified: trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameNetworkingContext.mm (239736 => 239737)
--- trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameNetworkingContext.mm 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameNetworkingContext.mm 2019-01-08 20:49:39 UTC (rev 239737)
@@ -90,14 +90,14 @@
return frame()->loader().client().blockedError(request);
}
-NetworkStorageSession& WebFrameNetworkingContext::storageSession() const
+NetworkStorageSession* WebFrameNetworkingContext::storageSession() const
{
ASSERT(isMainThread());
if (frame() && frame()->page() && frame()->page()->sessionID().isEphemeral()) {
if (auto* session = NetworkStorageSession::storageSession(PAL::SessionID::legacyPrivateSessionID()))
- return *session;
+ return session;
// Some requests may still be coming shortly before WebCore updates the session ID and after WebKit destroys the private browsing session.
LOG_ERROR("Invalid session ID. Please file a bug unless you just disabled private browsing, in which case it's an expected race.");
}
- return NetworkStorageSession::defaultStorageSession();
+ return &NetworkStorageSession::defaultStorageSession();
}
Modified: trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebPlatformStrategies.h (239736 => 239737)
--- trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebPlatformStrategies.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebPlatformStrategies.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -48,13 +48,12 @@
WebCore::BlobRegistry* createBlobRegistry() override;
// WebCore::CookiesStrategy
- std::pair<String, bool> cookiesForDOM(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- void setCookiesFromDOM(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String&) override;
- bool cookiesEnabled(const WebCore::NetworkStorageSession&) override;
- std::pair<String, bool> cookieRequestHeaderFieldValue(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- std::pair<String, bool> cookieRequestHeaderFieldValue(PAL::SessionID, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- bool getRawCookies(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<WebCore::Cookie>&) override;
- void deleteCookie(const WebCore::NetworkStorageSession&, const URL&, const String&) override;
+ std::pair<String, bool> cookiesForDOM(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
+ void setCookiesFromDOM(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String&) override;
+ bool cookiesEnabled(const PAL::SessionID&) override;
+ std::pair<String, bool> cookieRequestHeaderFieldValue(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
+ bool getRawCookies(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<WebCore::Cookie>&) override;
+ void deleteCookie(const PAL::SessionID&, const URL&, const String&) override;
// WebCore::PasteboardStrategy
#if PLATFORM(IOS_FAMILY)
Modified: trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebPlatformStrategies.mm (239736 => 239737)
--- trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebPlatformStrategies.mm 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebPlatformStrategies.mm 2019-01-08 20:49:39 UTC (rev 239737)
@@ -72,39 +72,39 @@
return new WebCore::BlobRegistryImpl;
}
-std::pair<String, bool> WebPlatformStrategies::cookiesForDOM(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
+std::pair<String, bool> WebPlatformStrategies::cookiesForDOM(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
return session.cookiesForDOM(firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies);
}
-void WebPlatformStrategies::setCookiesFromDOM(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String& cookieString)
+void WebPlatformStrategies::setCookiesFromDOM(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String& cookieString)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
session.setCookiesFromDOM(firstParty, sameSiteInfo, url, frameID, pageID, cookieString);
}
-bool WebPlatformStrategies::cookiesEnabled(const NetworkStorageSession& session)
+bool WebPlatformStrategies::cookiesEnabled(const PAL::SessionID& sessionID)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
return session.cookiesEnabled();
}
-std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
+std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
return session.cookieRequestHeaderFieldValue(firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies);
}
-std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(PAL::SessionID sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
+bool WebPlatformStrategies::getRawCookies(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<Cookie>& rawCookies)
{
auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
- return session.cookieRequestHeaderFieldValue(firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies);
-}
-
-bool WebPlatformStrategies::getRawCookies(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<Cookie>& rawCookies)
-{
return session.getRawCookies(firstParty, sameSiteInfo, url, frameID, pageID, rawCookies);
}
-void WebPlatformStrategies::deleteCookie(const NetworkStorageSession& session, const URL& url, const String& cookieName)
+void WebPlatformStrategies::deleteCookie(const PAL::SessionID& sessionID, const URL& url, const String& cookieName)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
session.deleteCookie(url, cookieName);
}
Modified: trunk/Source/WebKitLegacy/mac/WebView/WebView.mm (239736 => 239737)
--- trunk/Source/WebKitLegacy/mac/WebView/WebView.mm 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/mac/WebView/WebView.mm 2019-01-08 20:49:39 UTC (rev 239737)
@@ -3668,7 +3668,7 @@
if (!_private->page)
return nil;
- if (CFURLStorageSessionRef storageSession = _private->page->mainFrame().loader().networkingContext()->storageSession().platformSession())
+ if (auto storageSession = _private->page->mainFrame().loader().networkingContext()->storageSession()->platformSession())
cachedResponse = cachedResponseForRequest(storageSession, request.get());
else
cachedResponse = [[NSURLCache sharedURLCache] cachedResponseForRequest:request.get()];
@@ -9251,7 +9251,7 @@
if (!networkingContext)
return;
- networkingContext->storageSession().credentialStorage().clearCredentials();
+ networkingContext->storageSession()->credentialStorage().clearCredentials();
}
- (BOOL)_needsOneShotDrawingSynchronization
Modified: trunk/Source/WebKitLegacy/win/ChangeLog (239736 => 239737)
--- trunk/Source/WebKitLegacy/win/ChangeLog 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/win/ChangeLog 2019-01-08 20:49:39 UTC (rev 239737)
@@ -1,5 +1,24 @@
2019-01-08 Alex Christensen <achristen...@webkit.org>
+ Stop using NetworkStorageSession in WebProcess
+ https://bugs.webkit.org/show_bug.cgi?id=193236
+
+ Reviewed by Don Olmstead.
+
+ * WebCoreSupport/WebFrameNetworkingContext.cpp:
+ (WebFrameNetworkingContext::storageSession const):
+ * WebCoreSupport/WebFrameNetworkingContext.h:
+ * WebCoreSupport/WebPlatformStrategies.cpp:
+ (WebPlatformStrategies::cookiesForDOM):
+ (WebPlatformStrategies::setCookiesFromDOM):
+ (WebPlatformStrategies::cookiesEnabled):
+ (WebPlatformStrategies::cookieRequestHeaderFieldValue):
+ (WebPlatformStrategies::getRawCookies):
+ (WebPlatformStrategies::deleteCookie):
+ * WebCoreSupport/WebPlatformStrategies.h:
+
+2019-01-08 Alex Christensen <achristen...@webkit.org>
+
Unreviewed, rolling out r239727.
Broke API tests
Modified: trunk/Source/WebKitLegacy/win/WebCoreSupport/WebFrameNetworkingContext.cpp (239736 => 239737)
--- trunk/Source/WebKitLegacy/win/WebCoreSupport/WebFrameNetworkingContext.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/win/WebCoreSupport/WebFrameNetworkingContext.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -99,12 +99,12 @@
return frame()->loader().client().blockedError(request);
}
-NetworkStorageSession& WebFrameNetworkingContext::storageSession() const
+NetworkStorageSession* WebFrameNetworkingContext::storageSession() const
{
ASSERT(isMainThread());
if (frame() && frame()->page()->usesEphemeralSession())
- return *NetworkStorageSession::storageSession(PAL::SessionID::legacyPrivateSessionID());
+ return NetworkStorageSession::storageSession(PAL::SessionID::legacyPrivateSessionID());
- return NetworkStorageSession::defaultStorageSession();
+ return &NetworkStorageSession::defaultStorageSession();
}
Modified: trunk/Source/WebKitLegacy/win/WebCoreSupport/WebFrameNetworkingContext.h (239736 => 239737)
--- trunk/Source/WebKitLegacy/win/WebCoreSupport/WebFrameNetworkingContext.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/win/WebCoreSupport/WebFrameNetworkingContext.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -47,5 +47,5 @@
}
WebCore::ResourceError blockedError(const WebCore::ResourceRequest&) const override;
- WebCore::NetworkStorageSession& storageSession() const override;
+ WebCore::NetworkStorageSession* storageSession() const override;
};
Modified: trunk/Source/WebKitLegacy/win/WebCoreSupport/WebPlatformStrategies.cpp (239736 => 239737)
--- trunk/Source/WebKitLegacy/win/WebCoreSupport/WebPlatformStrategies.cpp 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/win/WebCoreSupport/WebPlatformStrategies.cpp 2019-01-08 20:49:39 UTC (rev 239737)
@@ -69,38 +69,38 @@
return new BlobRegistryImpl;
}
-std::pair<String, bool> WebPlatformStrategies::cookiesForDOM(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
+std::pair<String, bool> WebPlatformStrategies::cookiesForDOM(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
return session.cookiesForDOM(firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies);
}
-void WebPlatformStrategies::setCookiesFromDOM(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String& cookieString)
+void WebPlatformStrategies::setCookiesFromDOM(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String& cookieString)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
session.setCookiesFromDOM(firstParty, sameSiteInfo, url, frameID, pageID, cookieString);
}
-bool WebPlatformStrategies::cookiesEnabled(const NetworkStorageSession& session)
+bool WebPlatformStrategies::cookiesEnabled(const PAL::SessionID& sessionID)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
return session.cookiesEnabled();
}
-std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
+std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
return session.cookieRequestHeaderFieldValue(firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies);
}
-std::pair<String, bool> WebPlatformStrategies::cookieRequestHeaderFieldValue(PAL::SessionID sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies)
+bool WebPlatformStrategies::getRawCookies(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<Cookie>& rawCookies)
{
auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
- return session.cookieRequestHeaderFieldValue(firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies);
-}
-
-bool WebPlatformStrategies::getRawCookies(const NetworkStorageSession& session, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<Cookie>& rawCookies)
-{
return session.getRawCookies(firstParty, sameSiteInfo, url, frameID, pageID, rawCookies);
}
-void WebPlatformStrategies::deleteCookie(const NetworkStorageSession& session, const URL& url, const String& cookieName)
+void WebPlatformStrategies::deleteCookie(const PAL::SessionID& sessionID, const URL& url, const String& cookieName)
{
+ auto& session = sessionID.isEphemeral() ? WebFrameNetworkingContext::ensurePrivateBrowsingSession() : NetworkStorageSession::defaultStorageSession();
session.deleteCookie(url, cookieName);
}
Modified: trunk/Source/WebKitLegacy/win/WebCoreSupport/WebPlatformStrategies.h (239736 => 239737)
--- trunk/Source/WebKitLegacy/win/WebCoreSupport/WebPlatformStrategies.h 2019-01-08 20:21:06 UTC (rev 239736)
+++ trunk/Source/WebKitLegacy/win/WebCoreSupport/WebPlatformStrategies.h 2019-01-08 20:49:39 UTC (rev 239737)
@@ -45,11 +45,10 @@
virtual WebCore::BlobRegistry* createBlobRegistry();
// WebCore::CookiesStrategy
- std::pair<String, bool> cookiesForDOM(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- virtual void setCookiesFromDOM(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String&);
- virtual bool cookiesEnabled(const WebCore::NetworkStorageSession&);
- std::pair<String, bool> cookieRequestHeaderFieldValue(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- std::pair<String, bool> cookieRequestHeaderFieldValue(PAL::SessionID, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
- virtual bool getRawCookies(const WebCore::NetworkStorageSession&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<WebCore::Cookie>&);
- virtual void deleteCookie(const WebCore::NetworkStorageSession&, const URL&, const String&);
+ std::pair<String, bool> cookiesForDOM(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
+ virtual void setCookiesFromDOM(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, const String&);
+ virtual bool cookiesEnabled(const PAL::SessionID&);
+ std::pair<String, bool> cookieRequestHeaderFieldValue(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, WebCore::IncludeSecureCookies) override;
+ virtual bool getRawCookies(const PAL::SessionID&, const URL& firstParty, const WebCore::SameSiteInfo&, const URL&, Optional<uint64_t> frameID, Optional<uint64_t> pageID, Vector<WebCore::Cookie>&);
+ virtual void deleteCookie(const PAL::SessionID&, const URL&, const String&);
};