# Copyright (C) 2012-2017 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 { # Initializes the network process. InitializeNetworkProcess(struct WebKit::NetworkProcessCreationParameters processCreationParameters) # Creates a connection for communication with a WebProcess CreateNetworkConnectionToWebProcess(bool isServiceWorkerProcess, struct WebCore::SecurityOriginData origin) #if USE(SOUP) SetIgnoreTLSErrors(bool ignoreTLSErrors) UserPreferredLanguagesChanged(Vector languages) SetNetworkProxySettings(struct WebCore::SoupNetworkProxySettings settings) #endif #if USE(CURL) SetNetworkProxySettings(PAL::SessionID sessionID, WebCore::CurlProxySettings settings) #endif ClearCachedCredentials() AddWebsiteDataStore(struct WebKit::WebsiteDataStoreParameters websiteDataStoreParameters); DestroySession(PAL::SessionID sessionID) FetchWebsiteData(PAL::SessionID sessionID, OptionSet websiteDataTypes, OptionSet fetchOptions, uint64_t callbackID) DeleteWebsiteData(PAL::SessionID sessionID, OptionSet websiteDataTypes, WallTime modifiedSince, uint64_t callbackID) DeleteWebsiteDataForOrigins(PAL::SessionID sessionID, OptionSet websiteDataTypes, Vector origins, Vector cookieHostNames, Vector HSTSCacheHostNames, uint64_t callbackID) DownloadRequest(PAL::SessionID sessionID, WebKit::DownloadID downloadID, WebCore::ResourceRequest request, String suggestedFilename) ResumeDownload(PAL::SessionID sessionID, WebKit::DownloadID downloadID, IPC::DataReference resumeData, String path, WebKit::SandboxExtension::Handle sandboxExtensionHandle) CancelDownload(WebKit::DownloadID downloadID) #if PLATFORM(COCOA) PublishDownloadProgress(WebKit::DownloadID downloadID, URL url, WebKit::SandboxExtension::Handle sandboxExtensionHandle) #endif ContinueWillSendRequest(WebKit::DownloadID downloadID, WebCore::ResourceRequest request) ContinueDecidePendingDownloadDestination(WebKit::DownloadID downloadID, String destination, WebKit::SandboxExtension::Handle sandboxExtensionHandle, bool allowOverwrite) #if PLATFORM(COCOA) SetQOS(int latencyQOS, int throughputQOS) SetStorageAccessAPIEnabled(bool enabled) #endif SetAllowsAnySSLCertificateForWebSocket(bool enabled) -> () LegacySync SyncAllCookies() AllowSpecificHTTPSCertificateForHost(WebCore::CertificateInfo certificate, String host) SetCanHandleHTTPSServerTrustEvaluation(bool value) GetNetworkProcessStatistics(uint64_t callbackID) ClearCacheForAllOrigins(uint32_t cachesToClear) SetCacheModel(enum:uint8_t WebKit::CacheModel cacheModel); ProcessDidTransitionToBackground() ProcessDidTransitionToForeground() ProcessWillSuspendImminently() -> (bool handled) LegacySync PrepareToSuspend() CancelPrepareToSuspend() ProcessDidResume() WriteBlobToFilePath(URL blobURL, String path, WebKit::SandboxExtension::Handle handle) -> (bool success) Async PreconnectTo(URL url, enum:bool WebCore::StoredCredentialsPolicy storedCredentialsPolicy); #if ENABLE(RESOURCE_LOAD_STATISTICS) UpdatePrevalentDomainsToBlockCookiesFor(PAL::SessionID sessionID, Vector domainsToBlock, uint64_t contextId) SetAgeCapForClientSideCookies(PAL::SessionID sessionID, Optional seconds, uint64_t contextId) HasStorageAccessForFrame(PAL::SessionID sessionID, String resourceDomain, String firstPartyDomain, uint64_t frameID, uint64_t pageID, uint64_t contextId) GetAllStorageAccessEntries(PAL::SessionID sessionID, uint64_t contextId) GrantStorageAccess(PAL::SessionID sessionID, String resourceDomain, String firstPartyDomain, Optional frameID, uint64_t pageID, uint64_t contextId) RemoveAllStorageAccess(PAL::SessionID sessionID, uint64_t contextId) RemovePrevalentDomains(PAL::SessionID sessionID, Vector domainsWithInteraction) SetCacheMaxAgeCapForPrevalentResources(PAL::SessionID sessionID, Seconds seconds, uint64_t contextId) ResetCacheMaxAgeCapForPrevalentResources(PAL::SessionID sessionID, uint64_t contextId) CommittedCrossSiteLoadWithLinkDecoration(PAL::SessionID sessionID, String fromRegistrableDomain, String toRegistrableDomain, uint64_t pageID) ResetCrossSiteLoadsWithLinkDecorationForTesting(PAL::SessionID sessionID) -> () Async #endif SetSessionIsControlledByAutomation(PAL::SessionID sessionID, bool controlled); RegisterURLSchemeAsSecure(String scheme) RegisterURLSchemeAsBypassingContentSecurityPolicy(String scheme) RegisterURLSchemeAsLocal(String scheme) RegisterURLSchemeAsNoAccess(String scheme) RegisterURLSchemeAsDisplayIsolated(String scheme) RegisterURLSchemeAsCORSEnabled(String scheme) RegisterURLSchemeAsCanDisplayOnlyIfCanRequest(String scheme) SetCacheStorageParameters(PAL::SessionID sessionID, uint64_t quota, String cacheStorageDirectory, WebKit::SandboxExtension::Handle handle); #if ENABLE(SERVICE_WORKER) DidNotHandleFetch(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier) DidFailFetch(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier, WebCore::ResourceError error) DidReceiveFetchResponse(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier, WebCore::ResourceResponse response) DidReceiveFetchData(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier, IPC::SharedBufferDataReference data, int64_t encodedDataLength) DidReceiveFetchFormData(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier, IPC::FormDataReference data) DidFinishFetch(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier) PostMessageToServiceWorkerClient(struct WebCore::ServiceWorkerClientIdentifier destinationIdentifier, struct WebCore::MessageWithMessagePorts message, WebCore::ServiceWorkerIdentifier sourceIdentifier, String sourceOrigin) PostMessageToServiceWorker(WebCore::ServiceWorkerIdentifier destination, struct WebCore::MessageWithMessagePorts message, WebCore::ServiceWorkerOrClientIdentifier source, WebCore::SWServerConnectionIdentifier connectionIdentifier) DisableServiceWorkerProcessTerminationDelay() #endif #if ENABLE(INDEXED_DATABASE) SetIDBPerOriginQuota(uint64_t quota) #endif }