Changeset 293733 in webkit
- Timestamp:
- May 3, 2022 11:25:46 AM (2 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r293732 r293733 1 2022-05-03 Per Arne Vollan <pvollan@apple.com> 2 3 [iOS][GPUP] Remove Mach sandbox extensions for non browser clients 4 https://bugs.webkit.org/show_bug.cgi?id=240008 5 6 Reviewed by Geoffrey Garen. 7 8 Remove Mach sandbox extensions for clients that are not browsers in the GPU process on iOS. The same set of extensions 9 has recently been removed from the WebContent process. We also block these in the GPU process' sandbox, so there should 10 be no change in behavior. 11 12 * GPUProcess/GPUProcess.cpp: 13 (WebKit::GPUProcess::initializeGPUProcess): 14 * GPUProcess/GPUProcessCreationParameters.cpp: 15 (WebKit::GPUProcessCreationParameters::encode const): 16 (WebKit::GPUProcessCreationParameters::decode): 17 * GPUProcess/GPUProcessCreationParameters.h: 18 * UIProcess/GPU/GPUProcessProxy.cpp: 19 (WebKit::GPUProcessProxy::GPUProcessProxy): 20 (WebKit::nonBrowserServices): Deleted. 21 1 22 2022-05-03 Per Arne Vollan <pvollan@apple.com> 2 23 -
trunk/Source/WebKit/GPUProcess/GPUProcess.cpp
r293285 r293733 254 254 SandboxExtension::consumePermanently(parameters.compilerServiceExtensionHandles); 255 255 SandboxExtension::consumePermanently(parameters.dynamicIOKitExtensionHandles); 256 SandboxExtension::consumePermanently(parameters.dynamicMachExtensionHandles);257 256 #endif 258 257 -
trunk/Source/WebKit/GPUProcess/GPUProcessCreationParameters.cpp
r290621 r293733 61 61 encoder << compilerServiceExtensionHandles; 62 62 encoder << dynamicIOKitExtensionHandles; 63 encoder << dynamicMachExtensionHandles;64 63 #endif 65 64 … … 112 111 return false; 113 112 result.dynamicIOKitExtensionHandles = WTFMove(*dynamicIOKitExtensionHandles); 114 115 std::optional<Vector<SandboxExtension::Handle>> dynamicMachExtensionHandles;116 decoder >> dynamicMachExtensionHandles;117 if (!dynamicMachExtensionHandles)118 return false;119 result.dynamicMachExtensionHandles = WTFMove(*dynamicMachExtensionHandles);120 113 #endif 121 114 -
trunk/Source/WebKit/GPUProcess/GPUProcessCreationParameters.h
r290621 r293733 61 61 Vector<SandboxExtension::Handle> compilerServiceExtensionHandles; 62 62 Vector<SandboxExtension::Handle> dynamicIOKitExtensionHandles; 63 Vector<SandboxExtension::Handle> dynamicMachExtensionHandles;64 63 #endif 65 64 -
trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp
r293562 r293733 82 82 #endif 83 83 84 #if PLATFORM(IOS_FAMILY)85 static const Vector<ASCIILiteral>& nonBrowserServices()86 {87 ASSERT(isMainRunLoop());88 static NeverDestroyed services = Vector<ASCIILiteral> {89 "com.apple.iconservices"_s,90 "com.apple.PowerManagement.control"_s,91 "com.apple.frontboard.systemappservices"_s92 };93 return services;94 }95 #endif96 97 84 static WeakPtr<GPUProcessProxy>& singleton() 98 85 { … … 174 161 parameters.dynamicIOKitExtensionHandles = SandboxExtension::createHandlesForIOKitClassExtensions(WebCore::agxCompilerClasses(), std::nullopt); 175 162 } 176 177 if (!WebCore::IOSApplication::isMobileSafari())178 parameters.dynamicMachExtensionHandles = SandboxExtension::createHandlesForMachLookup(nonBrowserServices(), std::nullopt);179 163 #endif 180 164
Note: See TracChangeset
for help on using the changeset viewer.