Title: [253595] trunk/Source/WebKit
- Revision
- 253595
- Author
- pvol...@apple.com
- Date
- 2019-12-16 16:02:50 -0800 (Mon, 16 Dec 2019)
Log Message
[iOS] Issue mach lookup extension to diagnostics daemon
https://bugs.webkit.org/show_bug.cgi?id=205292
Reviewed by Brent Fulgham.
For internal installs, issue a mach lookup extension to the diagnostics daemon.
* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::isInternalInstall):
(WebKit::WebProcessPool::platformInitializeWebProcess):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (253594 => 253595)
--- trunk/Source/WebKit/ChangeLog 2019-12-17 00:02:04 UTC (rev 253594)
+++ trunk/Source/WebKit/ChangeLog 2019-12-17 00:02:50 UTC (rev 253595)
@@ -1,3 +1,23 @@
+2019-12-16 Per Arne Vollan <pvol...@apple.com>
+
+ [iOS] Issue mach lookup extension to diagnostics daemon
+ https://bugs.webkit.org/show_bug.cgi?id=205292
+
+ Reviewed by Brent Fulgham.
+
+ For internal installs, issue a mach lookup extension to the diagnostics daemon.
+
+ * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::encode const):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+ (WebKit::isInternalInstall):
+ (WebKit::WebProcessPool::platformInitializeWebProcess):
+ * WebProcess/cocoa/WebProcessCocoa.mm:
+ (WebKit::WebProcess::platformInitializeWebProcess):
+
2019-12-16 Daniel Bates <daba...@apple.com>
Reproducible case of backwards nextParagraph returning a position ahead of the input position
Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb (253594 => 253595)
--- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb 2019-12-17 00:02:04 UTC (rev 253594)
+++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb 2019-12-17 00:02:50 UTC (rev 253595)
@@ -968,7 +968,7 @@
(allow mach-lookup
(require-all
(extension "com.apple.webkit.extension.mach")
- (global-name "com.apple.iphone.axserver-systemwide" "com.apple.tccd" "com.apple.nehelper" "com.apple.nesessionmanager.content-filter" "com.apple.uikit.viewservice.com.apple.WebContentFilter.remoteUI")))
+ (global-name "com.apple.iphone.axserver-systemwide" "com.apple.tccd" "com.apple.nehelper" "com.apple.nesessionmanager.content-filter" "com.apple.uikit.viewservice.com.apple.WebContentFilter.remoteUI" "com.apple.diagnosticd")))
(allow mach-lookup
(require-all
Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp (253594 => 253595)
--- trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2019-12-17 00:02:04 UTC (rev 253594)
+++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2019-12-17 00:02:50 UTC (rev 253595)
@@ -163,6 +163,7 @@
#if PLATFORM(IOS)
encoder << compilerServiceExtensionHandle;
encoder << contentFilterExtensionHandle;
+ encoder << diagnosticsExtensionHandle;
#endif
#if PLATFORM(COCOA)
@@ -417,6 +418,12 @@
if (!contentFilterExtensionHandle)
return false;
parameters.contentFilterExtensionHandle = WTFMove(*contentFilterExtensionHandle);
+
+ Optional<Optional<SandboxExtension::Handle>> diagnosticsExtensionHandle;
+ decoder >> diagnosticsExtensionHandle;
+ if (!diagnosticsExtensionHandle)
+ return false;
+ parameters.diagnosticsExtensionHandle = WTFMove(*diagnosticsExtensionHandle);
#endif
#if PLATFORM(COCOA)
Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.h (253594 => 253595)
--- trunk/Source/WebKit/Shared/WebProcessCreationParameters.h 2019-12-17 00:02:04 UTC (rev 253594)
+++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.h 2019-12-17 00:02:50 UTC (rev 253595)
@@ -205,6 +205,7 @@
#if PLATFORM(IOS)
Optional<SandboxExtension::Handle> compilerServiceExtensionHandle;
Optional<SandboxExtension::Handle> contentFilterExtensionHandle;
+ Optional<SandboxExtension::Handle> diagnosticsExtensionHandle;
#endif
#if PLATFORM(COCOA)
Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm (253594 => 253595)
--- trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2019-12-17 00:02:04 UTC (rev 253594)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2019-12-17 00:02:50 UTC (rev 253595)
@@ -70,6 +70,7 @@
#if PLATFORM(IOS)
#import <pal/spi/cocoa/WebFilterEvaluatorSPI.h>
+#import <pal/spi/ios/MobileGestaltSPI.h>
#import <sys/utsname.h>
SOFT_LINK_PRIVATE_FRAMEWORK(WebContentAnalysis);
@@ -199,6 +200,12 @@
});
return deviceHasAGXCompilerService;
}
+
+static bool isInternalInstall()
+{
+ static bool isInternal = MGGetBoolAnswer(kMGQAppleInternalInstallCapability);
+ return isInternal;
+}
#endif
void WebProcessPool::platformInitializeWebProcess(const WebProcessProxy& process, WebProcessCreationParameters& parameters)
@@ -305,6 +312,12 @@
SandboxExtension::createHandleForMachLookup("com.apple.AGXCompilerService", WTF::nullopt, compilerServiceExtensionHandle);
parameters.compilerServiceExtensionHandle = WTFMove(compilerServiceExtensionHandle);
}
+
+ if (isInternalInstall()) {
+ SandboxExtension::Handle diagnosticsExtensionHandle;
+ SandboxExtension::createHandleForMachLookup("com.apple.diagnosticd", WTF::nullopt, diagnosticsExtensionHandle);
+ parameters.diagnosticsExtensionHandle = WTFMove(diagnosticsExtensionHandle);
+ }
#endif
#if PLATFORM(COCOA)
Modified: trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm (253594 => 253595)
--- trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm 2019-12-17 00:02:04 UTC (rev 253594)
+++ trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm 2019-12-17 00:02:50 UTC (rev 253595)
@@ -231,6 +231,9 @@
if (parameters.compilerServiceExtensionHandle)
SandboxExtension::consumePermanently(*parameters.compilerServiceExtensionHandle);
+ if (parameters.diagnosticsExtensionHandle)
+ SandboxExtension::consumePermanently(*parameters.diagnosticsExtensionHandle);
+
if (parameters.contentFilterExtensionHandle)
SandboxExtension::consumePermanently(*parameters.contentFilterExtensionHandle);
ParentalControlsContentFilter::setHasConsumedSandboxExtension(parameters.contentFilterExtensionHandle.hasValue());
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes