Title: [287616] trunk/Source/WebKit
Revision
287616
Author
[email protected]
Date
2022-01-05 10:10:55 -0800 (Wed, 05 Jan 2022)

Log Message

[macCatalyst][GPUP][NetworkProcess] Block WindowServer connections
https://bugs.webkit.org/show_bug.cgi?id=234432
<rdar://problem/85990387>

Reviewed by Brent Fulgham.

Block WindowServer connections on macCatalyst.

* GPUProcess/mac/GPUProcessMac.mm:
(WebKit::GPUProcess::initializeProcess):
* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::initializeProcess):
* Shared/Cocoa/AuxiliaryProcessCocoa.mm:
(WebKit::AuxiliaryProcess::setApplicationIsDaemon):
* WebAuthnProcess/mac/WebAuthnProcessMac.mm:
(WebKit::WebAuthnProcess::initializeProcess):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (287615 => 287616)


--- trunk/Source/WebKit/ChangeLog	2022-01-05 15:48:08 UTC (rev 287615)
+++ trunk/Source/WebKit/ChangeLog	2022-01-05 18:10:55 UTC (rev 287616)
@@ -1,5 +1,24 @@
 2022-01-05  Per Arne Vollan  <[email protected]>
 
+        [macCatalyst][GPUP][NetworkProcess] Block WindowServer connections
+        https://bugs.webkit.org/show_bug.cgi?id=234432
+        <rdar://problem/85990387>
+
+        Reviewed by Brent Fulgham.
+
+        Block WindowServer connections on macCatalyst.
+
+        * GPUProcess/mac/GPUProcessMac.mm:
+        (WebKit::GPUProcess::initializeProcess):
+        * NetworkProcess/mac/NetworkProcessMac.mm:
+        (WebKit::NetworkProcess::initializeProcess):
+        * Shared/Cocoa/AuxiliaryProcessCocoa.mm:
+        (WebKit::AuxiliaryProcess::setApplicationIsDaemon):
+        * WebAuthnProcess/mac/WebAuthnProcessMac.mm:
+        (WebKit::WebAuthnProcess::initializeProcess):
+
+2022-01-05  Per Arne Vollan  <[email protected]>
+
         [macOS][WP] Block sandbox access to syscall
         https://bugs.webkit.org/show_bug.cgi?id=234846
         <rdar://problem/87093120>

Modified: trunk/Source/WebKit/GPUProcess/mac/GPUProcessMac.mm (287615 => 287616)


--- trunk/Source/WebKit/GPUProcess/mac/GPUProcessMac.mm	2022-01-05 15:48:08 UTC (rev 287615)
+++ trunk/Source/WebKit/GPUProcess/mac/GPUProcessMac.mm	2022-01-05 18:10:55 UTC (rev 287616)
@@ -35,7 +35,6 @@
 #import <WebCore/PlatformScreen.h>
 #import <WebCore/ScreenProperties.h>
 #import <pal/spi/cocoa/LaunchServicesSPI.h>
-#import <pal/spi/mac/HIServicesSPI.h>
 #import <sysexits.h>
 #import <wtf/MemoryPressureHandler.h>
 #import <wtf/ProcessPrivilege.h>
@@ -46,11 +45,7 @@
 
 void GPUProcess::initializeProcess(const AuxiliaryProcessInitializationParameters&)
 {
-#if PLATFORM(MAC) && !PLATFORM(MACCATALYST)
-    // Having a window server connection in this process would result in spin logs (<rdar://problem/13239119>).
-    OSStatus error = SetApplicationIsDaemon(true);
-    ASSERT_UNUSED(error, error == noErr);
-#endif
+    setApplicationIsDaemon();
 
 #if ENABLE(LOWER_FORMATREADERBUNDLE_CODESIGNING_REQUIREMENTS)
     // For testing in engineering builds, allow CoreMedia to load the MediaFormatReader bundle no matter its code signature.

Modified: trunk/Source/WebKit/NetworkProcess/mac/NetworkProcessMac.mm (287615 => 287616)


--- trunk/Source/WebKit/NetworkProcess/mac/NetworkProcessMac.mm	2022-01-05 15:48:08 UTC (rev 287615)
+++ trunk/Source/WebKit/NetworkProcess/mac/NetworkProcessMac.mm	2022-01-05 18:10:55 UTC (rev 287616)
@@ -51,12 +51,7 @@
 
 void NetworkProcess::initializeProcess(const AuxiliaryProcessInitializationParameters&)
 {
-#if PLATFORM(MAC) && !PLATFORM(MACCATALYST)
-    // Having a window server connection in this process would result in spin logs (<rdar://problem/13239119>).
-    OSStatus error = SetApplicationIsDaemon(true);
-    ASSERT_UNUSED(error, error == noErr);
-#endif
-
+    setApplicationIsDaemon();
     launchServicesCheckIn();
 }
 

Modified: trunk/Source/WebKit/Shared/Cocoa/AuxiliaryProcessCocoa.mm (287615 => 287616)


--- trunk/Source/WebKit/Shared/Cocoa/AuxiliaryProcessCocoa.mm	2022-01-05 15:48:08 UTC (rev 287615)
+++ trunk/Source/WebKit/Shared/Cocoa/AuxiliaryProcessCocoa.mm	2022-01-05 18:10:55 UTC (rev 287616)
@@ -41,6 +41,10 @@
 #import <pal/spi/cocoa/AccessibilitySupportSPI.h>
 #endif
 
+#if PLATFORM(MAC)
+#import <pal/spi/mac/HIServicesSPI.h>
+#endif
+
 #if HAVE(UPDATE_WEB_ACCESSIBILITY_SETTINGS) && ENABLE(CFPREFS_DIRECT_MODE)
 SOFT_LINK_LIBRARY(libAccessibility)
 SOFT_LINK_OPTIONAL(libAccessibility, _AXSUpdateWebAccessibilitySettings, void, (), ());
@@ -213,4 +217,15 @@
 
 #endif // ENABLE(CFPREFS_DIRECT_MODE)
 
+void AuxiliaryProcess::setApplicationIsDaemon()
+{
+#if PLATFORM(MAC)
+    // Having a window server connection in this process would result in spin logs (<rdar://problem/13239119>).
+    OSStatus error = SetApplicationIsDaemon(true);
+    ASSERT_UNUSED(error, error == noErr);
+#elif PLATFORM(MACCATALYST)
+    CGSSetDenyWindowServerConnections(true);
+#endif
+}
+
 } // namespace WebKit

Modified: trunk/Source/WebKit/WebAuthnProcess/mac/WebAuthnProcessMac.mm (287615 => 287616)


--- trunk/Source/WebKit/WebAuthnProcess/mac/WebAuthnProcessMac.mm	2022-01-05 15:48:08 UTC (rev 287615)
+++ trunk/Source/WebKit/WebAuthnProcess/mac/WebAuthnProcessMac.mm	2022-01-05 18:10:55 UTC (rev 287616)
@@ -44,10 +44,7 @@
 
 void WebAuthnProcess::initializeProcess(const AuxiliaryProcessInitializationParameters&)
 {
-    // Having a window server connection in this process would result in spin logs (<rdar://problem/13239119>).
-    OSStatus error = SetApplicationIsDaemon(true);
-    ASSERT_UNUSED(error, error == noErr);
-
+    setApplicationIsDaemon();
     launchServicesCheckIn();
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to