Title: [167946] trunk/Source/WebKit2
Revision
167946
Author
a...@apple.com
Date
2014-04-29 10:54:21 -0700 (Tue, 29 Apr 2014)

Log Message

[WK2] DatabaseProcess should be sandboxed
https://bugs.webkit.org/show_bug.cgi?id=132324
<rdar://problem/15961708>

Reviewed by Darin Adler.

* Configurations/WebKit2.xcconfig: Added the profile to the list of files skipped
on iOS.

* DatabaseProcess/DatabaseProcess.cpp: (WebKit::DatabaseProcess::initializeDatabaseProcess):
Consume a sandbox extension for IndexedDB directory (which we get with initialization
message after entering sandbox).

* DatabaseProcess/ios: Added.
* DatabaseProcess/ios/DatabaseProcessIOS.mm: Copied from Source/WebKit2/DatabaseProcess/mac/DatabaseProcessMac.mm.
Separated from Mac version to match how other processes are implemented.

* DatabaseProcess/mac/DatabaseProcessMac.mm: (WebKit::DatabaseProcess::initializeProcessName):
Removed ifdefs.

* DatabaseProcess/mac/com.apple.WebKit.Databases.sb.in: Added.

* DerivedSources.make: Generate the profile from .sb.in.

* Shared/Databases/DatabaseProcessCreationParameters.cpp:
(WebKit::DatabaseProcessCreationParameters::encode):
(WebKit::DatabaseProcessCreationParameters::decode):
* Shared/Databases/DatabaseProcessCreationParameters.h:
Added a sandbox extension for indexedDatabaseDirectory.

* Shared/SecurityOriginData.h: Added an unrelated FIXME.

* UIProcess/WebContext.cpp: (WebKit::WebContext::ensureDatabaseProcess): Create
a sandbox extension for indexedDatabaseDirectory.

* WebKit2.xcodeproj/project.pbxproj: Added new files.

Modified Paths

Added Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (167945 => 167946)


--- trunk/Source/WebKit2/ChangeLog	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/ChangeLog	2014-04-29 17:54:21 UTC (rev 167946)
@@ -1,3 +1,42 @@
+2014-04-29  Alexey Proskuryakov  <a...@apple.com>
+
+        [WK2] DatabaseProcess should be sandboxed
+        https://bugs.webkit.org/show_bug.cgi?id=132324
+        <rdar://problem/15961708>
+
+        Reviewed by Darin Adler.
+
+        * Configurations/WebKit2.xcconfig: Added the profile to the list of files skipped
+        on iOS.
+
+        * DatabaseProcess/DatabaseProcess.cpp: (WebKit::DatabaseProcess::initializeDatabaseProcess):
+        Consume a sandbox extension for IndexedDB directory (which we get with initialization
+        message after entering sandbox).
+
+        * DatabaseProcess/ios: Added.
+        * DatabaseProcess/ios/DatabaseProcessIOS.mm: Copied from Source/WebKit2/DatabaseProcess/mac/DatabaseProcessMac.mm.
+        Separated from Mac version to match how other processes are implemented.
+
+        * DatabaseProcess/mac/DatabaseProcessMac.mm: (WebKit::DatabaseProcess::initializeProcessName):
+        Removed ifdefs.
+
+        * DatabaseProcess/mac/com.apple.WebKit.Databases.sb.in: Added.
+
+        * DerivedSources.make: Generate the profile from .sb.in.
+
+        * Shared/Databases/DatabaseProcessCreationParameters.cpp:
+        (WebKit::DatabaseProcessCreationParameters::encode):
+        (WebKit::DatabaseProcessCreationParameters::decode):
+        * Shared/Databases/DatabaseProcessCreationParameters.h:
+        Added a sandbox extension for indexedDatabaseDirectory.
+
+        * Shared/SecurityOriginData.h: Added an unrelated FIXME.
+
+        * UIProcess/WebContext.cpp: (WebKit::WebContext::ensureDatabaseProcess): Create
+        a sandbox extension for indexedDatabaseDirectory.
+
+        * WebKit2.xcodeproj/project.pbxproj: Added new files.
+
 2014-04-28  Andy Estes  <aes...@apple.com>
 
         [iOS] Introduce -didNotHandleTapAsClickAtPoint: to WKUIDelegatePrivate

Modified: trunk/Source/WebKit2/Configurations/WebKit2.xcconfig (167945 => 167946)


--- trunk/Source/WebKit2/Configurations/WebKit2.xcconfig	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/Configurations/WebKit2.xcconfig	2014-04-29 17:54:21 UTC (rev 167946)
@@ -43,7 +43,7 @@
 OTHER_LDFLAGS_macosx = $(ASAN_OTHER_LDFLAGS) $(FRAMEWORK_AND_LIBRARY_LDFLAGS);
 
 EXCLUDED_SOURCE_FILE_NAMES = $(EXCLUDED_SOURCE_FILE_NAMES_$(PLATFORM_NAME));
-EXCLUDED_SOURCE_FILE_NAMES_iphoneos = *.pdf com.apple.WebKit.NetworkProcess.sb com.apple.WebProcess.sb PlugInSandboxProfiles/*.sb;
+EXCLUDED_SOURCE_FILE_NAMES_iphoneos = *.pdf com.apple.WebKit.DatabaseProcess.sb com.apple.WebKit.NetworkProcess.sb com.apple.WebProcess.sb PlugInSandboxProfiles/*.sb;
 EXCLUDED_SOURCE_FILE_NAMES_iphonesimulator = $(EXCLUDED_SOURCE_FILE_NAMES_iphoneos);
 
 INSTALLHDRS_SCRIPT_PHASE = YES;

Modified: trunk/Source/WebKit2/DatabaseProcess/DatabaseProcess.cpp (167945 => 167946)


--- trunk/Source/WebKit2/DatabaseProcess/DatabaseProcess.cpp	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/DatabaseProcess/DatabaseProcess.cpp	2014-04-29 17:54:21 UTC (rev 167946)
@@ -98,6 +98,7 @@
 void DatabaseProcess::initializeDatabaseProcess(const DatabaseProcessCreationParameters& parameters)
 {
     m_indexedDatabaseDirectory = parameters.indexedDatabaseDirectory;
+    SandboxExtension::consumePermanently(parameters.indexedDatabaseDirectoryExtensionHandle);
 
     ensureIndexedDatabaseRelativePathExists(StringImpl::empty());
 }

Copied: trunk/Source/WebKit2/DatabaseProcess/ios/DatabaseProcessIOS.mm (from rev 167945, trunk/Source/WebKit2/DatabaseProcess/mac/DatabaseProcessMac.mm) (0 => 167946)


--- trunk/Source/WebKit2/DatabaseProcess/ios/DatabaseProcessIOS.mm	                        (rev 0)
+++ trunk/Source/WebKit2/DatabaseProcess/ios/DatabaseProcessIOS.mm	2014-04-29 17:54:21 UTC (rev 167946)
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2014 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#import "config.h"
+
+#if PLATFORM(IOS) && ENABLE(DATABASE_PROCESS)
+
+#import "DatabaseProcess.h"
+
+#import "SandboxInitializationParameters.h"
+#import <WebCore/LocalizedStrings.h>
+#import <WebKitSystemInterface.h>
+
+using namespace WebCore;
+
+namespace WebKit {
+
+void DatabaseProcess::initializeProcess(const ChildProcessInitializationParameters&)
+{
+}
+
+void DatabaseProcess::initializeProcessName(const ChildProcessInitializationParameters& parameters)
+{
+}
+
+void DatabaseProcess::initializeSandbox(const ChildProcessInitializationParameters& parameters, SandboxInitializationParameters& sandboxParameters)
+{
+    notImplemented();
+}
+
+} // namespace WebKit
+
+#endif // PLATFORM(IOS) && ENABLE(DATABASE_PROCESS)

Modified: trunk/Source/WebKit2/DatabaseProcess/mac/DatabaseProcessMac.mm (167945 => 167946)


--- trunk/Source/WebKit2/DatabaseProcess/mac/DatabaseProcessMac.mm	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/DatabaseProcess/mac/DatabaseProcessMac.mm	2014-04-29 17:54:21 UTC (rev 167946)
@@ -24,14 +24,16 @@
  */
 
 #import "config.h"
+
+#if PLATFORM(MAC) && ENABLE(DATABASE_PROCESS)
+
 #import "DatabaseProcess.h"
 
 #import "SandboxInitializationParameters.h"
+#import <WebCore/FileSystem.h>
 #import <WebCore/LocalizedStrings.h>
 #import <WebKitSystemInterface.h>
 
-#if ENABLE(DATABASE_PROCESS)
-
 using namespace WebCore;
 
 namespace WebKit {
@@ -44,10 +46,8 @@
 
 void DatabaseProcess::initializeProcessName(const ChildProcessInitializationParameters& parameters)
 {
-#if !PLATFORM(IOS)
     NSString *applicationName = [NSString stringWithFormat:WEB_UI_STRING("%@ Database Storage", "visible name of the database process. The argument is the application name."), (NSString *)parameters.uiProcessName];
     WKSetVisibleApplicationName((CFStringRef)applicationName);
-#endif
 }
 
 void DatabaseProcess::initializeSandbox(const ChildProcessInitializationParameters& parameters, SandboxInitializationParameters& sandboxParameters)
@@ -61,4 +61,4 @@
 
 } // namespace WebKit
 
-#endif // ENABLE(DATABASE_PROCESS)
+#endif // PLATFORM(MAC) && ENABLE(DATABASE_PROCESS)

Added: trunk/Source/WebKit2/DatabaseProcess/mac/com.apple.WebKit.Databases.sb.in (0 => 167946)


--- trunk/Source/WebKit2/DatabaseProcess/mac/com.apple.WebKit.Databases.sb.in	                        (rev 0)
+++ trunk/Source/WebKit2/DatabaseProcess/mac/com.apple.WebKit.Databases.sb.in	2014-04-29 17:54:21 UTC (rev 167946)
@@ -0,0 +1,81 @@
+; Copyright (C) 2014 Apple Inc. All rights reserved.
+;
+; Redistribution and use in source and binary forms, with or without
+; modification, are permitted provided that the following conditions
+; are met:
+; 1. Redistributions of source code must retain the above copyright
+;    notice, this list of conditions and the following disclaimer.
+; 2. Redistributions in binary form must reproduce the above copyright
+;    notice, this list of conditions and the following disclaimer in the
+;    documentation and/or other materials provided with the distribution.
+;
+; THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+; THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+; PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+; BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+; THE POSSIBILITY OF SUCH DAMAGE.
+
+(version 1)
+(deny default (with partial-symbolication))
+(allow system-audit file-read-metadata)
+
+(import "system.sb")
+
+;; Utility functions for home directory relative path filters
+(define (home-regex home-relative-regex)
+  (regex (string-append "^" (regex-quote (param "HOME_DIR")) home-relative-regex)))
+
+(define (home-subpath home-relative-subpath)
+    (subpath (string-append (param "HOME_DIR") home-relative-subpath)))
+
+(define (home-literal home-relative-literal)
+    (literal (string-append (param "HOME_DIR") home-relative-literal)))
+
+;; Read-only preferences and data
+(allow file-read*
+    ;; Basic system paths
+    (subpath "/Library/Frameworks")
+    (subpath "/Library/Managed Preferences")
+
+    ;; System and user preferences
+    (literal "/Library/Preferences/.GlobalPreferences.plist")
+    (home-literal "/Library/Preferences/.GlobalPreferences.plist")
+    (home-regex #"/Library/Preferences/ByHost/\.GlobalPreferences\.")
+
+    ;; On-disk WebKit2 framework location, to account for debug installations
+    ;; outside of /System/Library/Frameworks
+    (subpath (param "WEBKIT2_FRAMEWORK_DIR")))
+
+;; Sandbox extensions
+(define (apply-read-and-issue-extension op path-filter)
+    (op file-read* path-filter)
+    (op file-issue-extension (require-all (extension-class "com.apple.app-sandbox.read") path-filter)))
+(define (apply-write-and-issue-extension op path-filter)
+    (op file-write* path-filter)
+    (op file-issue-extension (require-all (extension-class "com.apple.app-sandbox.read-write") path-filter)))
+(define (read-only-and-issue-extensions path-filter)
+    (apply-read-and-issue-extension allow path-filter))
+(define (read-write-and-issue-extensions path-filter)
+    (apply-read-and-issue-extension allow path-filter)
+    (apply-write-and-issue-extension allow path-filter))
+(read-only-and-issue-extensions (extension "com.apple.app-sandbox.read"))
+(read-write-and-issue-extensions (extension "com.apple.app-sandbox.read-write"))
+
+(if (defined? 'vnode-type)
+    (deny file-write-create (vnode-type SYMLINK)))
+
+;; FIXME: Should be removed once <rdar://problem/16329087> is fixed.
+(deny file-write-xattr (xattr "com.apple.quarantine") (with no-log))
+
+;; Reserve a namespace for additional protected extended attributes.
+#if __MAC_OS_X_VERSION_MIN_REQUIRED > 1090
+(deny file-read-xattr file-write-xattr (xattr-regex #"^com\.apple\.security\.private\."))
+#else
+(deny file-read-xattr file-write-xattr (xattr #"^com\.apple\.security\.private\."))
+#endif

Modified: trunk/Source/WebKit2/DerivedSources.make (167945 => 167946)


--- trunk/Source/WebKit2/DerivedSources.make	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/DerivedSources.make	2014-04-29 17:54:21 UTC (rev 167946)
@@ -24,6 +24,7 @@
     $(WebKit2) \
     $(WebKit2)/DatabaseProcess \
     $(WebKit2)/DatabaseProcess/IndexedDB \
+    $(WebKit2)/DatabaseProcess/mac \
     $(WebKit2)/NetworkProcess \
     $(WebKit2)/NetworkProcess/mac \
     $(WebKit2)/PluginProcess \
@@ -179,6 +180,7 @@
 
 SANDBOX_PROFILES = \
 	com.apple.WebProcess.sb \
+	com.apple.WebKit.Databases.sb \
 	com.apple.WebKit.NetworkProcess.sb
 
 all: $(SANDBOX_PROFILES)

Modified: trunk/Source/WebKit2/Shared/Databases/DatabaseProcessCreationParameters.cpp (167945 => 167946)


--- trunk/Source/WebKit2/Shared/Databases/DatabaseProcessCreationParameters.cpp	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/Shared/Databases/DatabaseProcessCreationParameters.cpp	2014-04-29 17:54:21 UTC (rev 167946)
@@ -39,12 +39,15 @@
 void DatabaseProcessCreationParameters::encode(IPC::ArgumentEncoder& encoder) const
 {
     encoder << indexedDatabaseDirectory;
+    encoder << indexedDatabaseDirectoryExtensionHandle;
 }
 
 bool DatabaseProcessCreationParameters::decode(IPC::ArgumentDecoder& decoder, DatabaseProcessCreationParameters& result)
 {
     if (!decoder.decode(result.indexedDatabaseDirectory))
         return false;
+    if (!decoder.decode(result.indexedDatabaseDirectoryExtensionHandle))
+        return false;
 
     return true;
 }

Modified: trunk/Source/WebKit2/Shared/Databases/DatabaseProcessCreationParameters.h (167945 => 167946)


--- trunk/Source/WebKit2/Shared/Databases/DatabaseProcessCreationParameters.h	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/Shared/Databases/DatabaseProcessCreationParameters.h	2014-04-29 17:54:21 UTC (rev 167946)
@@ -27,6 +27,7 @@
 #ifndef DatabaseProcessCreationParameters_h
 #define DatabaseProcessCreationParameters_h
 
+#include "SandboxExtension.h"
 #include <wtf/text/WTFString.h>
 
 #if ENABLE(INDEXED_DATABASE) && ENABLE(DATABASE_PROCESS)
@@ -45,6 +46,7 @@
     static bool decode(IPC::ArgumentDecoder&, DatabaseProcessCreationParameters&);
 
     String indexedDatabaseDirectory;
+    SandboxExtension::Handle indexedDatabaseDirectoryExtensionHandle;
 };
 
 } // namespace WebKit

Modified: trunk/Source/WebKit2/Shared/SecurityOriginData.h (167945 => 167946)


--- trunk/Source/WebKit2/Shared/SecurityOriginData.h	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/Shared/SecurityOriginData.h	2014-04-29 17:54:21 UTC (rev 167946)
@@ -27,7 +27,7 @@
 #define SecurityOriginData_h
 
 #include "APIObject.h"
-#include "GenericCallback.h"
+#include "GenericCallback.h" // FIXME: This is a UIProcess file, and may not be included from Shared directory files.
 #include <wtf/text/WTFString.h>
 
 namespace IPC {

Modified: trunk/Source/WebKit2/UIProcess/WebContext.cpp (167945 => 167946)


--- trunk/Source/WebKit2/UIProcess/WebContext.cpp	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/UIProcess/WebContext.cpp	2014-04-29 17:54:21 UTC (rev 167946)
@@ -443,6 +443,7 @@
     // We should fix this, and move WebSQL into a subdirectory (https://bugs.webkit.org/show_bug.cgi?id=124807)
     // In the meantime, an entity name prefixed with three underscores will not conflict with any WebSQL entities.
     parameters.indexedDatabaseDirectory = pathByAppendingComponent(databaseDirectory(), "___IndexedDB");
+    SandboxExtension::createHandleForReadWriteDirectory(parameters.indexedDatabaseDirectory, parameters.indexedDatabaseDirectoryExtensionHandle);
 
     m_databaseProcess->send(Messages::DatabaseProcess::InitializeDatabaseProcess(parameters), 0);
 }

Modified: trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj (167945 => 167946)


--- trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj	2014-04-29 17:45:24 UTC (rev 167945)
+++ trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj	2014-04-29 17:54:21 UTC (rev 167946)
@@ -1507,6 +1507,8 @@
 		D3B9484911FF4B6500032B39 /* WebSearchPopupMenu.h in Headers */ = {isa = PBXBuildFile; fileRef = D3B9484511FF4B6500032B39 /* WebSearchPopupMenu.h */; };
 		DF58C6361371ACA000F9A37C /* NativeWebWheelEventMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = DF58C6351371ACA000F9A37C /* NativeWebWheelEventMac.mm */; };
 		E105FE5418D7B9DE008F57A8 /* EditingRange.h in Headers */ = {isa = PBXBuildFile; fileRef = E105FE5318D7B9DE008F57A8 /* EditingRange.h */; };
+		E115C714190F89E400ECC516 /* DatabaseProcessIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1FEF39C190F791C00731658 /* DatabaseProcessIOS.mm */; };
+		E115C716190F8A2500ECC516 /* com.apple.WebKit.Databases.sb in Resources */ = {isa = PBXBuildFile; fileRef = E115C715190F8A2500ECC516 /* com.apple.WebKit.Databases.sb */; };
 		E11D35AE16B63D1B006D23D7 /* com.apple.WebProcess.sb in Resources */ = {isa = PBXBuildFile; fileRef = E1967E37150AB5E200C73169 /* com.apple.WebProcess.sb */; };
 		E133FD8A1423DD7F00FC7BFB /* WebKit.icns in Resources */ = {isa = PBXBuildFile; fileRef = E133FD891423DD7F00FC7BFB /* WebKit.icns */; };
 		E13833EC189C33C8001E2350 /* LocalStorageDetails.h in Headers */ = {isa = PBXBuildFile; fileRef = E13833EB189C33C8001E2350 /* LocalStorageDetails.h */; };
@@ -3422,6 +3424,7 @@
 		DF58C6311371AC5800F9A37C /* NativeWebWheelEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NativeWebWheelEvent.h; sourceTree = "<group>"; };
 		DF58C6351371ACA000F9A37C /* NativeWebWheelEventMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = NativeWebWheelEventMac.mm; sourceTree = "<group>"; };
 		E105FE5318D7B9DE008F57A8 /* EditingRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingRange.h; sourceTree = "<group>"; };
+		E115C715190F8A2500ECC516 /* com.apple.WebKit.Databases.sb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; path = com.apple.WebKit.Databases.sb; sourceTree = "<group>"; };
 		E133FD891423DD7F00FC7BFB /* WebKit.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = WebKit.icns; path = Resources/WebKit.icns; sourceTree = "<group>"; };
 		E13833EB189C33C8001E2350 /* LocalStorageDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocalStorageDetails.h; sourceTree = "<group>"; };
 		E14A954716E016A40068DE82 /* NetworkProcessPlatformStrategies.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = NetworkProcessPlatformStrategies.cpp; path = NetworkProcess/NetworkProcessPlatformStrategies.cpp; sourceTree = "<group>"; };
@@ -3468,6 +3471,8 @@
 		E1E552C316AE065E004ED653 /* SandboxInitializationParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SandboxInitializationParameters.h; sourceTree = "<group>"; };
 		E1EE53DC11F8CF9F00CCBEE4 /* InjectedBundlePageEditorClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundlePageEditorClient.h; sourceTree = "<group>"; };
 		E1EE53E611F8CFFB00CCBEE4 /* InjectedBundlePageEditorClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundlePageEditorClient.cpp; sourceTree = "<group>"; };
+		E1FEF39A190F76F300731658 /* com.apple.WebKit.Databases.sb.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = com.apple.WebKit.Databases.sb.in; sourceTree = "<group>"; };
+		E1FEF39C190F791C00731658 /* DatabaseProcessIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DatabaseProcessIOS.mm; sourceTree = "<group>"; };
 		F036978715F4BF0500C3A80E /* WebColorPicker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebColorPicker.cpp; sourceTree = "<group>"; };
 		F6113E24126CE1820057D0A7 /* WebUserContentURLPattern.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebUserContentURLPattern.h; sourceTree = "<group>"; };
 		F6113E26126CE19B0057D0A7 /* WKUserContentURLPattern.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKUserContentURLPattern.cpp; sourceTree = "<group>"; };
@@ -4955,6 +4960,7 @@
 			isa = PBXGroup;
 			children = (
 				51E35201180F5D1E00E53BE9 /* DatabaseProcessMac.mm */,
+				E1FEF39A190F76F300731658 /* com.apple.WebKit.Databases.sb.in */,
 			);
 			path = mac;
 			sourceTree = "<group>";
@@ -5085,6 +5091,7 @@
 			children = (
 				51F7DC0B180CC42200212CA3 /* EntryPoint */,
 				51E351F9180F5CF600E53BE9 /* IndexedDB */,
+				E1FEF39B190F791C00731658 /* ios */,
 				517DD5C0180DB7AA0081660B /* mac */,
 				51E351FA180F5D0B00E53BE9 /* DatabaseProcess.cpp */,
 				51E351FB180F5D0B00E53BE9 /* DatabaseProcess.h */,
@@ -6337,6 +6344,7 @@
 				2DE6943C18BD2A68005C15E5 /* SmartMagnificationControllerMessages.h */,
 				512F58A012A883AD00629530 /* AuthenticationManagerMessageReceiver.cpp */,
 				512F58A112A883AD00629530 /* AuthenticationManagerMessages.h */,
+				E115C715190F8A2500ECC516 /* com.apple.WebKit.Databases.sb */,
 				E17AE2C216B9C63A001C42F1 /* com.apple.WebKit.NetworkProcess.sb */,
 				E1967E37150AB5E200C73169 /* com.apple.WebProcess.sb */,
 				2984F586164BA095004BC0C6 /* CustomProtocolManagerMessageReceiver.cpp */,
@@ -6579,6 +6587,14 @@
 			name = PDF;
 			sourceTree = "<group>";
 		};
+		E1FEF39B190F791C00731658 /* ios */ = {
+			isa = PBXGroup;
+			children = (
+				E1FEF39C190F791C00731658 /* DatabaseProcessIOS.mm */,
+			);
+			path = ios;
+			sourceTree = "<group>";
+		};
 		F638955A133BF57D008941D5 /* mac */ = {
 			isa = PBXGroup;
 			children = (
@@ -7791,6 +7807,7 @@
 				E17AE2C316B9C63A001C42F1 /* com.apple.WebKit.NetworkProcess.sb in Resources */,
 				E11D35AE16B63D1B006D23D7 /* com.apple.WebProcess.sb in Resources */,
 				1CBC945E16515ED200D68AAE /* DockBottom.pdf in Resources */,
+				E115C716190F8A2500ECC516 /* com.apple.WebKit.Databases.sb in Resources */,
 				1CB75C941701E880009F809F /* DockRight.pdf in Resources */,
 				8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */,
 			);
@@ -8609,6 +8626,7 @@
 				3760881E150413E900FC82C7 /* WebRenderObject.cpp in Sources */,
 				51217464164C21370037A5C1 /* WebResourceBuffer.cpp in Sources */,
 				3336762F130C9998006C9DE2 /* WebResourceCacheManager.cpp in Sources */,
+				E115C714190F89E400ECC516 /* DatabaseProcessIOS.mm in Sources */,
 				33F9D5B91312F1EE000D683F /* WebResourceCacheManagerCFNet.cpp in Sources */,
 				33367655130C9ECA006C9DE2 /* WebResourceCacheManagerMessageReceiver.cpp in Sources */,
 				51EF124E19098522008A6532 /* SelectionOverlayController.cpp in Sources */,
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to