Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: aa4461b6312354f0bfe04f9acd39efac5b0e17fd
      
https://github.com/WebKit/WebKit/commit/aa4461b6312354f0bfe04f9acd39efac5b0e17fd
  Author: Alex Christensen <[email protected]>
  Date:   2023-11-07 (Tue, 07 Nov 2023)

  Changed paths:
    M Source/WebKit/GPUProcess/GPUProcessCreationParameters.serialization.in
    M Source/WebKit/GPUProcess/GPUProcessSessionParameters.serialization.in
    M 
Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.serialization.in
    M Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp
    M Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h
    M Source/WebKit/Platform/IPC/FormDataReference.h
    M Source/WebKit/Scripts/generate-serializers.py
    M Source/WebKit/Scripts/webkit/messages.py
    M Source/WebKit/Scripts/webkit/tests/GeneratedSerializers.cpp
    M Source/WebKit/Scripts/webkit/tests/GeneratedSerializers.h
    M Source/WebKit/Scripts/webkit/tests/SerializedTypeInfo.cpp
    M Source/WebKit/Scripts/webkit/tests/TestSerializedType.serialization.in
    M Source/WebKit/Shared/Cocoa/SandboxExtensionCocoa.mm
    M Source/WebKit/Shared/Databases/IndexedDB/WebIDBResult.serialization.in
    M Source/WebKit/Shared/GoToBackForwardItemParameters.serialization.in
    M Source/WebKit/Shared/LoadParameters.cpp
    M Source/WebKit/Shared/LoadParameters.h
    M Source/WebKit/Shared/PolicyDecision.serialization.in
    M Source/WebKit/Shared/ResourceLoadStatisticsParameters.serialization.in
    M Source/WebKit/Shared/SandboxExtension.h
    M Source/WebKit/Shared/WebPageCreationParameters.serialization.in
    M Source/WebKit/Shared/WebProcessDataStoreParameters.serialization.in
    M Source/WebKit/Shared/WebsiteDataStoreParameters.serialization.in
    M Source/WebKit/UIProcess/Cocoa/GPUProcessProxyCocoa.mm
    M Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm
    M Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm
    M Source/WebKit/UIProcess/Cocoa/WebProcessProxyCocoa.mm
    M Source/WebKit/UIProcess/Downloads/DownloadProxy.cpp
    M Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp
    M Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp
    M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp
    M Source/WebKit/UIProcess/RemotePageProxy.cpp
    M Source/WebKit/UIProcess/UserMediaPermissionRequestManagerProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebProcessPool.cpp
    M Source/WebKit/UIProcess/WebProcessProxy.cpp
    M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Source/WebKit/WebProcess/FileAPI/BlobRegistryProxy.cpp
    M Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp
    M Source/WebKit/WebProcess/MediaStream/MediaDeviceSandboxExtensions.h
    M 
Source/WebKit/WebProcess/MediaStream/MediaDeviceSandboxExtensions.serialization.in

  Log Message:
  -----------
  Prepare SandboxExtensionHandle for generated serialization
https://bugs.webkit.org/show_bug.cgi?id=264302
rdar://118024534

Reviewed by Chris Dumez.

A SandboxExtensionHandle is consumed when serializing, so it should be 
serialized as an r-value.
This means all structures that contain one must also be serialized as an 
r-value.
This PR just changes these structures to r-values with no changes in behavior 
except these 2:
1. Sending a WebPage::MouseEvent message was recently changed to send the 
sandbox extensions to
an iframe process if site isolation is enabled.  This restores behavior to what 
it was before that change.
2. In WebProcessPool::startMemorySampler we used to send a 
WebProcess::StartMemorySampler to each
web content process, but only the first would receive a sandbox extension 
handle.  This makes it so
that each process receives a sandbox extension handle.  This is a debug tool, 
so it shouldn't be impactful.

* Source/WebKit/GPUProcess/GPUProcessCreationParameters.serialization.in:
* Source/WebKit/GPUProcess/GPUProcessSessionParameters.serialization.in:
* 
Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.serialization.in:
* Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode):
(WebKit::NetworkSessionCreationParameters::encode const): Deleted.
* Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h:
* Source/WebKit/Platform/IPC/FormDataReference.h:
(IPC::FormDataReference::encode const):
* Source/WebKit/Scripts/generate-serializers.py:
(SerializedType.__init__):
(encode_type):
* Source/WebKit/Scripts/webkit/messages.py:
(types_that_must_be_moved):
(headers_for_type):
* Source/WebKit/Scripts/webkit/tests/GeneratedSerializers.cpp:
(IPC::ArgumentCoder<WebKit::RValueWithFunctionCalls>::encode):
(IPC::ArgumentCoder<WebKit::RValueWithFunctionCalls>::decode):
* Source/WebKit/Scripts/webkit/tests/GeneratedSerializers.h:
* Source/WebKit/Scripts/webkit/tests/SerializedTypeInfo.cpp:
(WebKit::allSerializedTypes):
* Source/WebKit/Scripts/webkit/tests/TestSerializedType.serialization.in:
* Source/WebKit/Shared/Cocoa/SandboxExtensionCocoa.mm:
(WebKit::SandboxExtensionHandle::encode):
(WebKit::SandboxExtensionHandle::encode const): Deleted.
* Source/WebKit/Shared/Databases/IndexedDB/WebIDBResult.serialization.in:
* Source/WebKit/Shared/GoToBackForwardItemParameters.serialization.in:
* Source/WebKit/Shared/LoadParameters.cpp:
(WebKit::LoadParameters::encode):
(WebKit::LoadParameters::encode const): Deleted.
* Source/WebKit/Shared/LoadParameters.h:
* Source/WebKit/Shared/PolicyDecision.serialization.in:
* Source/WebKit/Shared/ResourceLoadStatisticsParameters.serialization.in:
* Source/WebKit/Shared/SandboxExtension.h:
* Source/WebKit/Shared/WebPageCreationParameters.serialization.in:
* Source/WebKit/Shared/WebProcessDataStoreParameters.serialization.in:
* Source/WebKit/Shared/WebsiteDataStoreParameters.serialization.in:
* Source/WebKit/UIProcess/Cocoa/GPUProcessProxyCocoa.mm:
(WebKit::GPUProcessProxy::enablePowerLogging):
* Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::grantAccessToAssetServices):
* Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
(WebKit::WebProcessPool::registerNotificationObservers):
* Source/WebKit/UIProcess/Cocoa/WebProcessProxyCocoa.mm:
(WebKit::WebProcessProxy::unblockAccessibilityServerIfNeeded):
* Source/WebKit/UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::publishProgress):
* Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp:
(WebKit::GPUProcessProxy::GPUProcessProxy):
(WebKit::GPUProcessProxy::updateSandboxAccess):
* Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::sendCreationParametersToNewProcess):
* Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::initializeWebPage):
(WebKit::ProvisionalPageProxy::goToBackForwardItem):
* Source/WebKit/UIProcess/RemotePageProxy.cpp:
(WebKit::RemotePageProxy::injectPageIntoNewProcess):
(WebKit::RemotePageProxy::sendMouseEvent):
* Source/WebKit/UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
(WebKit::UserMediaPermissionRequestManagerProxy::finishGrantingRequest):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadRequestWithNavigationShared):
(WebKit::WebPageProxy::loadFile):
(WebKit::WebPageProxy::loadDataWithNavigationShared):
(WebKit::WebPageProxy::loadSimulatedRequest):
(WebKit::WebPageProxy::loadAlternateHTML):
(WebKit::WebPageProxy::reload):
(WebKit::WebPageProxy::sendMouseEvent):
(WebKit::WebPageProxy::receivedNavigationPolicyDecision):
(WebKit::WebPageProxy::continueNavigationInNewProcess):
* Source/WebKit/UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::processDidFinishLaunching):
(WebKit::WebProcessPool::startMemorySampler):
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::shouldSendPendingMessage):
* Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::resumeDownload):
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/FileAPI/BlobRegistryProxy.cpp:
(WebKit::BlobRegistryProxy::registerInternalFileBlobURL):
* Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:
(WebKit::MediaPlayerPrivateRemote::load):
* Source/WebKit/WebProcess/MediaStream/MediaDeviceSandboxExtensions.h:
(WebKit::MediaDeviceSandboxExtensions::ids):
(WebKit::MediaDeviceSandboxExtensions::handles):
(WebKit::MediaDeviceSandboxExtensions::machBootstrapHandle):
(WebKit::MediaDeviceSandboxExtensions::MediaDeviceSandboxExtensions): Deleted.
(WebKit::MediaDeviceSandboxExtensions::ids const): Deleted.
(WebKit::MediaDeviceSandboxExtensions::handles const): Deleted.
(WebKit::MediaDeviceSandboxExtensions::machBootstrapHandle const): Deleted.
* 
Source/WebKit/WebProcess/MediaStream/MediaDeviceSandboxExtensions.serialization.in:

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to