| # Copyright (C) 2012-2020 Apple Inc. All rights reserved. |
| # |
| # Redistribution and use in source and binary forms, with or without |
| # modification, are permitted provided that the following conditions |
| # are met: |
| # 1. Redistributions of source code must retain the above copyright |
| # notice, this list of conditions and the following disclaimer. |
| # 2. Redistributions in binary form must reproduce the above copyright |
| # notice, this list of conditions and the following disclaimer in the |
| # documentation and/or other materials provided with the distribution. |
| # |
| # THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND |
| # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| # DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR |
| # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
| # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
| # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| messages -> NetworkProcess LegacyReceiver { |
| InitializeNetworkProcess(struct WebKit::NetworkProcessCreationParameters processCreationParameters) |
| |
| CreateNetworkConnectionToWebProcess(WebCore::ProcessIdentifier processIdentifier, PAL::SessionID sessionID) -> (std::optional<IPC::Attachment> connectionIdentifier, enum:uint8_t WebCore::HTTPCookieAcceptPolicy cookieAcceptPolicy) Async |
| |
| #if USE(SOUP) |
| SetIgnoreTLSErrors(PAL::SessionID sessionID, bool ignoreTLSErrors) |
| UserPreferredLanguagesChanged(Vector<String> languages) |
| SetNetworkProxySettings(PAL::SessionID sessionID, struct WebCore::SoupNetworkProxySettings settings) |
| PrefetchDNS(String hostname) |
| SetPersistentCredentialStorageEnabled(PAL::SessionID sessionID, bool enabled) |
| #endif |
| |
| #if USE(CURL) |
| SetNetworkProxySettings(PAL::SessionID sessionID, WebCore::CurlProxySettings settings) |
| #endif |
| |
| ClearCachedCredentials(PAL::SessionID sessionID) |
| |
| AddWebsiteDataStore(struct WebKit::WebsiteDataStoreParameters websiteDataStoreParameters); |
| DestroySession(PAL::SessionID sessionID) |
| |
| FetchWebsiteData(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, OptionSet<WebKit::WebsiteDataFetchOption> fetchOptions) -> (struct WebKit::WebsiteData websiteData) Async |
| DeleteWebsiteData(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, WallTime modifiedSince) -> () Async |
| DeleteWebsiteDataForOrigins(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, Vector<WebCore::SecurityOriginData> origins, Vector<String> cookieHostNames, Vector<String> HSTSCacheHostNames, Vector<WebCore::RegistrableDomain> registrableDomains) -> () Async |
| RenameOriginInWebsiteData(PAL::SessionID sessionID, URL oldDomain, URL newDomain, OptionSet<WebKit::WebsiteDataType> websiteDataTypes) -> () Async |
| |
| DownloadRequest(PAL::SessionID sessionID, WebKit::DownloadID downloadID, WebCore::ResourceRequest request, enum:bool std::optional<WebKit::NavigatingToAppBoundDomain> isNavigatingToAppBoundDomain, String suggestedFilename) |
| ResumeDownload(PAL::SessionID sessionID, WebKit::DownloadID downloadID, IPC::DataReference resumeData, String path, WebKit::SandboxExtension::Handle sandboxExtensionHandle, enum:bool WebKit::CallDownloadDidStart callDownloadDidStart) |
| CancelDownload(WebKit::DownloadID downloadID) -> (IPC::DataReference resumeData) Async |
| #if PLATFORM(COCOA) |
| PublishDownloadProgress(WebKit::DownloadID downloadID, URL url, WebKit::SandboxExtension::Handle sandboxExtensionHandle) |
| #endif |
| ApplicationDidEnterBackground() |
| ApplicationWillEnterForeground() |
| |
| ContinueWillSendRequest(WebKit::DownloadID downloadID, WebCore::ResourceRequest request) |
| |
| #if PLATFORM(COCOA) |
| SetQOS(int latencyQOS, int throughputQOS) |
| #endif |
| SetAllowsAnySSLCertificateForWebSocket(bool enabled) -> () Synchronous |
| |
| FlushCookies(PAL::SessionID sessionID) -> () Async |
| |
| AllowSpecificHTTPSCertificateForHost(WebCore::CertificateInfo certificate, String host) |
| AllowTLSCertificateChainForLocalPCMTesting(PAL::SessionID sessionID, WebCore::CertificateInfo certificate) |
| |
| SetCacheModel(enum:uint8_t WebKit::CacheModel cacheModel) |
| SetCacheModelSynchronouslyForTesting(enum:uint8_t WebKit::CacheModel cacheModel) -> () Synchronous |
| |
| ProcessWillSuspendImminentlyForTestingSync() -> () Synchronous |
| PrepareToSuspend(bool isSuspensionImminent) -> () Async |
| ProcessDidResume() |
| |
| 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); |
| |
| #if ENABLE(INTELLIGENT_TRACKING_PREVENTION) |
| ClearPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> () Async |
| ClearUserInteraction(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> () Async |
| DumpResourceLoadStatistics(PAL::SessionID sessionID) -> (String dumpedStatistics) Async |
| SetResourceLoadStatisticsEnabled(PAL::SessionID sessionID, bool enabled) |
| SetResourceLoadStatisticsLogTestingEvent(bool enabled) |
| UpdatePrevalentDomainsToBlockCookiesFor(PAL::SessionID sessionID, Vector<WebCore::RegistrableDomain> domainsToBlock) -> () Async |
| IsGrandfathered(PAL::SessionID sessionID, WebCore::RegistrableDomain targetDomain) -> (bool isGrandfathered) Async |
| IsPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain targetDomain) -> (bool isPrevalent) Async |
| IsVeryPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain targetDomain) -> (bool isVeryPrevalent) Async |
| SetAgeCapForClientSideCookies(PAL::SessionID sessionID, std::optional<Seconds> seconds) -> () Async |
| SetLastSeen(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain, Seconds seconds) -> () Async |
| 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) -> () Async |
| InsertExpiredStatisticForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain, uint64_t numberOfOperatingDaysPassed, bool hadUserInteraction, bool isScheduledForAllButCookieDataRemoval, bool isPrevalent) -> () Async |
| SetPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> () Async |
| SetPrevalentResourceForDebugMode(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> () Async |
| IsResourceLoadStatisticsEphemeral(PAL::SessionID sessionID) -> (bool isEphemeral) Async |
| HadUserInteraction(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> (bool hadUserInteraction) Async |
| IsRelationshipOnlyInDatabaseOnce(PAL::SessionID sessionID, WebCore::RegistrableDomain subDomain, WebCore::RegistrableDomain topDomain) -> (bool hadUserInteraction) Async |
| HasLocalStorage(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> (bool hadUserInteraction) Async |
| GetAllStorageAccessEntries(PAL::SessionID sessionID) -> (Vector<String> domains) Async |
| IsRegisteredAsRedirectingTo(PAL::SessionID sessionID, WebCore::RegistrableDomain redirectedFromDomain, WebCore::RegistrableDomain redirectedToDomain) -> (bool isRedirectingTo) Async |
| IsRegisteredAsSubFrameUnder(PAL::SessionID sessionID, WebCore::RegistrableDomain subFrameDomain, WebCore::RegistrableDomain topFrameDomain) -> (bool isSubframeUnder) Async |
| IsRegisteredAsSubresourceUnder(PAL::SessionID sessionID, WebCore::RegistrableDomain subresourceDomain, WebCore::RegistrableDomain topFrameDomain) -> (bool isSubresourceUnder) Async |
| DomainIDExistsInDatabase(PAL::SessionID sessionID, int domainID) -> (bool exists) Async |
| LogFrameNavigation(PAL::SessionID sessionID, WebCore::RegistrableDomain targetDomain, WebCore::RegistrableDomain topFrameDomain, WebCore::RegistrableDomain sourceDomain, bool isRedirect, bool isMainFrame, Seconds delayAfterMainFrameDocumentLoad, bool wasPotentiallyInitiatedByUser) |
| LogUserInteraction(PAL::SessionID sessionID, WebCore::RegistrableDomain topFrameDomain) -> () Async |
| ResetParametersToDefaultValues(PAL::SessionID sessionID) -> () Async |
| ScheduleClearInMemoryAndPersistent(PAL::SessionID sessionID, std::optional<WallTime> modifiedSince, enum:bool WebKit::ShouldGrandfatherStatistics shouldGrandfather) -> () Async |
| ScheduleCookieBlockingUpdate(PAL::SessionID sessionID) -> () Async |
| ScheduleStatisticsAndDataRecordsProcessing(PAL::SessionID sessionID) -> () Async |
| StatisticsDatabaseHasAllTables(PAL::SessionID sessionID) -> (bool hasAllTables) Async |
| SetCacheMaxAgeCapForPrevalentResources(PAL::SessionID sessionID, Seconds seconds) -> () Async |
| SetGrandfathered(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain, bool isGrandfathered) -> () Async |
| GetResourceLoadStatisticsDataSummary(PAL::SessionID sessionID) -> (Vector<WebKit::WebResourceLoadStatisticsStore::ThirdPartyData> thirdPartyData) Async |
| SetGrandfatheringTime(PAL::SessionID sessionID, Seconds seconds) -> () Async |
| SetMaxStatisticsEntries(PAL::SessionID sessionID, uint64_t maximumEntryCount) -> () Async |
| SetMinimumTimeBetweenDataRecordsRemoval(PAL::SessionID sessionID, Seconds seconds) -> () Async |
| SetPruneEntriesDownTo(PAL::SessionID sessionID, uint64_t maximumEntryCount) -> () Async |
| SetShouldClassifyResourcesBeforeDataRecordsRemoval(PAL::SessionID sessionID, bool value) -> () Async |
| SetNotifyPagesWhenDataRecordsWereScanned(PAL::SessionID sessionID, bool value) -> () Async |
| SetIsRunningResourceLoadStatisticsTest(PAL::SessionID sessionID, bool value) -> () Async |
| SetResourceLoadStatisticsDebugMode(PAL::SessionID sessionID, bool debugMode) -> () Async |
| SetVeryPrevalentResource(PAL::SessionID sessionID, WebCore::RegistrableDomain resourceDomain) -> () Async |
| SetSubframeUnderTopFrameDomain(PAL::SessionID sessionID, WebCore::RegistrableDomain subFrameDomain, WebCore::RegistrableDomain topFrameDomain) -> () Async |
| SetSubresourceUnderTopFrameDomain(PAL::SessionID sessionID, WebCore::RegistrableDomain subresourceDomain, WebCore::RegistrableDomain topFrameDomain) -> () Async |
| SetSubresourceUniqueRedirectTo(PAL::SessionID sessionID, WebCore::RegistrableDomain subresourceDomain, WebCore::RegistrableDomain redirectedToDomain) -> () Async |
| SetSubresourceUniqueRedirectFrom(PAL::SessionID sessionID, WebCore::RegistrableDomain subresourceDomain, WebCore::RegistrableDomain redirectedFromDomain) -> () Async |
| SetTimeToLiveUserInteraction(PAL::SessionID sessionID, Seconds seconds) -> () Async |
| SetTopFrameUniqueRedirectTo(PAL::SessionID sessionID, WebCore::RegistrableDomain topFrameDomain, WebCore::RegistrableDomain redirectedToDomain) -> () Async |
| SetTopFrameUniqueRedirectFrom(PAL::SessionID sessionID, WebCore::RegistrableDomain topFrameDomain, WebCore::RegistrableDomain redirectedFromDomain) -> () Async |
| ResetCacheMaxAgeCapForPrevalentResources(PAL::SessionID sessionID) -> () Async |
| DidCommitCrossSiteLoadWithDataTransfer(PAL::SessionID sessionID, WebCore::RegistrableDomain fromDomain, WebCore::RegistrableDomain toDomain, OptionSet<WebCore::CrossSiteNavigationDataTransfer::Flag> navigationDataTransfer, WebKit::WebPageProxyIdentifier webPageProxyID, WebCore::PageIdentifier webPageID) |
| SetCrossSiteLoadWithLinkDecorationForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain fromDomain, WebCore::RegistrableDomain toDomain) -> () Async |
| ResetCrossSiteLoadsWithLinkDecorationForTesting(PAL::SessionID sessionID) -> () Async |
| DeleteCookiesForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain domain, bool includeHttpOnlyCookies) -> () Async |
| HasIsolatedSession(PAL::SessionID sessionID, WebCore::RegistrableDomain domain) -> (bool hasIsolatedSession) Async |
| #if ENABLE(APP_BOUND_DOMAINS) |
| SetAppBoundDomainsForResourceLoadStatistics(PAL::SessionID sessionID, HashSet<WebCore::RegistrableDomain> appBoundDomains) -> () Async |
| #endif |
| SetShouldDowngradeReferrerForTesting(bool enabled) -> () Async |
| SetThirdPartyCookieBlockingMode(PAL::SessionID sessionID, enum:uint8_t WebCore::ThirdPartyCookieBlockingMode blockingMode) -> () Async |
| SetShouldEnbleSameSiteStrictEnforcementForTesting(PAL::SessionID sessionID, enum:bool WebCore::SameSiteStrictEnforcementEnabled enabled) -> () Async |
| SetFirstPartyWebsiteDataRemovalModeForTesting(PAL::SessionID sessionID, enum:uint8_t WebCore::FirstPartyWebsiteDataRemovalMode mode) -> () Async |
| SetToSameSiteStrictCookiesForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain domain) -> () Async |
| SetFirstPartyHostCNAMEDomainForTesting(PAL::SessionID sessionID, String firstPartyHost, WebCore::RegistrableDomain cnameDomain) -> () Async |
| SetThirdPartyCNAMEDomainForTesting(PAL::SessionID sessionID, WebCore::RegistrableDomain domain) -> () Async |
| #endif |
| |
| SetPrivateClickMeasurementDebugMode(PAL::SessionID sessionID, bool debugMode) |
| |
| SetSessionIsControlledByAutomation(PAL::SessionID sessionID, bool controlled); |
| |
| RegisterURLSchemeAsSecure(String scheme) |
| RegisterURLSchemeAsBypassingContentSecurityPolicy(String scheme) |
| RegisterURLSchemeAsLocal(String scheme) |
| RegisterURLSchemeAsNoAccess(String scheme) |
| |
| SetCacheStorageParameters(PAL::SessionID sessionID, String cacheStorageDirectory, WebKit::SandboxExtension::Handle handle); |
| |
| SyncLocalStorage() -> () Async |
| |
| StorePrivateClickMeasurement(PAL::SessionID sessionID, WebCore::PrivateClickMeasurement privateClickMeasurement) |
| DumpPrivateClickMeasurement(PAL::SessionID sessionID) -> (String privateClickMeasurementState) Async |
| ClearPrivateClickMeasurement(PAL::SessionID sessionID) -> () Async |
| SetPrivateClickMeasurementOverrideTimerForTesting(PAL::SessionID sessionID, bool value) -> () Async |
| MarkAttributedPrivateClickMeasurementsAsExpiredForTesting(PAL::SessionID sessionID) -> () Async |
| SetPrivateClickMeasurementEphemeralMeasurementForTesting(PAL::SessionID sessionID, bool value) -> () Async |
| SimulateResourceLoadStatisticsSessionRestart(PAL::SessionID sessionID) -> () Async |
| SetPrivateClickMeasurementTokenPublicKeyURLForTesting(PAL::SessionID sessionID, URL url) -> () Async |
| SetPrivateClickMeasurementTokenSignatureURLForTesting(PAL::SessionID sessionID, URL url) -> () Async |
| SetPrivateClickMeasurementAttributionReportURLsForTesting(PAL::SessionID sessionID, URL sourceURL, URL destinationURL) -> () Async |
| MarkPrivateClickMeasurementsAsExpiredForTesting(PAL::SessionID sessionID) -> () Async |
| SetPCMFraudPreventionValuesForTesting(PAL::SessionID sessionID, String secretToken, String unlinkableToken, String signature, String keyID) -> () Async |
| SetPrivateClickMeasurementAppBundleIDForTesting(PAL::SessionID sessionID, String appBundleIDForTesting) -> () Async |
| GetLocalStorageOriginDetails(PAL::SessionID sessionID) -> (Vector<WebKit::LocalStorageDatabaseTracker::OriginDetails> details) Async |
| |
| SetServiceWorkerFetchTimeoutForTesting(Seconds seconds) -> () Synchronous |
| ResetServiceWorkerFetchTimeoutForTesting() -> () Synchronous |
| |
| ResetQuota(PAL::SessionID sessionID) -> () Async |
| ClearStorage(PAL::SessionID sessionID) -> () Async |
| |
| #if ENABLE(APP_BOUND_DOMAINS) |
| HasAppBoundSession(PAL::SessionID sessionID) -> (bool hasAppBoundSession) Async |
| ClearAppBoundSession(PAL::SessionID sessionID) -> () Async |
| #endif |
| |
| #if PLATFORM(IOS_FAMILY) && !PLATFORM(MACCATALYST) |
| DisableServiceWorkerEntitlement() |
| ClearServiceWorkerEntitlementOverride() -> () Async |
| #endif |
| UpdateBundleIdentifier(String bundleIdentifier) -> () Async |
| ClearBundleIdentifier() -> () Async |
| |
| #if PLATFORM(COCOA) |
| AppPrivacyReportTestingData(PAL::SessionID sessionID) -> (struct WebKit::AppPrivacyReportTestingData data) Async |
| ClearAppPrivacyReportTestingData(PAL::SessionID sessionID) -> () Async |
| #endif |
| |
| AddWebPageNetworkParameters(PAL::SessionID sessionID, WebKit::WebPageProxyIdentifier pageID, WebKit::WebPageNetworkParameters parameters) |
| RemoveWebPageNetworkParameters(PAL::SessionID sessionID, WebKit::WebPageProxyIdentifier pageID) |
| CountNonDefaultSessionSets(PAL::SessionID sessionID) -> (size_t count) Async |
| |
| #if ENABLE(CFPREFS_DIRECT_MODE) |
| NotifyPreferencesChanged(String domain, String key, std::optional<String> encodedValue) |
| #endif |
| |
| #if ENABLE(SERVICE_WORKER) |
| ProcessPushMessage(PAL::SessionID sessionID, std::optional<IPC::DataReference> data, URL registrationURL) -> (bool didSucceed) Async |
| #endif |
| DeletePushAndNotificationRegistration(PAL::SessionID sessionID, struct WebCore::SecurityOriginData origin) -> (String errorMessage) Async |
| GetOriginsWithPushAndNotificationPermissions(PAL::SessionID sessionID) -> (Vector<WebCore::SecurityOriginData> origins) Async |
| } |