Unreviewed, reverting r258891.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 24 Mar 2020 01:31:38 +0000 (01:31 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 24 Mar 2020 01:31:38 +0000 (01:31 +0000)
https://bugs.webkit.org/show_bug.cgi?id=209459

Introduced layout test failures (Requested by perarne on
#webkit).

Reverted changeset:

"[Cocoa] Deny access to database mapping service"
https://bugs.webkit.org/show_bug.cgi?id=209339
https://trac.webkit.org/changeset/258891

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@258894 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/sandbox/ios/sandbox-mach-lookup-expected.txt
LayoutTests/fast/sandbox/ios/sandbox-mach-lookup.html
Source/WTF/ChangeLog
Source/WTF/wtf/PlatformUse.h
Source/WebKit/ChangeLog
Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb
Source/WebKit/Shared/WebProcessCreationParameters.cpp
Source/WebKit/Shared/WebProcessCreationParameters.h
Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm
Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm
Source/WebKit/WebProcess/com.apple.WebProcess.sb.in

index dcfdacd..c6d74a4 100644 (file)
@@ -1,3 +1,17 @@
+2020-03-23  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, reverting r258891.
+        https://bugs.webkit.org/show_bug.cgi?id=209459
+
+        Introduced layout test failures (Requested by perarne on
+        #webkit).
+
+        Reverted changeset:
+
+        "[Cocoa] Deny access to database mapping service"
+        https://bugs.webkit.org/show_bug.cgi?id=209339
+        https://trac.webkit.org/changeset/258891
+
 2020-03-23  David Kilzer  <ddkilzer@apple.com>
 
         [Win] http/tests/misc/last-modified-parsing.html always fails on Windows EWS
index 26fced6..b616564 100644 (file)
@@ -25,4 +25,3 @@ PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebConte
 PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebContent", "com.apple.mobileassetd") is false
 PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebContent", "com.apple.mobileassetd.v2") is false
 PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebContent", "com.apple.iconservices") is false
-PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebContent", "com.apple.lsd.mapdb") is false
index 566bde1..da9a910 100644 (file)
@@ -28,7 +28,6 @@ if (window.internals) {
     shouldBeFalse("internals.hasSandboxMachLookupAccessToGlobalName(\"com.apple.WebKit.WebContent\", \"com.apple.mobileassetd\")");
     shouldBeFalse("internals.hasSandboxMachLookupAccessToGlobalName(\"com.apple.WebKit.WebContent\", \"com.apple.mobileassetd.v2\")");
     shouldBeFalse("internals.hasSandboxMachLookupAccessToGlobalName(\"com.apple.WebKit.WebContent\", \"com.apple.iconservices\")");
-    shouldBeFalse("internals.hasSandboxMachLookupAccessToGlobalName(\"com.apple.WebKit.WebContent\", \"com.apple.lsd.mapdb\")");
 }
 </script>
 </head>
index 1c67fa4..680d20e 100644 (file)
@@ -1,3 +1,17 @@
+2020-03-23  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, reverting r258891.
+        https://bugs.webkit.org/show_bug.cgi?id=209459
+
+        Introduced layout test failures (Requested by perarne on
+        #webkit).
+
+        Reverted changeset:
+
+        "[Cocoa] Deny access to database mapping service"
+        https://bugs.webkit.org/show_bug.cgi?id=209339
+        https://trac.webkit.org/changeset/258891
+
 2020-03-23  Per Arne Vollan  <pvollan@apple.com>
 
         [Cocoa] Deny access to database mapping service
index 3f83f66..be5aecc 100644 (file)
 #define USE_CTFONTTRANSFORMGLYPHSWITHLANGUAGE 1
 #endif
 
-#define USE_UTTYPE_SWIZZLER 0
+#if PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 140000
+#define USE_UTTYPE_SWIZZLER 1
+#endif
index 27d1a46..28c8088 100644 (file)
@@ -1,3 +1,17 @@
+2020-03-23  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, reverting r258891.
+        https://bugs.webkit.org/show_bug.cgi?id=209459
+
+        Introduced layout test failures (Requested by perarne on
+        #webkit).
+
+        Reverted changeset:
+
+        "[Cocoa] Deny access to database mapping service"
+        https://bugs.webkit.org/show_bug.cgi?id=209339
+        https://trac.webkit.org/changeset/258891
+
 2020-03-23  Per Arne Vollan  <pvollan@apple.com>
 
         [Cocoa] Deny access to database mapping service
index bd8e8bd..ccf7292 100644 (file)
     (global-name "com.apple.cfprefsd.daemon")
 )
 
-(deny mach-lookup (with telemetry-backtrace)
+(deny mach-lookup (with telemetry)
     (global-name "com.apple.distributed_notifications@1v3"))
 
 (allow ipc-posix-shm-read*
        (ipc-posix-name-prefix "apple.cfprefs."))
  
-(deny mach-lookup (with telemetry-backtrace)
+(allow mach-lookup (with telemetry-backtrace)
     (global-name "com.apple.lsd.mapdb"))
 
 ;; <rdar://problem/12413942>
index 3358f81..393135c 100644 (file)
@@ -169,7 +169,6 @@ void WebProcessCreationParameters::encode(IPC::Encoder& encoder) const
 #if PLATFORM(COCOA)
     encoder << neHelperExtensionHandle;
     encoder << neSessionManagerExtensionHandle;
-    encoder << mapDBExtensionHandle;
     encoder << systemHasBattery;
     encoder << mimeTypesMap;
     encoder << mapUTIFromMIMEType;
@@ -457,12 +456,6 @@ bool WebProcessCreationParameters::decode(IPC::Decoder& decoder, WebProcessCreat
         return false;
     parameters.neSessionManagerExtensionHandle = WTFMove(*neSessionManagerExtensionHandle);
 
-    Optional<Optional<SandboxExtension::Handle>> mapDBExtensionHandle;
-    decoder >> mapDBExtensionHandle;
-    if (!mapDBExtensionHandle)
-        return false;
-    parameters.mapDBExtensionHandle = WTFMove(*mapDBExtensionHandle);
-
     Optional<bool> systemHasBattery;
     decoder >> systemHasBattery;
     if (!systemHasBattery)
index a02d9d0..5cde19e 100644 (file)
@@ -213,7 +213,6 @@ struct WebProcessCreationParameters {
 #if PLATFORM(COCOA)
     Optional<SandboxExtension::Handle> neHelperExtensionHandle;
     Optional<SandboxExtension::Handle> neSessionManagerExtensionHandle;
-    Optional<SandboxExtension::Handle> mapDBExtensionHandle;
     bool systemHasBattery { false };
     Optional<HashMap<String, Vector<String>, ASCIICaseInsensitiveHash>> mimeTypesMap;
     HashMap<String, String> mapUTIFromMIMEType;
index d44bb09..69c5810 100644 (file)
@@ -380,6 +380,7 @@ void WebProcessPool::platformInitializeWebProcess(const WebProcessProxy& process
     if (!WebCore::IOSApplication::isMobileSafari() || _AXSApplicationAccessibilityEnabled()) {
         static const char* services[] = {
             "com.apple.lsd.open",
+            "com.apple.lsd.mapdb",
             "com.apple.mobileassetd",
             "com.apple.iconservices",
             "com.apple.PowerManagement.control",
@@ -414,10 +415,6 @@ void WebProcessPool::platformInitializeWebProcess(const WebProcessProxy& process
     parameters.systemHasBattery = systemHasBattery();
     parameters.mimeTypesMap = commonMimeTypesMap();
     parameters.mapUTIFromMIMEType = createUTIFromMIMETypeMap();
-
-    SandboxExtension::Handle mapDBHandle;
-    SandboxExtension::createHandleForMachLookup("com.apple.lsd.mapdb", WTF::nullopt, mapDBHandle, SandboxExtension::Flags::NoReport);
-    parameters.mapDBExtensionHandle = WTFMove(mapDBHandle);
 #endif
     
 #if PLATFORM(IOS)
index 61311cd..20df9c4 100644 (file)
 #import "RunningBoardServicesSPI.h"
 #import "UserInterfaceIdiom.h"
 #import "WKAccessibilityWebPageObjectIOS.h"
-#import <MobileCoreServices/MobileCoreServices.h>
 #import <UIKit/UIAccessibility.h>
 #import <WebCore/UTTypeRecordSwizzler.h>
 #import <pal/spi/ios/GraphicsServicesSPI.h>
@@ -275,18 +274,6 @@ void WebProcess::platformInitializeWebProcess(WebProcessCreationParameters& para
     if (parameters.neSessionManagerExtensionHandle)
         SandboxExtension::consumePermanently(*parameters.neSessionManagerExtensionHandle);
     NetworkExtensionContentFilter::setHasConsumedSandboxExtensions(parameters.neHelperExtensionHandle.hasValue() && parameters.neSessionManagerExtensionHandle.hasValue());
-
-    if (parameters.mapDBExtensionHandle) {
-        auto extension = SandboxExtension::create(WTFMove(*parameters.mapDBExtensionHandle));
-        bool ok = extension->consume();
-        ASSERT_UNUSED(ok, ok);
-        // Perform API calls which will communicate with the database mapping service, and map the database.
-        auto uti = adoptCF(UTTypeCreatePreferredIdentifierForTag(kUTTagClassMIMEType, CFSTR("text/html"), 0));
-        auto mimeType = adoptCF(UTTypeCopyPreferredTagWithClass(CFSTR("public.png"), kUTTagClassMIMEType));
-        ok = extension->revoke();
-        ASSERT_UNUSED(ok, ok);
-    }
-
     setSystemHasBattery(parameters.systemHasBattery);
 
     if (parameters.mimeTypesMap)
index 0776e27..c8960dd 100644 (file)
     (global-name "com.apple.PowerManagement.control")
     (global-name "com.apple.cfprefsd.daemon")
     (global-name "com.apple.coreservices.launchservicesd")
+    (global-name "com.apple.lsd.mapdb")
     (global-name "com.apple.trustd.agent")
 )
 
             "com.apple.webinspector"
             "com.apple.cfprefsd.daemon"
             "com.apple.tccd"
-            "com.apple.lsd.mapdb"
 
             ;;; FIXME(207716): The following should be removed when the GPU process is complete
             "com.apple.audio.AudioComponentRegistrar" "com.apple.coremedia.endpoint.xpc" "com.apple.coremedia.endpointstream.xpc"