Changeset 286865 in webkit
- Timestamp:
- Dec 10, 2021, 11:34:01 AM (5 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 7 edited
-
ChangeLog (modified) (1 diff)
-
Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (modified) (2 diffs)
-
Shared/WebProcessCreationParameters.cpp (modified) (2 diffs)
-
Shared/WebProcessCreationParameters.h (modified) (1 diff)
-
UIProcess/Cocoa/WebProcessPoolCocoa.mm (modified) (2 diffs)
-
WebProcess/cocoa/WebProcessCocoa.mm (modified) (1 diff)
-
WebProcess/com.apple.WebProcess.sb.in (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r286864 r286865 1 2021-12-10 Per Arne Vollan <pvollan@apple.com> 2 3 [WP] Block access to container manager service for Mail 4 https://bugs.webkit.org/show_bug.cgi?id=234080 5 <rdar://problem/86269784> 6 7 Reviewed by Brent Fulgham. 8 9 Local testing is not showing access to this daemon when running Mail. 10 11 * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: 12 * Shared/WebProcessCreationParameters.cpp: 13 (WebKit::WebProcessCreationParameters::encode const): 14 (WebKit::WebProcessCreationParameters::decode): 15 * Shared/WebProcessCreationParameters.h: 16 * UIProcess/Cocoa/WebProcessPoolCocoa.mm: 17 (WebKit::WebProcessPool::platformInitializeWebProcess): 18 * WebProcess/cocoa/WebProcessCocoa.mm: 19 (WebKit::WebProcess::platformInitializeWebProcess): 20 * WebProcess/com.apple.WebProcess.sb.in: 21 1 22 2021-12-10 Said Abou-Hallawa <said@apple.com> 2 23 -
trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in
r286852 r286865 645 645 (iokit-property "IORegistryEntryPropertyKeys")) 646 646 647 (allow ipc-posix-sem-open 647 (allow ipc-posix-sem-open (with telemetry) 648 648 (ipc-posix-name "containermanagerd.fb_check")) 649 649 … … 1085 1085 "com.apple.cfprefsd.agent" 1086 1086 "com.apple.cfprefsd.daemon" 1087 "com.apple.containermanagerd"1088 1087 "com.apple.iphone.axserver-systemwide" 1089 1088 "com.apple.mobileassetd.v2" -
trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp
r286590 r286865 163 163 #endif 164 164 165 encoder << containerManagerExtensionHandle;166 165 encoder << mobileGestaltExtensionHandle; 167 166 encoder << launchServicesExtensionHandle; … … 458 457 #endif 459 458 460 std::optional<std::optional<SandboxExtension::Handle>> containerManagerExtensionHandle;461 decoder >> containerManagerExtensionHandle;462 if (!containerManagerExtensionHandle)463 return false;464 parameters.containerManagerExtensionHandle = WTFMove(*containerManagerExtensionHandle);465 466 459 std::optional<std::optional<SandboxExtension::Handle>> mobileGestaltExtensionHandle; 467 460 decoder >> mobileGestaltExtensionHandle; -
trunk/Source/WebKit/Shared/WebProcessCreationParameters.h
r286590 r286865 202 202 #endif 203 203 204 std::optional<SandboxExtension::Handle> containerManagerExtensionHandle;205 204 std::optional<SandboxExtension::Handle> mobileGestaltExtensionHandle; 206 205 std::optional<SandboxExtension::Handle> launchServicesExtensionHandle; -
trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm
r286661 r286865 292 292 } 293 293 294 static bool requiresContainerManagerAccess()295 {296 #if PLATFORM(MAC)297 return WebCore::MacApplication::isAppleMail();298 #elif PLATFORM(IOS)299 return WebCore::IOSApplication::isMobileMail();300 #else301 return false;302 #endif303 }304 305 294 void WebProcessPool::platformInitializeWebProcess(const WebProcessProxy& process, WebProcessCreationParameters& parameters) 306 295 { … … 427 416 parameters.systemHasBattery = systemHasBattery(); 428 417 parameters.systemHasAC = cachedSystemHasAC().value_or(true); 429 430 if (requiresContainerManagerAccess()) {431 if (auto handle = SandboxExtension::createHandleForMachLookup("com.apple.containermanagerd"_s, std::nullopt))432 parameters.containerManagerExtensionHandle = WTFMove(*handle);433 }434 418 435 419 #if PLATFORM(IOS_FAMILY) -
trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm
r286838 r286865 410 410 #endif 411 411 412 if (parameters.containerManagerExtensionHandle)413 SandboxExtension::consumePermanently(*parameters.containerManagerExtensionHandle);414 415 412 #if PLATFORM(IOS_FAMILY) 416 413 SandboxExtension::consumePermanently(parameters.dynamicIOKitExtensionHandles); -
trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in
r286859 r286865 1763 1763 "com.apple.cfprefsd.agent" 1764 1764 "com.apple.cfprefsd.daemon" 1765 "com.apple.containermanagerd"1766 1765 "com.apple.coreservices.launchservicesd" 1767 1766 "com.apple.iconservices"
Note:
See TracChangeset
for help on using the changeset viewer.