source: webkit/trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in

Last change on this file was 295391, checked in by Kate Cheney, 3 years ago

Align ITP client side cookie cap with other script-writable storage
https://bugs.webkit.org/show_bug.cgi?id=240248
rdar://90468671

Reviewed by Alex Christensen.

  • LayoutTests/http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-24-hours.html: Added.
  • LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-js-cookie-checking.html: Added.
  • LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction-js-cookie-checking.html: Added.
  • LayoutTests/platform/mac-wk2/TestExpectations:
  • LayoutTests/platform/wk2/TestExpectations:

Add new tests for this behavior. Skip them for now because they rely on internal bits.
This patch adds a slight behavior change for ITP with client side cookies set from a page that is a link decoration target in
that it deletes client side cookies either 24 hours after they are set OR after 7 days of no user interaction, whichever comes first.
This maintains the strictest level of privacy for client side cookies based on all heuristics.

  • Source/WTF/wtf/PlatformEnableCocoa.h:
  • Source/WebCore/platform/network/NetworkStorageSession.cpp:

(WebCore::NetworkStorageSession::setAgeCapForClientSideCookies):
(WebCore::NetworkStorageSession::clientSideCookieCap const):
Update client-side cookie cap code to only handle the 24 hour link-decoration case now that we
no longer need the 7 day cap.

(WebCore::NetworkStorageSession::deleteCookiesForHostnames):

  • Source/WebCore/platform/network/NetworkStorageSession.h:
  • Source/WebCore/platform/network/cf/NetworkStorageSessionCFNetWin.cpp:

(WebCore::NetworkStorageSession::deleteCookiesForHostnames):

  • Source/WebCore/platform/network/cocoa/NetworkStorageSessionCocoa.mm:

(WebCore::parseDOMCookie):
Update JS cookie code so that we mark cookies as set in javascript and can distinguish them
from server side cookies. Since there are some underlying assumptions in CFNetwork code about
NSHTTPCookie not being mutable, we need to re-create the cookie here with the JS bit set to true.

(WebCore::NetworkStorageSession::deleteCookiesForHostnames):

  • Source/WebCore/platform/network/curl/NetworkStorageSessionCurl.cpp:

(WebCore::NetworkStorageSession::deleteCookiesForHostnames):

  • Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp:

(WebCore::NetworkStorageSession::deleteCookiesForHostnames):

  • Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:

(WebKit::ResourceLoadStatisticsDatabaseStore::merge):
(WebKit::ResourceLoadStatisticsDatabaseStore::logCrossSiteLoadWithLinkDecoration):
(WebKit::ResourceLoadStatisticsDatabaseStore::setIsScheduledForAllScriptWrittenStorageRemoval):
(WebKit::ResourceLoadStatisticsDatabaseStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor):
(WebKit::ResourceLoadStatisticsDatabaseStore::setIsScheduledForAllButCookieDataRemoval): Deleted.

  • Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h:
  • Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:

(WebKit::domainsToString):
(WebKit::ResourceLoadStatisticsStore::updateClientSideCookiesAgeCap):
(WebKit::ResourceLoadStatisticsStore::setAgeCapForClientSideCookies): Deleted.

  • Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h:
  • Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:

(WebKit::RegistrableDomainsToDeleteOrRestrictWebsiteDataFor::isolatedCopy const):
(WebKit::RegistrableDomainsToDeleteOrRestrictWebsiteDataFor::isolatedCopy):
(WebKit::RegistrableDomainsToDeleteOrRestrictWebsiteDataFor::isEmpty const):
Rename "non cookie website data" to "script written storage" now that
we include client side cookies. This can't be done to the actual
database entry without a migration to a new database due to SQLite
restrictions around renames, so we will leave that one in place.

  • Source/WebKit/NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::deleteAndRestrictWebsiteDataForRegistrableDomains):
Use the values stored in domainsToDeleteAllScriptWritableStorageFor to know which domains to
delete script-writable cookies for when deleting website data, instead of just looking at domainsToDeleteAllCookiesFor.

(WebKit::NetworkProcess::setAgeCapForClientSideCookies): Deleted.

  • Source/WebKit/NetworkProcess/NetworkProcess.h:
  • Source/WebKit/NetworkProcess/NetworkProcess.messages.in:
  • Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::setAgeCapForClientSideCookies): Deleted.

  • Source/WebKit/UIProcess/Network/NetworkProcessProxy.h:

Unused function.

Canonical link: https://commits.webkit.org/251397@main

File size: 17.5 KB
Line 
1# Copyright (C) 2012-2020 Apple Inc. All rights reserved.
2#
3# Redistribution and use in source and binary forms, with or without
4# modification, are permitted provided that the following conditions
5# are met:
6# 1. Redistributions of source code must retain the above copyright
7# notice, this list of conditions and the following disclaimer.
8# 2. Redistributions in binary form must reproduce the above copyright
9# notice, this list of conditions and the following disclaimer in the
10# documentation and/or other materials provided with the distribution.
11#
12# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND
13# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
14# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
15# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR
16# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
17# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
18# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
19# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
20# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
21# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
22
23messages -> NetworkProcess LegacyReceiver {
24 InitializeNetworkProcess(struct WebKit::NetworkProcessCreationParameters processCreationParameters) -> ()
25
26 CreateNetworkConnectionToWebProcess(WebCore::ProcessIdentifier processIdentifier, PAL::SessionID sessionID) -> (std::optional<IPC::Attachment> connectionIdentifier, enum:uint8_t WebCore::HTTPCookieAcceptPolicy cookieAcceptPolicy)
27
28#if USE(SOUP)
29 SetIgnoreTLSErrors(PAL::SessionID sessionID, bool ignoreTLSErrors)
30 UserPreferredLanguagesChanged(Vector<String> languages)
31 SetNetworkProxySettings(PAL::SessionID sessionID, struct WebCore::SoupNetworkProxySettings settings)
32 PrefetchDNS(String hostname)
33 SetPersistentCredentialStorageEnabled(PAL::SessionID sessionID, bool enabled)
34#endif
35
36#if USE(CURL)
37 SetNetworkProxySettings(PAL::SessionID sessionID, WebCore::CurlProxySettings settings)
38#endif
39
40 ClearCachedCredentials(PAL::SessionID sessionID)
41
42 AddWebsiteDataStore(struct WebKit::WebsiteDataStoreParameters websiteDataStoreParameters);
43 DestroySession(PAL::SessionID sessionID)
44
45 FetchWebsiteData(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, OptionSet<WebKit::WebsiteDataFetchOption> fetchOptions) -> (struct WebKit::WebsiteData websiteData)
46 DeleteWebsiteData(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, WallTime modifiedSince) -> ()
47 DeleteWebsiteDataForOrigins(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, Vector<WebCore::SecurityOriginData> origins, Vector<String> cookieHostNames, Vector<String> HSTSCacheHostNames, Vector<WebCore::RegistrableDomain> registrableDomains) -> ()
48 RenameOriginInWebsiteData(PAL::SessionID sessionID, URL oldDomain, URL newDomain, OptionSet<WebKit::WebsiteDataType> websiteDataTypes) -> ()
49 WebsiteDataOriginDirectoryForTesting(PAL::SessionID sessionID, URL origin, URL topOrigin, enum:uint32_t WebKit::WebsiteDataType websiteDataType) -> (String directory)
50
51 DownloadRequest(PAL::SessionID sessionID, WebKit::DownloadID downloadID, WebCore::ResourceRequest request, enum:bool std::optional<WebKit::NavigatingToAppBoundDomain> isNavigatingToAppBoundDomain, String suggestedFilename)
52 ResumeDownload(PAL::SessionID sessionID, WebKit::DownloadID downloadID, IPC::DataReference resumeData, String path, WebKit::SandboxExtension::Handle sandboxExtensionHandle, enum:bool WebKit::CallDownloadDidStart callDownloadDidStart)
53 CancelDownload(WebKit::DownloadID downloadID) -> (IPC::DataReference resumeData)
54#if PLATFORM(COCOA)
55 PublishDownloadProgress(WebKit::DownloadID downloadID, URL url, WebKit::SandboxExtension::Handle sandboxExtensionHandle)
56#endif
57 DataTaskWithRequest(WebKit::WebPageProxyIdentifier pageID, PAL::SessionID sessionID, WebCore::ResourceRequest request, IPC::FormDataReference requestBody) -> (WebKit::DataTaskIdentifier taskIdentifier)
58 CancelDataTask(WebKit::DataTaskIdentifier taskIdentifier, PAL::SessionID sessionID)
59 ApplicationDidEnterBackground()
60 ApplicationWillEnterForeground()
61
62 ContinueWillSendRequest(WebKit::DownloadID downloadID, WebCore::ResourceRequest request)
63
64 SetAllowsAnySSLCertificateForWebSocket(bool enabled) -> () Synchronous
65
66 FlushCookies(PAL::SessionID sessionID) -> ()
67
68 AllowSpecificHTTPSCertificateForHost(WebCore::CertificateInfo certificate, String host)
69 AllowTLSCertificateChainForLocalPCMTesting(PAL::SessionID sessionID, WebCore::CertificateInfo certificate)
70
71 SetCacheModel(enum:uint8_t WebKit::CacheModel cacheModel)
72 SetCacheModelSynchronouslyForTesting(enum:uint8_t WebKit::CacheModel cacheModel) -> () Synchronous
73
74 ProcessWillSuspendImminentlyForTestingSync() -> () Synchronous
75 PrepareToSuspend(bool isSuspensionImminent, MonotonicTime estimatedSuspendTime) -> ()
76 ProcessDidResume(bool forForegroundActivity)
77
78 PreconnectTo(PAL::SessionID sessionID, WebKit::WebPageProxyIdentifier webPageProxyID, WebCore::PageIdentifier webPageID, URL url, String userAgent, enum:uint8_t WebCore::StoredCredentialsPolicy storedCredentialsPolicy, enum:bool std::optional<WebKit::NavigatingToAppBoundDomain> isNavigatingToAppBoundDomain, enum:bool WebKit::LastNavigationWasAppInitiated lastNavigationWasAppInitiated);
79
80#if ENABLE(INTELLIGENT_TRACKING_PREVENTION)
81 ClearPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> ()
82 ClearUserInteraction(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> ()
83 DumpResourceLoadStatistics(PAL::SessionID sessionID) -> (String dumpedStatistics)
84 SetResourceLoadStatisticsEnabled(PAL::SessionID sessionID, bool enabled)
85 SetResourceLoadStatisticsLogTestingEvent(bool enabled)
86 UpdatePrevalentDomainsToBlockCookiesFor(PAL::SessionID sessionID, Vector<WebCore::RegistrableDomain> domainsToBlock) -> ()
87 IsGrandfathered(PAL::SessionID sessionID, WebCore::RegistrableDomain targetDomain) -> (bool isGrandfathered)
88 IsPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain targetDomain) -> (bool isPrevalent)
89 IsVeryPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain targetDomain) -> (bool isVeryPrevalent)
90 SetLastSeen(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain, Seconds seconds) -> ()
91 MergeStatisticForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain, WebCore::RegistrableDomain topFrameDomain1, WebCore::RegistrableDomain topFrameDomain2, Seconds lastSeen, bool hadUserInteraction, Seconds mostRecentUserInteraction, bool isGrandfathered, bool isPrevalent, bool isVeryPrevalent, uint64_t dataRecordsRemoved) -> ()
92 InsertExpiredStatisticForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain, uint64_t numberOfOperatingDaysPassed, bool hadUserInteraction, bool isScheduledForAllButCookieDataRemoval, bool isPrevalent) -> ()
93 SetPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> ()
94 SetPrevalentResourceForDebugMode(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> ()
95 IsResourceLoadStatisticsEphemeral(PAL::SessionID sessionID) -> (bool isEphemeral)
96 HadUserInteraction(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> (bool hadUserInteraction)
97 IsRelationshipOnlyInDatabaseOnce(PAL::SessionID sessionID, WebCore::RegistrableDomain subDomain, WebCore::RegistrableDomain topDomain) -> (bool hadUserInteraction)
98 HasLocalStorage(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> (bool hadUserInteraction)
99 GetAllStorageAccessEntries(PAL::SessionID sessionID) -> (Vector<String> domains)
100 IsRegisteredAsRedirectingTo(PAL::SessionID sessionID, WebCore::RegistrableDomain redirectedFromDomain, WebCore::RegistrableDomain redirectedToDomain) -> (bool isRedirectingTo)
101 IsRegisteredAsSubFrameUnder(PAL::SessionID sessionID, WebCore::RegistrableDomain subFrameDomain, WebCore::RegistrableDomain topFrameDomain) -> (bool isSubframeUnder)
102 IsRegisteredAsSubresourceUnder(PAL::SessionID sessionID, WebCore::RegistrableDomain subresourceDomain, WebCore::RegistrableDomain topFrameDomain) -> (bool isSubresourceUnder)
103 DomainIDExistsInDatabase(PAL::SessionID sessionID, int domainID) -> (bool exists)
104 LogFrameNavigation(PAL::SessionID sessionID, WebCore::RegistrableDomain targetDomain, WebCore::RegistrableDomain topFrameDomain, WebCore::RegistrableDomain sourceDomain, bool isRedirect, bool isMainFrame, Seconds delayAfterMainFrameDocumentLoad, bool wasPotentiallyInitiatedByUser)
105 LogUserInteraction(PAL::SessionID sessionID, WebCore::RegistrableDomain topFrameDomain) -> ()
106 ResetParametersToDefaultValues(PAL::SessionID sessionID) -> ()
107 ScheduleClearInMemoryAndPersistent(PAL::SessionID sessionID, std::optional<WallTime> modifiedSince, enum:bool WebKit::ShouldGrandfatherStatistics shouldGrandfather) -> ()
108 ScheduleCookieBlockingUpdate(PAL::SessionID sessionID) -> ()
109 ScheduleStatisticsAndDataRecordsProcessing(PAL::SessionID sessionID) -> ()
110 StatisticsDatabaseHasAllTables(PAL::SessionID sessionID) -> (bool hasAllTables)
111 SetCacheMaxAgeCapForPrevalentResources(PAL::SessionID sessionID, Seconds seconds) -> ()
112 SetGrandfathered(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain, bool isGrandfathered) -> ()
113 GetResourceLoadStatisticsDataSummary(PAL::SessionID sessionID) -> (Vector<WebKit::WebResourceLoadStatisticsStore::ThirdPartyData> thirdPartyData)
114 SetGrandfatheringTime(PAL::SessionID sessionID, Seconds seconds) -> ()
115 SetMaxStatisticsEntries(PAL::SessionID sessionID, uint64_t maximumEntryCount) -> ()
116 SetMinimumTimeBetweenDataRecordsRemoval(PAL::SessionID sessionID, Seconds seconds) -> ()
117 SetPruneEntriesDownTo(PAL::SessionID sessionID, uint64_t maximumEntryCount) -> ()
118 SetShouldClassifyResourcesBeforeDataRecordsRemoval(PAL::SessionID sessionID, bool value) -> ()
119 SetNotifyPagesWhenDataRecordsWereScanned(PAL::SessionID sessionID, bool value) -> ()
120 SetIsRunningResourceLoadStatisticsTest(PAL::SessionID sessionID, bool value) -> ()
121 SetResourceLoadStatisticsDebugMode(PAL::SessionID sessionID, bool debugMode) -> ()
122 SetVeryPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> ()
123 SetSubframeUnderTopFrameDomain(PAL::SessionID sessionID, WebCore::RegistrableDomain subFrameDomain, WebCore::RegistrableDomain topFrameDomain) -> ()
124 SetSubresourceUnderTopFrameDomain(PAL::SessionID sessionID, WebCore::RegistrableDomain subresourceDomain, WebCore::RegistrableDomain topFrameDomain) -> ()
125 SetSubresourceUniqueRedirectTo(PAL::SessionID sessionID, WebCore::RegistrableDomain subresourceDomain, WebCore::RegistrableDomain redirectedToDomain) -> ()
126 SetSubresourceUniqueRedirectFrom(PAL::SessionID sessionID, WebCore::RegistrableDomain subresourceDomain, WebCore::RegistrableDomain redirectedFromDomain) -> ()
127 SetTimeToLiveUserInteraction(PAL::SessionID sessionID, Seconds seconds) -> ()
128 SetTopFrameUniqueRedirectTo(PAL::SessionID sessionID, WebCore::RegistrableDomain topFrameDomain, WebCore::RegistrableDomain redirectedToDomain) -> ()
129 SetTopFrameUniqueRedirectFrom(PAL::SessionID sessionID, WebCore::RegistrableDomain topFrameDomain, WebCore::RegistrableDomain redirectedFromDomain) -> ()
130 ResetCacheMaxAgeCapForPrevalentResources(PAL::SessionID sessionID) -> ()
131 DidCommitCrossSiteLoadWithDataTransfer(PAL::SessionID sessionID, WebCore::RegistrableDomain fromDomain, WebCore::RegistrableDomain toDomain, OptionSet<WebCore::CrossSiteNavigationDataTransfer::Flag> navigationDataTransfer, WebKit::WebPageProxyIdentifier webPageProxyID, WebCore::PageIdentifier webPageID)
132 SetCrossSiteLoadWithLinkDecorationForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain fromDomain, WebCore::RegistrableDomain toDomain) -> ()
133 ResetCrossSiteLoadsWithLinkDecorationForTesting(PAL::SessionID sessionID) -> ()
134 DeleteCookiesForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain domain, bool includeHttpOnlyCookies) -> ()
135 HasIsolatedSession(PAL::SessionID sessionID, WebCore::RegistrableDomain domain) -> (bool hasIsolatedSession)
136 CloseITPDatabase(PAL::SessionID sessionID) -> ()
137#if ENABLE(APP_BOUND_DOMAINS)
138 SetAppBoundDomainsForResourceLoadStatistics(PAL::SessionID sessionID, HashSet<WebCore::RegistrableDomain> appBoundDomains) -> ()
139#endif
140 SetShouldDowngradeReferrerForTesting(bool enabled) -> ()
141 SetThirdPartyCookieBlockingMode(PAL::SessionID sessionID, enum:uint8_t WebCore::ThirdPartyCookieBlockingMode blockingMode) -> ()
142 SetShouldEnbleSameSiteStrictEnforcementForTesting(PAL::SessionID sessionID, enum:bool WebCore::SameSiteStrictEnforcementEnabled enabled) -> ()
143 SetFirstPartyWebsiteDataRemovalModeForTesting(PAL::SessionID sessionID, enum:uint8_t WebCore::FirstPartyWebsiteDataRemovalMode mode) -> ()
144 SetToSameSiteStrictCookiesForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain domain) -> ()
145 SetFirstPartyHostCNAMEDomainForTesting(PAL::SessionID sessionID, String firstPartyHost, WebCore::RegistrableDomain cnameDomain) -> ()
146 SetThirdPartyCNAMEDomainForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain domain) -> ()
147#endif
148
149 SetPrivateClickMeasurementDebugMode(PAL::SessionID sessionID, bool debugMode)
150
151 SetSessionIsControlledByAutomation(PAL::SessionID sessionID, bool controlled);
152
153 RegisterURLSchemeAsSecure(String scheme)
154 RegisterURLSchemeAsBypassingContentSecurityPolicy(String scheme)
155 RegisterURLSchemeAsLocal(String scheme)
156 RegisterURLSchemeAsNoAccess(String scheme)
157
158 SyncLocalStorage() -> ()
159
160 StorePrivateClickMeasurement(PAL::SessionID sessionID, WebCore::PrivateClickMeasurement privateClickMeasurement)
161 DumpPrivateClickMeasurement(PAL::SessionID sessionID) -> (String privateClickMeasurementState)
162 ClearPrivateClickMeasurement(PAL::SessionID sessionID) -> ()
163 SetPrivateClickMeasurementOverrideTimerForTesting(PAL::SessionID sessionID, bool value) -> ()
164 MarkAttributedPrivateClickMeasurementsAsExpiredForTesting(PAL::SessionID sessionID) -> ()
165 SetPrivateClickMeasurementEphemeralMeasurementForTesting(PAL::SessionID sessionID, bool value) -> ()
166 SimulatePrivateClickMeasurementSessionRestart(PAL::SessionID sessionID) -> ()
167 SetPrivateClickMeasurementTokenPublicKeyURLForTesting(PAL::SessionID sessionID, URL url) -> ()
168 SetPrivateClickMeasurementTokenSignatureURLForTesting(PAL::SessionID sessionID, URL url) -> ()
169 SetPrivateClickMeasurementAttributionReportURLsForTesting(PAL::SessionID sessionID, URL sourceURL, URL destinationURL) -> ()
170 MarkPrivateClickMeasurementsAsExpiredForTesting(PAL::SessionID sessionID) -> ()
171 SetPCMFraudPreventionValuesForTesting(PAL::SessionID sessionID, String secretToken, String unlinkableToken, String signature, String keyID) -> ()
172 SetPrivateClickMeasurementAppBundleIDForTesting(PAL::SessionID sessionID, String appBundleIDForTesting) -> ()
173 ClosePCMDatabase(PAL::SessionID sessionID) -> ()
174
175 SetServiceWorkerFetchTimeoutForTesting(Seconds seconds) -> () Synchronous
176 ResetServiceWorkerFetchTimeoutForTesting() -> () Synchronous
177
178 ResetQuota(PAL::SessionID sessionID) -> ()
179 ClearStorage(PAL::SessionID sessionID) -> ()
180 DidIncreaseQuota(PAL::SessionID sessionID, struct WebCore::ClientOrigin origin, WebKit::QuotaIncreaseRequestIdentifier identifier, std::optional<uint64_t> newQuota)
181
182#if ENABLE(APP_BOUND_DOMAINS)
183 HasAppBoundSession(PAL::SessionID sessionID) -> (bool hasAppBoundSession)
184 ClearAppBoundSession(PAL::SessionID sessionID) -> ()
185#endif
186
187#if PLATFORM(IOS_FAMILY) && !PLATFORM(MACCATALYST)
188 DisableServiceWorkerEntitlement()
189 ClearServiceWorkerEntitlementOverride() -> ()
190#endif
191 UpdateBundleIdentifier(String bundleIdentifier) -> ()
192 ClearBundleIdentifier() -> ()
193
194#if PLATFORM(COCOA)
195 AppPrivacyReportTestingData(PAL::SessionID sessionID) -> (struct WebKit::AppPrivacyReportTestingData data)
196 ClearAppPrivacyReportTestingData(PAL::SessionID sessionID) -> ()
197#endif
198
199 AddWebPageNetworkParameters(PAL::SessionID sessionID, WebKit::WebPageProxyIdentifier pageID, WebKit::WebPageNetworkParameters parameters)
200 RemoveWebPageNetworkParameters(PAL::SessionID sessionID, WebKit::WebPageProxyIdentifier pageID)
201 CountNonDefaultSessionSets(PAL::SessionID sessionID) -> (size_t count)
202
203#if ENABLE(CFPREFS_DIRECT_MODE)
204 NotifyPreferencesChanged(String domain, String key, std::optional<String> encodedValue)
205#endif
206
207 TerminateRemoteWorkerContextConnectionWhenPossible(enum:bool WebKit::RemoteWorkerType workerType, PAL::SessionID sessionID, WebCore::RegistrableDomain registrableDomain, WebCore::ProcessIdentifier processIdentifier);
208
209#if ENABLE(SERVICE_WORKER)
210 GetPendingPushMessages(PAL::SessionID sessionID) -> (Vector<WebKit::WebPushMessage> messages)
211 ProcessPushMessage(PAL::SessionID sessionID, struct WebKit::WebPushMessage pushMessage, enum:uint8_t WebCore::PushPermissionState pushPermissionState) -> (bool didSucceed)
212 ProcessNotificationEvent(struct WebCore::NotificationData data, enum:bool WebCore::NotificationEventType eventType) -> (bool didSucceed)
213#endif
214 DeletePushAndNotificationRegistration(PAL::SessionID sessionID, struct WebCore::SecurityOriginData origin) -> (String errorMessage)
215 GetOriginsWithPushAndNotificationPermissions(PAL::SessionID sessionID) -> (Vector<WebCore::SecurityOriginData> origins)
216 HasPushSubscriptionForTesting(PAL::SessionID sessionID, URL scopeURL) -> (bool hasSubscription)
217}
Note: See TracBrowser for help on using the repository browser.