2c797e02dba288fd837feb4725a19cd8c21e20be
[WebKit-https.git] / Source / WebKit / NetworkProcess / NetworkProcess.messages.in
1 # Copyright (C) 2012-2017 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
23 messages -> NetworkProcess LegacyReceiver {
24     # Initializes the network process.
25     InitializeNetworkProcess(struct WebKit::NetworkProcessCreationParameters processCreationParameters)
26
27     # Creates a connection for communication with a WebProcess
28     CreateNetworkConnectionToWebProcess(bool isServiceWorkerProcess, struct WebCore::SecurityOriginData origin)
29
30 #if USE(SOUP)
31     SetIgnoreTLSErrors(bool ignoreTLSErrors)
32     UserPreferredLanguagesChanged(Vector<String> languages)
33     SetNetworkProxySettings(struct WebCore::SoupNetworkProxySettings settings)
34 #endif
35
36     ClearCachedCredentials()
37
38     AddWebsiteDataStore(struct WebKit::WebsiteDataStoreParameters websiteDataStoreParameters);
39     DestroySession(PAL::SessionID sessionID)
40
41     FetchWebsiteData(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, OptionSet<WebKit::WebsiteDataFetchOption> fetchOptions, uint64_t callbackID)
42     DeleteWebsiteData(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, WallTime modifiedSince, uint64_t callbackID)
43     DeleteWebsiteDataForOrigins(PAL::SessionID sessionID, OptionSet<WebKit::WebsiteDataType> websiteDataTypes, Vector<WebCore::SecurityOriginData> origins, Vector<String> cookieHostNames, Vector<String> HSTSCacheHostNames, uint64_t callbackID)
44
45     DownloadRequest(PAL::SessionID sessionID, WebKit::DownloadID downloadID, WebCore::ResourceRequest request, String suggestedFilename)
46     ResumeDownload(PAL::SessionID sessionID, WebKit::DownloadID downloadID, IPC::DataReference resumeData, String path, WebKit::SandboxExtension::Handle sandboxExtensionHandle)
47     CancelDownload(WebKit::DownloadID downloadID)
48
49     ContinueWillSendRequest(WebKit::DownloadID downloadID, WebCore::ResourceRequest request)
50     ContinueDecidePendingDownloadDestination(WebKit::DownloadID downloadID, String destination, WebKit::SandboxExtension::Handle sandboxExtensionHandle, bool allowOverwrite)
51
52 #if PLATFORM(COCOA)
53     SetQOS(int latencyQOS, int throughputQOS)
54     SetStorageAccessAPIEnabled(bool enabled)
55 #endif
56     SetAllowsAnySSLCertificateForWebSocket(bool enabled) -> () LegacySync
57
58     SyncAllCookies()
59
60     AllowSpecificHTTPSCertificateForHost(WebCore::CertificateInfo certificate, String host)
61     SetCanHandleHTTPSServerTrustEvaluation(bool value)
62     
63     GetNetworkProcessStatistics(uint64_t callbackID)
64     
65     ClearCacheForAllOrigins(uint32_t cachesToClear)
66     SetCacheModel(uint32_t cacheModel);
67
68     ProcessDidTransitionToBackground()
69     ProcessDidTransitionToForeground()
70
71     ProcessWillSuspendImminently() -> (bool handled) LegacySync
72     PrepareToSuspend()
73     CancelPrepareToSuspend()
74     ProcessDidResume()
75
76     WriteBlobToFilePath(WebCore::URL blobURL, String path, WebKit::SandboxExtension::Handle handle, uint64_t callbackID)
77
78     PreconnectTo(WebCore::URL url, enum:bool WebCore::StoredCredentialsPolicy storedCredentialsPolicy);
79
80 #if ENABLE(RESOURCE_LOAD_STATISTICS)
81     UpdatePrevalentDomainsToBlockCookiesFor(PAL::SessionID sessionID, Vector<String> domainsToBlock, uint64_t contextId)
82     SetShouldCapLifetimeForClientSideCookies(PAL::SessionID sessionID, bool value, uint64_t contextId)
83     HasStorageAccessForFrame(PAL::SessionID sessionID, String resourceDomain, String firstPartyDomain, uint64_t frameID, uint64_t pageID, uint64_t contextId)
84     GetAllStorageAccessEntries(PAL::SessionID sessionID, uint64_t contextId)
85     GrantStorageAccess(PAL::SessionID sessionID, String resourceDomain, String firstPartyDomain, std::optional<uint64_t> frameID, uint64_t pageID, uint64_t contextId)
86     RemoveAllStorageAccess(PAL::SessionID sessionID, uint64_t contextId)
87     RemovePrevalentDomains(PAL::SessionID sessionID, Vector<String> domainsWithInteraction)
88     SetCacheMaxAgeCapForPrevalentResources(PAL::SessionID sessionID, Seconds seconds, uint64_t contextId)
89     ResetCacheMaxAgeCapForPrevalentResources(PAL::SessionID sessionID, uint64_t contextId)
90 #endif
91
92     SetSessionIsControlledByAutomation(PAL::SessionID sessionID, bool controlled);
93
94     RegisterURLSchemeAsSecure(String scheme)
95     RegisterURLSchemeAsBypassingContentSecurityPolicy(String scheme)
96     RegisterURLSchemeAsLocal(String scheme)
97     RegisterURLSchemeAsNoAccess(String scheme)
98     RegisterURLSchemeAsDisplayIsolated(String scheme)
99     RegisterURLSchemeAsCORSEnabled(String scheme)
100     RegisterURLSchemeAsCanDisplayOnlyIfCanRequest(String scheme)
101
102     SetCacheStorageParameters(PAL::SessionID sessionID, uint64_t quota, String cacheStorageDirectory, WebKit::SandboxExtension::Handle handle);
103
104 #if ENABLE(SERVICE_WORKER)
105     DidNotHandleFetch(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier)
106     DidFailFetch(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier, WebCore::ResourceError error)
107     DidReceiveFetchResponse(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier, WebCore::ResourceResponse response)
108     DidReceiveFetchData(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier, IPC::SharedBufferDataReference data, int64_t encodedDataLength)
109     DidReceiveFetchFormData(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier, IPC::FormDataReference data)
110     DidFinishFetch(WebCore::SWServerConnectionIdentifier serverConnectionIdentifier, WebCore::FetchIdentifier fetchIdentifier)
111     PostMessageToServiceWorkerClient(struct WebCore::ServiceWorkerClientIdentifier destinationIdentifier, struct WebCore::MessageWithMessagePorts message, WebCore::ServiceWorkerIdentifier sourceIdentifier, String sourceOrigin)
112
113     PostMessageToServiceWorker(WebCore::ServiceWorkerIdentifier destination, struct WebCore::MessageWithMessagePorts message, WebCore::ServiceWorkerOrClientIdentifier source, WebCore::SWServerConnectionIdentifier connectionIdentifier)
114
115     DisableServiceWorkerProcessTerminationDelay()
116 #endif
117 }