Fix the iOS build
* Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb: Added.
* WebKit.xcodeproj/project.pbxproj:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@253131 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog
index 194e236..fb02a02 100644
--- a/Source/WebKit/ChangeLog
+++ b/Source/WebKit/ChangeLog
@@ -1,3 +1,10 @@
+2019-12-04 Tim Horton <timothy_horton@apple.com>
+
+ Fix the iOS build
+
+ * Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb: Added.
+ * WebKit.xcodeproj/project.pbxproj:
+
2019-12-04 Per Arne Vollan <pvollan@apple.com>
Unreviewed fix for failure to create sandbox extension on macOS after r253011. This should be iOS only.
diff --git a/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb b/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb
new file mode 100644
index 0000000..d7049531
--- /dev/null
+++ b/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb
@@ -0,0 +1,1144 @@
+; Copyright (C) 2010-2019 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)
+
+;;;
+;;; The following rules were originally contained in 'common.sb'. We are duplicating them here so we can
+;;; remove unneeded sandbox extensions.
+;;;
+
+(import "util.sb")
+(import "carrier-bundle-allowed.sb")
+
+(define-once (allow-read-and-issue-generic-extensions . filters)
+ (allow file-read*
+ (apply require-any filters))
+ (allow file-issue-extension
+ (require-all
+ (extension-class "com.apple.app-sandbox.read")
+ (apply require-any filters))))
+
+(define-once (allow-read-write-and-issue-generic-extensions . filters)
+ (allow file-read* file-write*
+ (apply require-any filters))
+ (allow file-read-metadata
+ (apply require-any filters))
+ (allow file-issue-extension
+ (require-all
+ (extension-class "com.apple.app-sandbox.read-write" "com.apple.app-sandbox.read")
+ (apply require-any filters))))
+
+(define-once (managed-configuration-read-public)
+ (allow file-read*
+ (well-known-system-group-container-subpath "/systemgroup.com.apple.configurationprofiles/Library/ConfigurationProfiles/PublicInfo")
+ (front-user-home-subpath "/Library/ConfigurationProfiles/PublicInfo")
+ (front-user-home-subpath "/Library/UserConfigurationProfiles/PublicInfo")))
+
+(define-once (managed-configuration-read . files)
+ (if (null? files)
+ (allow file-read*
+ (well-known-system-group-container-subpath "/systemgroup.com.apple.configurationprofiles/Library/ConfigurationProfiles")
+ (front-user-home-subpath "/Library/ConfigurationProfiles")
+ (front-user-home-subpath "/Library/UserConfigurationProfiles"))
+ (for-each
+ (lambda (file)
+ (allow file-read*
+ (well-known-system-group-container-literal
+ (string-append "/systemgroup.com.apple.configurationprofiles/Library/ConfigurationProfiles/" file))
+ (front-user-home-literal
+ (string-append "/Library/ConfigurationProfiles/" file)
+ (string-append "/Library/UserConfigurationProfiles/" file))))
+ files)))
+
+(define-once (allow-preferences-common)
+ (allow file-read-metadata
+ (home-literal "")
+ (home-literal "/Library/Preferences")))
+
+(define-once (mobile-preferences-read . domains)
+ (allow-preferences-common)
+ (allow user-preference-read (apply preference-domain domains)))
+
+(define-once (mobile-preferences-read-write . domains)
+ (allow-preferences-common)
+ (allow user-preference-read user-preference-write (apply preference-domain domains)))
+
+(define-once (framebuffer-access)
+ (allow iokit-open
+ (iokit-user-client-class "IOMobileFramebufferUserClient"))
+ (mobile-preferences-read "com.apple.iokit.IOMobileGraphicsFamily"))
+
+(define-once (asset-access . options)
+ (let ((asset-access-filter
+ (require-all
+ (require-any
+ (home-subpath "/Library/Assets")
+ (subpath "/private/var/MobileAsset"))
+ (extension "com.apple.assets.read"))))
+ ;; <rdar://problem/10710883>
+ ;; <rdar://problem/11569106>
+ (allow file-read* asset-access-filter)
+ (if (memq 'with-media-playback options)
+ (play-media asset-access-filter))
+ (allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.mobileassetd" "com.apple.mobileassetd.v2"))
+ (mobile-preferences-read "com.apple.MobileAsset")))
+
+(define-once (mobile-keybag-access)
+ (allow iokit-open
+ (iokit-user-client-class "AppleKeyStoreUserClient")))
+
+(define-once (location-services)
+ (allow mach-lookup
+ (global-name "com.apple.locationd.registration"))
+ (allow-carrier-bundle) ;; <rdar://problem/21192365>
+ (mobile-preferences-read
+ "com.apple.AppSupport"
+ "com.apple.GEO"
+ "com.apple.locationd"))
+
+(define-once (play-audio)
+ (allow mach-lookup
+ (global-name "com.apple.audio.AURemoteIOServer"))
+ (allow mach-lookup (with report) (with telemetry)
+ (xpc-service-name "com.apple.audio.toolbox.reporting.service")))
+
+(define-once (play-media . filters)
+ (if (not (null? filters))
+ ;; <rdar://problem/9875794>
+ (allow file-issue-extension
+ (require-all
+ (apply require-any filters)
+ (extension-class "com.apple.mediaserverd.read"))))
+ (allow file-issue-extension
+ (require-all
+ (extension-class "com.apple.mediaserverd.read")
+ (extension "com.apple.security.exception.files.absolute-path.read-only"
+ "com.apple.security.exception.files.absolute-path.read-write"
+ "com.apple.security.exception.files.home-relative-path.read-only"
+ "com.apple.security.exception.files.home-relative-path.read-write")))
+ (allow file-issue-extension
+ (require-all
+ (extension-class "com.apple.mediaserverd.read-write")
+ (extension "com.apple.security.exception.files.absolute-path.read-write"
+ "com.apple.security.exception.files.home-relative-path.read-write")))
+ ;; CoreMedia framework.
+ (allow mach-lookup
+ (global-name "com.apple.coremedia.admin")
+ (global-name "com.apple.coremedia.asset.xpc")
+ (global-name "com.apple.coremedia.assetimagegenerator.xpc")
+ (global-name "com.apple.coremedia.audioprocessingtap.xpc")
+ (global-name "com.apple.coremedia.capturesession") ; Actually for video capture
+ (global-name "com.apple.coremedia.capturesource") ; Also for video capture (<rdar://problem/15794291>).
+ (global-name "com.apple.coremedia.customurlloader.xpc") ; Needed for custom media loading
+ (global-name "com.apple.coremedia.formatreader.xpc")
+ (global-name "com.apple.coremedia.player.xpc")
+ (global-name "com.apple.coremedia.remaker")
+ (global-name "com.apple.coremedia.remotequeue")
+ (global-name "com.apple.coremedia.routediscoverer.xpc")
+ (global-name "com.apple.coremedia.routingcontext.xpc")
+ (global-name "com.apple.coremedia.samplebufferaudiorenderer.xpc")
+ (global-name "com.apple.coremedia.samplebufferrendersynchronizer.xpc")
+ (global-name "com.apple.coremedia.sandboxserver.xpc")
+ (global-name "com.apple.coremedia.systemcontroller.xpc")
+ (global-name "com.apple.coremedia.volumecontroller.xpc"))
+
+ (allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.coremedia.cpeprotector.xpc")
+ (global-name "com.apple.coremedia.endpoint.xpc")
+ (global-name "com.apple.coremedia.figcontentkeysession.xpc")
+ (global-name "com.apple.coremedia.figcpecryptor")
+ (global-name "com.apple.coremedia.routingsessionmanager.xpc")
+ (global-name "com.apple.coremedia.sts"))
+
+ (mobile-preferences-read
+ "com.apple.avfoundation"
+ "com.apple.coreaudio"
+ "com.apple.coremedia"
+ "com.apple.corevideo"
+ "com.apple.itunesstored" ; Needed by MediaPlayer framework
+ "com.apple.mobileipod" ; Ditto
+ "com.apple.audio.virtualaudio" ; <rdar://problem/57170333>
+ )
+
+ ;; Required by the MediaPlayer framework.
+ (allow mach-lookup
+ (global-name "com.apple.audio.AudioSession"))
+
+ (allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.airplay.apsynccontroller.xpc"))
+
+ ;; Allow mediaserverd to issue file extensions for the purposes of reading media
+ (allow file-issue-extension (require-all
+ (extension "com.apple.app-sandbox.read")
+ (extension-class "com.apple.mediaserverd.read")))
+)
+
+(define-once (media-remote)
+ (mobile-preferences-read
+ "com.apple.mediaremote"
+ "com.apple.mobileipod")
+ (allow mach-lookup
+ (global-name "com.apple.mediaremoted.xpc"))
+ (allow mach-lookup (with report) (with telemetry)
+ (xpc-service-name "com.apple.MediaPlayer.RemotePlayerService"))
+)
+
+(define-once (media-capture-support)
+ ;; Media capture, microphone access
+ (with-filter (extension "com.apple.webkit.microphone")
+ (allow device-microphone))
+
+ ;; Media capture, camera access
+ (with-filter (extension "com.apple.webkit.camera")
+ (allow user-preference-read
+ (preference-domain "com.apple.coremedia"))
+ (allow file-read* (subpath "/Library/CoreMediaIO/Plug-Ins/DAL"))
+ (allow mach-lookup (extension "com.apple.app-sandbox.mach"))
+ (allow device-camera))
+
+ ;; Support incoming video connections
+ (allow mach-lookup
+ (global-name "com.apple.coremedia.compressionsession")
+ (global-name "com.apple.coremedia.decompressionsession")
+ (global-name "com.apple.coremedia.videoqueue"))
+)
+
+(define-once (accessibility-support)
+ (allow mach-register
+ (local-name "com.apple.iphone.axserver"))
+ (mobile-preferences-read "com.apple.Accessibility")
+
+ ;; <rdar://problem/10809394>
+ (deny file-write-create
+ (home-prefix "/Library/Preferences/com.apple.Accessibility.plist")
+ (with no-report))
+)
+
+(define-once (media-accessibility-support)
+ ;; <rdar://problem/12801477>
+ (allow mach-lookup
+ (global-name "com.apple.accessibility.mediaaccessibilityd"))
+
+ ;; <rdar://problem/12250145>
+ (mobile-preferences-read "com.apple.mediaaccessibility")
+ (mobile-preferences-read-write "com.apple.mediaaccessibility.public")
+)
+
+(define-once (url-translation)
+ ;; For translating http:// & https:// URLs referencing itms:// URLs.
+ ;; <rdar://problem/11587338>
+ (allow file-read*
+ (home-literal "/Library/Caches/com.apple.itunesstored/url-resolution.plist")))
+
+;;;
+;;; Declare that the application uses the OpenGL, Metal, and CoreML hardware & frameworks.
+;;;
+(define-once (opengl)
+ (allow iokit-open
+ (iokit-connection "IOGPU")
+ (iokit-user-client-class
+ "AGXCommandQueue"
+ "AGXDevice"
+ "AGXDeviceUserClient"
+ "AGXSharedUserClient"
+ "IOAccelContext"
+ "IOAccelDevice"
+ "IOAccelSharedUserClient"
+ "IOAccelSubmitter2"
+ "IOAccelContext2"
+ "IOAccelDevice2"
+ "IOAccelSharedUserClient2"))
+
+ (allow iokit-get-properties
+ (iokit-property "IOGLBundleName")
+ (iokit-property "IOGLESBundleName")
+ (iokit-property "IOGLESDefaultUseMetal")
+ (iokit-property "IOGLESMetalBundleName")
+ (iokit-property "MetalPluginClassName")
+ (iokit-property "MetalPluginName")
+ )
+
+ (allow sysctl-read
+ (sysctl-name #"kern.bootsessionuuid"))
+
+ (allow mach-lookup (with report) (with telemetry)
+ (xpc-service-name-prefix "com.apple.AGXCompilerService"))
+
+ (allow mach-lookup
+ ;; <rdar://problem/47268166>
+ (xpc-service-name "com.apple.MTLCompilerService"))
+
+ (mobile-preferences-read
+ "com.apple.Metal" ;; <rdar://problem/25535471>
+ "com.apple.opengl" ;; <rdar://problem/23321675>
+ )
+)
+
+(define-once (debugging-support)
+ (allow file-read* file-map-executable
+ (subpath "/Developer"))
+
+ (allow ipc-posix-shm
+ (ipc-posix-name-regex #"^stack-logs")
+ (ipc-posix-name-regex #"^OA-")
+ (ipc-posix-name-regex #"^/FSM-"))
+
+ (allow ipc-posix-shm-read* ipc-posix-shm-write-data ipc-posix-shm-write-unlink
+ (ipc-posix-name-regex #"^gdt-[A-Za-z0-9]+-(c|s)$"))
+
+ (with-filter (system-attribute apple-internal)
+ ;; <rdar://problem/8565035>
+ ;; <rdar://problem/23857452>
+ (allow file-read* file-map-executable
+ (subpath "/AppleInternal")
+ (subpath "/usr/local/lib")))
+ (with-elevated-precedence
+ (allow file-read* file-map-executable file-issue-extension
+ (front-user-home-subpath "/XcodeBuiltProducts")))
+
+ ;; <rdar://problem/8107758>
+ (allow file-read* file-map-executable
+ (subpath "/System/Library/Frameworks")
+ (subpath "/System/Library/PrivateFrameworks"))
+
+ ;; <rdar://problem/32544921>
+ (mobile-preferences-read "com.apple.hangtracer"))
+
+(define-once (device-access)
+ (deny file-read* file-write*
+ (vnode-type BLOCK-DEVICE CHARACTER-DEVICE))
+
+ (allow file-read* file-write-data
+ (literal "/dev/null")
+ (literal "/dev/zero"))
+
+ (allow file-read* file-write-data file-ioctl
+ (literal "/dev/dtracehelper"))
+
+ (allow file-read*
+ (literal "/dev/random")
+ (literal "/dev/urandom"))
+ ;; <rdar://problem/14215718>
+ (deny file-write-data (with no-report)
+ (literal "/dev/random")
+ (literal "/dev/urandom"))
+
+ (allow file-read* file-write-data file-ioctl
+ (literal "/dev/aes_0")))
+
+(define-once (awd-log-directory daemon-name)
+ (let*
+ ((base-directory (home-relative-path "/Library/Logs/awd")))
+ (allow-create-directory (literal base-directory))
+ (allow file-read* file-write*
+ (prefix (string-append base-directory "/awd-" daemon-name ".log")))
+ (allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.awdd"))))
+
+(define-once (logd-diagnostic-paths)
+ (require-any
+ (subpath "/private/var/db/diagnostics")
+ (subpath "/private/var/db/timesync")
+ (subpath "/private/var/db/uuidtext")
+ (subpath "/private/var/userdata/diagnostics")))
+(define-once (logd-diagnostic-client)
+ (with-filter
+ (require-all
+ (require-any
+ (require-entitlement "com.apple.private.logging.diagnostic")
+ (require-entitlement "com.apple.diagnosticd.diagnostic"))
+ (extension "com.apple.logd.read-only"))
+ (allow file-read*
+ (logd-diagnostic-paths))))
+
+(define required-etc-files
+ (literal "/private/etc/fstab"
+ "/private/etc/hosts"
+ "/private/etc/group"
+ "/private/etc/passwd"
+ "/private/etc/protocols"
+ "/private/etc/services"))
+
+(define-once (speech-synthesis-and-voiceover)
+ ;; Speak Selection & VoiceOver
+ ;; <rdar://problem/12030530> AX: Sandbox violation with changing Language while VO is on
+ ;; and <rdar://problem/13071747>
+ (mobile-preferences-read
+ "com.apple.SpeakSelection" ; Needed for WebSpeech
+ "com.apple.VoiceOverTouch" ; Needed for non-US english language synthesis
+ "com.apple.voiceservices") ; Ditto
+
+ ;; <rdar://problem/14555119> Access to high quality speech voices
+ ;; Needed for WebSpeech
+ (allow file-read*
+ (home-subpath "/Library/VoiceServices/Assets")
+ (home-subpath "/Library/Assets/com_apple_MobileAsset_VoiceServicesVocalizerVoice"))
+)
+
+(define-once (core-motion)
+ ;; CoreMotion
+ (mobile-preferences-read "com.apple.CoreMotion")
+
+ ;; CoreMotion’s deviceMotion API
+ (with-filter
+ (require-any
+ (iokit-registry-entry-class "AppleOscarNub")
+ (iokit-registry-entry-class "AppleSPUHIDInterface"))
+ (allow iokit-get-properties
+ (iokit-property "gyro-interrupt-calibration")))
+ (with-filter
+ (iokit-registry-entry-class "IOHIDEventServiceFastPathUserClient")
+ (allow iokit-open)
+ (allow iokit-get-properties iokit-set-properties
+ (iokit-property "interval"
+ "mode"
+ "QueueSize"
+ "useMag"))
+ (allow iokit-get-properties
+ (iokit-property "client")))
+)
+
+;; Things required by UIKit
+(define-once (uikit-requirements)
+ (mobile-preferences-read
+ "com.apple.UIKit"
+ "com.apple.WebUI"
+ "com.apple.airplay"
+ "com.apple.avkit"
+ "com.apple.coreanimation"
+ "com.apple.mt"
+ "com.apple.preferences.sounds")
+
+ (allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.frontboard.systemappservices") ; -[UIViewServiceInterface _createProcessAssertion] -> SBSProcessIDForDisplayIdentifier()
+ (global-name "com.apple.iohideventsystem")
+ )
+
+ (allow mach-lookup
+ (global-name "com.apple.CARenderServer"))
+
+ (allow mach-lookup (with report) (with telemetry)
+ (global-name-regex #"^com\.apple\.uikit\.viewservice\..+")
+ (xpc-service-name-regex #"\.apple-extension-service$") ;; <rdar://problem/19525887>
+ (xpc-service-name-regex #"\.viewservice$") ;; <rdar://problem/31252371>
+ )
+
+ ; UIKit-required IOKit nodes.
+ (allow iokit-open
+ (iokit-user-client-class "AppleJPEGDriverUserClient")
+ (iokit-user-client-class "IOSurfaceAcceleratorClient")
+ (iokit-user-client-class "IOSurfaceSendRight")
+ ;; Requires by UIView -> UITextMagnifierRenderer -> UIWindow
+ (iokit-user-client-class "IOSurfaceRootUserClient"))
+
+ ;; Silence sandbox violations from apps trying to create the empty plist if it doesn't exist.
+ ;; <rdar://problem/13796537>
+ (deny file-write-create
+ (home-prefix "/Library/Preferences/com.apple.UIKit.plist")
+ (with no-report))
+)
+
+(define-once (dictionary-support)
+ ; Dictionary Services used by UITextFields.
+ ; <rdar://problem/9386926>
+ (allow-create-directory
+ (home-literal "/Library/Caches/com.apple.DictionaryServices"))
+
+ ; <rdar://problem/8548856> Sub-TLF: Sandbox change for apps for read-only access to the dictionary directory/data
+ (allow file-read*
+ ; XXX - /Library ought to be allowed in all UI profiles but isn't (CF, MobileSafari)
+ (subpath "/Library/Dictionaries")
+ (home-subpath "/Library/Dictionaries"))
+)
+
+(define-once (network-extensions-support)
+ ;; Network Extensions / VPN helper.
+ (allow mach-lookup
+ (global-name "com.apple.nehelper")
+ (global-name "com.apple.nesessionmanager.content-filter")) ;; <rdar://problem/48442387>
+)
+
+(deny file-map-executable)
+
+(deny file-write-mount file-write-unmount)
+
+(allow file-read-metadata (with no-times)
+ (vnode-type DIRECTORY))
+(with-filter (apple-signed-executable?)
+ (allow file-read-metadata
+ (vnode-type DIRECTORY)))
+
+(with-filter (apple-signed-executable?)
+ (managed-configuration-read "CloudConfigurationDetails.plist")
+ (managed-configuration-read "CloudConfigurationSetAsideDetails.plist")
+ (mobile-preferences-read "com.apple.security"))
+
+(with-filter (system-attribute apple-internal)
+ (mobile-preferences-read "com.apple.PrototypeTools"))
+
+(with-elevated-precedence
+ (allow file-read*
+ (subpath "/usr/lib"
+ "/usr/share"
+ "/private/var/db/timezone"))
+ (allow-read-and-issue-generic-extensions
+ (subpath "/Library/RegionFeatures"
+ "/System/Library"))
+ (allow file-issue-extension
+ (require-all
+ (extension-class "com.apple.mediaserverd.read")
+ (subpath "/System/Library")))
+ (let ((hw-identifying-paths
+ (require-any
+ (literal "/System/Library/Caches/apticket.der")
+ (subpath "/System/Library/Caches/com.apple.kernelcaches")
+ (subpath "/System/Library/Caches/com.apple.factorydata"))))
+ (deny file-issue-extension file-read* hw-identifying-paths))
+
+ (allow file-map-executable
+ (subpath "/System/Library")
+ (subpath "/usr/lib"))
+ (allow file-read-metadata
+ (vnode-type SYMLINK))
+
+ ;;; <rdar://problem/24144418>
+ (allow file-read*
+ (subpath "/private/var/preferences/Logging"))
+
+ (mobile-preferences-read "kCFPreferencesAnyApplication")
+ (allow file-read*
+ (front-user-home-literal "/Library/Preferences/.GlobalPreferences.plist"))
+
+ (allow file-read*
+ (literal "/private/var/Managed Preferences/mobile/.GlobalPreferences.plist"))
+ (allow managed-preference-read (preference-domain "kCFPreferencesAnyApplication"))
+
+ (allow file-read-metadata
+ (home-literal "/Library/Caches/powerlog.launchd"))
+
+ (allow-read-and-issue-generic-extensions (executable-bundle))
+ (allow file-map-executable (executable-bundle))
+
+ ;; <rdar://problem/13963294>
+ (deny file-read-data file-issue-extension file-map-executable
+ (require-all
+ (executable-bundle)
+ (regex #"/[^/]+/SC_Info/")))
+
+ (unless (defined? 'restrictive-extension)
+ (with-filter
+ (extension
+ "com.apple.app-sandbox.read"
+ "com.apple.app-sandbox.read-write"
+ "com.apple.quicklook.readonly"
+ "com.apple.security.exception.files.absolute-path.read-only"
+ "com.apple.security.exception.files.absolute-path.read-write"
+ "com.apple.security.exception.files.home-relative-path.read-only"
+ "com.apple.security.exception.files.home-relative-path.read-write"
+ "com.apple.sharing.airdrop.readonly")
+ (allow file-read* file-read-metadata)
+ (allow file-issue-extension
+ (extension-class "com.apple.app-sandbox.read"
+ "com.apple.mediaserverd.read"
+ "com.apple.quicklook.readonly"
+ "com.apple.sharing.airdrop.readonly")))
+ (with-filter
+ (extension
+ "com.apple.app-sandbox.read-write"
+ "com.apple.security.exception.files.absolute-path.read-write"
+ "com.apple.security.exception.files.home-relative-path.read-write")
+ (allow file-write*)
+ (allow file-issue-extension
+ (extension-class "com.apple.app-sandbox.read-write"
+ "com.apple.mediaserverd.read-write"))))
+
+ ;; <rdar://problem/16079361>
+ (with-filter (global-name-prefix "")
+ (allow mach-register
+ (extension "com.apple.security.exception.mach-register.global-name")))
+ (with-filter (local-name-prefix "")
+ (allow mach-register
+ (extension "com.apple.security.exception.mach-register.local-name")))
+ (allow-read-and-issue-generic-extensions
+ (extension "com.apple.security.exception.files.absolute-path.read-only")
+ (extension "com.apple.security.exception.files.home-relative-path.read-only"))
+ (allow-read-write-and-issue-generic-extensions
+ (extension "com.apple.security.exception.files.absolute-path.read-write")
+ (extension "com.apple.security.exception.files.home-relative-path.read-write"))
+ (allow iokit-open
+ (extension "com.apple.security.exception.iokit-user-client-class"))
+ (allow managed-preference-read
+ (extension "com.apple.security.exception.managed-preference.read-only"))
+ (allow user-preference-read
+ (extension "com.apple.security.exception.shared-preference.read-only"))
+ (allow user-preference-read user-preference-write
+ (extension "com.apple.security.exception.shared-preference.read-write"))
+
+ (allow file-issue-extension
+ (require-all
+ (extension-class "com.apple.nsurlstorage.extension-cache")
+ (extension "com.apple.security.exception.files.home-relative-path.read-write")
+ (require-any
+ (prefix "/private/var/root/Library/Caches/")
+ (front-user-home-prefix "/Library/Caches/"))))
+)
+
+(debugging-support)
+
+(allow file-read*
+ required-etc-files
+ (literal "/"))
+
+(allow file-read*
+ (subpath "/private/var/MobileAsset/PreinstalledAssetsV2/InstallWithOs"))
+
+(device-access)
+
+(allow file-issue-extension
+ (require-all
+ (extension-class "com.apple.app-sandbox.read-write" "com.apple.app-sandbox.read")
+ (extension "com.apple.fileprovider.read-write")))
+
+(allow mach-lookup
+ (global-name "com.apple.logd")
+ (global-name "com.apple.logd.events")
+ (global-name "com.apple.distributed_notifications@1v3")
+ (global-name "com.apple.aggregated")
+ (global-name "com.apple.cfprefsd.daemon"))
+
+(allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.tccd"))
+
+(allow ipc-posix-shm-read*
+ (ipc-posix-name-prefix "apple.cfprefs."))
+
+(allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.lsd.open")
+ (global-name "com.apple.lsd.mapdb"))
+
+;; <rdar://problem/12413942>
+(allow file-read*
+ (well-known-system-group-container-literal "/systemgroup.com.apple.mobilegestaltcache/Library/Caches/com.apple.MobileGestalt.plist"))
+(allow iokit-get-properties
+ (iokit-property "IORegistryEntryPropertyKeys"))
+
+(allow ipc-posix-sem-open
+ (ipc-posix-name "containermanagerd.fb_check"))
+
+(with-filter (ipc-posix-name "purplebuddy.sentinel")
+ (deny ipc-posix-sem-create ipc-posix-sem-post ipc-posix-sem-unlink ipc-posix-sem-wait)
+ (allow ipc-posix-sem-open))
+
+(allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.runningboard"))
+
+(allow system-sched
+ (require-entitlement "com.apple.private.kernel.override-cpumon"))
+
+(deny sysctl-read (with no-report)
+ (sysctl-name "sysctl.proc_native"))
+
+(with-filter (system-attribute apple-internal)
+ (allow sysctl-read sysctl-write
+ (sysctl-name "vm.footprint_suspend")))
+
+(allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.system.logger"))
+
+(allow file-read-metadata network-outbound
+ (literal "/private/var/run/syslog"))
+
+(allow mach-lookup
+ (global-name "com.apple.system.notification_center"))
+(allow ipc-posix-shm-read*
+ (ipc-posix-name "apple.shm.notification_center"))
+
+(allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.diagnosticd"))
+
+(logd-diagnostic-client)
+
+(managed-configuration-read-public)
+
+(deny system-info (with no-report)
+ (info-type "net.link.addr"))
+
+(allow file-read*
+ (subpath "/private/var/db/datadetectors/sys"))
+
+(allow-well-known-system-group-container-subpath-read
+ "/systemgroup.com.apple.icloud.findmydevice.managed/Library")
+
+(allow mach-task-name (target self))
+
+(allow process-info-pidinfo (target self))
+(allow process-info-pidfdinfo (target self))
+(allow process-info-pidfileportinfo (target self))
+(allow process-info-setcontrol (target self))
+(allow process-info-dirtycontrol (target self))
+(allow process-info-rusage (target self))
+(allow process-info-codesignature (target self))
+
+(with-filter (apple-signed-executable?)
+ (mobile-preferences-read "com.apple.demo-settings"))
+
+;;;
+;;; End common.sb content
+;;;
+
+(deny mach-lookup (xpc-service-name-prefix ""))
+(deny iokit-get-properties (with partial-symbolication))
+(deny lsopen)
+
+;;;
+;;; The following rules were originally contained in 'UIKit-apps.sb'. We are duplicating them here so we can
+;;; remove unneeded sandbox extensions.
+;;;
+
+;; Any app can play audio & movies.
+(play-audio)
+(play-media)
+
+;; Access to media controls
+(media-remote)
+
+(url-translation)
+
+;; TextInput framework
+(allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.TextInput"))
+
+(mobile-preferences-read "com.apple.da")
+
+(speech-synthesis-and-voiceover)
+
+(allow mach-lookup (with report) (with telemetry)
+ (global-name "com.apple.audio.AudioComponentRegistrar"))
+
+;; Permit reading assets via MobileAsset framework.
+(asset-access 'with-media-playback)
+
+(network-extensions-support)
+
+;; allow 3rd party applications to access nsurlstoraged's top level domain data cache
+(allow-well-known-system-group-container-literal-read
+ "/systemgroup.com.apple.nsurlstoragedresources/Library/dafsaData.bin")
+
+;; Access the keyboards
+(allow file-read*
+ (home-subpath "/Library/Caches/com.apple.keyboards"))
+
+;; Power logging
+(allow mach-lookup
+ (global-name "com.apple.powerlog.plxpclogger.xpc")) ;; <rdar://problem/36442803>
+
+(mobile-preferences-read
+ "com.apple.EmojiPreferences"
+ ; <rdar://problem/8477596> com.apple.InputModePreferences
+ "com.apple.InputModePreferences"
+ ; <rdar://problem/8206632> Weather(1038) deny file-read-data ~/Library/Preferences/com.apple.keyboard.plist
+ "com.apple.keyboard"
+ ; <rdar://problem/9384085>
+ "com.apple.Preferences"
+ "com.apple.lookup.shared" ; Needed for DataDetector (Spotlight) support
+)
+
+;; Silently deny unnecessary accesses caused by MessageUI framework.
+;; This can be removed once <rdar://problem/47038102> is resolved.
+(deny file-read*
+ (home-literal "/Library/Preferences/com.apple.mobilemail.plist")
+ (with no-log))
+
+;; <rdar://problem/12985925> Need read access to /var/mobile/Library/Fonts to all apps
+(allow file-read*
+ (home-subpath "/Library/Fonts"))
+
+;; <rdar://problem/7344719&26323449> LaunchServices app icons
+(allow file-read*
+ (well-known-system-group-container-subpath "/systemgroup.com.apple.lsd.iconscache"))
+(allow mach-lookup (with report) (with telemetry)
+ (xpc-service-name "com.apple.iconservices")
+ (global-name "com.apple.iconservices"))
+
+(allow-preferences-common)
+
+(core-motion)
+
+;; Home Button
+(with-filter (iokit-registry-entry-class "IOPlatformDevice")
+ (allow iokit-get-properties
+ (iokit-property "home-button-type")))
+
+(uikit-requirements)
+
+;; <rdar://problem/9404009>
+(mobile-preferences-read "kCFPreferencesAnyApplication")
+
+(dictionary-support)
+
+; <rdar://problem/8440231>
+(allow file-read*
+ (home-literal "/Library/Caches/DateFormats.plist"))
+; Silently deny writes when CFData attempts to write to the cache directory.
+(deny file-write*
+ (home-literal "/Library/Caches/DateFormats.plist")
+ (with no-log))
+
+(framebuffer-access)
+
+;; <rdar://problem/7822790>
+(mobile-keybag-access)
+
+; <rdar://problem/7595408> , <rdar://problem/7643881>
+(opengl)
+
+(location-services)
+
+; CRCopyRestrictionsDictionary periodically tries to CFPreferencesAppSynchronize com.apple.springboard.plist
+; which will attempt to create the plist if it doesn't exist -- from any application. Only SpringBoard is
+; allowed to write its plist; ignore all others, they don't know what they are doing.
+; See <rdar://problem/9375027> for sample backtraces.
+(deny file-write*
+ (home-prefix "/Library/Preferences/com.apple.springboard.plist")
+ (with no-log))
+
+;; <rdar://problem/34986314>
+(mobile-preferences-read "com.apple.indigo")
+
+;;;
+;;; End UIKit-apps.sb content
+;;;
+
+(deny sysctl*)
+(allow sysctl-read
+ (sysctl-name
+ "hw.activecpu"
+ "hw.availcpu"
+ "hw.cachelinesize"
+ "hw.cputype"
+ "hw.l2cachesize"
+ "hw.logicalcpu"
+ "hw.logicalcpu_max"
+ "hw.ncpu"
+ "hw.machine"
+ "hw.memsize"
+ "hw.model"
+ "hw.pagesize_compat"
+ "hw.physicalcpu"
+ "hw.physicalcpu_max"
+ "kern.bootargs"
+ "kern.hostname"
+ "kern.memorystatus_level"
+ "kern.osproductversion"
+ "kern.osrelease"
+ "kern.osvariant_status"
+ "kern.secure_kernel"
+ "kern.version"
+ "vm.footprint_suspend"))
+
+(allow iokit-get-properties
+ (iokit-property-regex #"^AAPL,(DisplayPipe|OpenCLdisabled|IOGraphics_LER(|_RegTag_1|_RegTag_0|_Busy_2)|alias-policy|boot-display|display-alias|mux-switch-state|ndrv-dev|primary-display|slot-name)")
+ (iokit-property "APTDevice")
+ (iokit-property "AVCSupported")
+ (iokit-property-regex #"^AppleJPEG(NumCores|Supports(AppleInterchangeFormats|MissingEOI|RSTLogging))")
+ (iokit-property "BaseAddressAlignmentRequirement")
+ (iokit-property-regex #"^DisplayPipe(PlaneBaseAlignment|StrideRequirements)")
+ (iokit-property "HEVCSupported")
+ (iokit-property-regex #"IOGVA(BGRAEnc|Codec|EncoderRestricted|Scaler)")
+ (iokit-property "IOClassNameOverride")
+ (iokit-property "IOPlatformUUID")
+ (iokit-property "IOSurfaceAcceleratorCapabilitiesDict")
+ (iokit-property "Protocol Characteristics")
+ (iokit-property "als-colorCfg") ;; <rdar://problem/52903475>
+ (iokit-property "artwork-device-idiom") ;; <rdar://problem/49497720>
+ (iokit-property "artwork-device-subtype")
+ (iokit-property "artwork-display-gamut") ;; <rdar://problem/49497788>
+ (iokit-property "artwork-dynamic-displaymode") ;; <rdar://problem/49497720>
+ (iokit-property "artwork-scale-factor") ;; <rdar://problem/49497788>
+ (iokit-property-regex #"(canvas-height|canvas-width)")
+ (iokit-property "chip-id") ;; <rdar://problem/52903477>
+ (iokit-property "class-code")
+ (iokit-property "color-accuracy-index")
+ (iokit-property "compatible") ;; <rdar://problem/47523516>
+ (iokit-property "compatible-device-fallback") ;; <rdar://problem/49497720>
+ (iokit-property "device-colors") ;; <rdar://problem/51322072>
+ (iokit-property "device-id")
+ (iokit-property "device-perf-memory-class")
+ (iokit-property "display-corner-radius") ;; <rdar://problem/50602737>
+ (iokit-property "emu")
+ (iokit-property "graphics-featureset-class") ;; <rdar://problem/49497720>
+ (iokit-property "graphics-featureset-fallbacks") ;; <rdar://problem/51322072>
+ (iokit-property "hdcp-hoover-protocol")
+ (iokit-property "iommu-present")
+ (iokit-property "oled-display") ;; <rdar://problem/51322072>
+ (iokit-property "product-description") ;; <rdar://problem/49497788>
+ (iokit-property "product-id")
+ (iokit-property "region-info") ;; <rdar://problem/52903475>
+ (iokit-property "regulatory-model-number") ;; <rdar://problem/52903475>
+ (iokit-property "soc-generation") ;; <rdar://problem/52903476>
+ (iokit-property "software-behavior")
+ (iokit-property "vendor-id")
+ (iokit-property "udid-version") ;; <rdar://problem/52903475>
+ (iokit-property "ui-pip") ;; <rdar://problem/48867037>
+)
+
+;; Read-only preferences and data
+(mobile-preferences-read
+ "com.apple.LaunchServices"
+ "com.apple.WebFoundation"
+ "com.apple.avfoundation.frecents" ;; <rdar://problem/33137029>
+ "com.apple.avfoundation.videoperformancehud" ;; <rdar://problem/31594568>
+ "com.apple.voiceservices.logging")
+
+;; 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"))
+
+;; Access to client's cache folder & re-vending to CFNetwork.
+(allow file-issue-extension (require-all
+ (extension "com.apple.app-sandbox.read-write")
+ (extension-class "com.apple.nsurlstorage.extension-cache")))
+
+(accessibility-support)
+
+(media-accessibility-support)
+
+;; Remote Web Inspector
+(allow mach-lookup
+ (global-name "com.apple.webinspector"))
+
+;; Various services required by CFNetwork and other frameworks
+(allow mach-lookup
+ (global-name "com.apple.PowerManagement.control")
+ (global-name "com.apple.analyticsd"))
+
+(deny file-write-create (vnode-type SYMLINK))
+(deny file-read-xattr file-write-xattr (xattr-regex #"^com\.apple\.security\.private\."))
+
+;; Allow loading injected bundles.
+(allow file-map-executable)
+
+;; AWD logging
+(awd-log-directory "com.apple.WebKit.WebContent")
+
+;; Allow ManagedPreference access
+(allow file-read* (literal "/private/var/Managed Preferences/mobile/com.apple.webcontentfilter.plist"))
+
+(allow file-read-data
+ (literal "/usr/local/lib/log") ; <rdar://problem/36629495>
+)
+
+(allow mach-lookup
+ (require-all
+ (extension "com.apple.webkit.extension.mach")
+ (global-name "com.apple.iphone.axserver-systemwide" "com.apple.tccd" "com.apple.AGXCompilerService")))
+
+(media-capture-support)
+
+;; These services have been identified as unused during living-on.
+;; This list overrides some definitions above and in common.sb.
+;; FIXME: remove overridden rules once the final list has been
+;; established, see https://bugs.webkit.org/show_bug.cgi?id=193840
+(deny mach-lookup
+ (global-name "com.apple.webkit.camera")
+)
+
+(when (defined? 'syscall-unix)
+ (deny syscall-unix (with send-signal SIGKILL))
+ (allow syscall-unix
+ (syscall-number SYS_exit)
+ (syscall-number SYS_read)
+ (syscall-number SYS_write)
+ (syscall-number SYS_open)
+ (syscall-number SYS_close)
+ (syscall-number SYS_unlink)
+ (syscall-number SYS_chmod)
+ (syscall-number SYS_getuid)
+ (syscall-number SYS_geteuid)
+ (syscall-number SYS_recvfrom)
+ (syscall-number SYS_getpeername)
+ (syscall-number SYS_access)
+ (syscall-number SYS_dup)
+ (syscall-number SYS_pipe)
+ (syscall-number SYS_getegid)
+ (syscall-number SYS_getgid)
+ (syscall-number SYS_sigprocmask)
+ (syscall-number SYS_sigaltstack)
+ (syscall-number SYS_ioctl)
+ (syscall-number SYS_readlink)
+ (syscall-number SYS_umask)
+ (syscall-number SYS_msync)
+ (syscall-number SYS_munmap)
+ (syscall-number SYS_mprotect)
+ (syscall-number SYS_madvise)
+ (syscall-number SYS_fcntl)
+ (syscall-number SYS_select)
+ (syscall-number SYS_fsync)
+ (syscall-number SYS_setpriority)
+ (syscall-number SYS_socket)
+ (syscall-number SYS_connect)
+ (syscall-number SYS_setsockopt)
+ (syscall-number SYS_gettimeofday)
+ (syscall-number SYS_getrusage)
+ (syscall-number SYS_getsockopt)
+ (syscall-number SYS_writev)
+ (syscall-number SYS_fchmod)
+ (syscall-number SYS_rename)
+ (syscall-number SYS_flock)
+ (syscall-number SYS_sendto)
+ (syscall-number SYS_shutdown)
+ (syscall-number SYS_socketpair)
+ (syscall-number SYS_mkdir)
+ (syscall-number SYS_rmdir)
+ (syscall-number SYS_pread)
+ (syscall-number SYS_pwrite)
+ (syscall-number SYS_csops)
+ (syscall-number SYS_csops_audittoken)
+ (syscall-number SYS_kdebug_trace64)
+ (syscall-number SYS_kdebug_trace)
+ (syscall-number SYS_sigreturn)
+ (syscall-number SYS_pathconf)
+ (syscall-number SYS_getrlimit)
+ (syscall-number SYS_setrlimit)
+ (syscall-number SYS_mmap)
+ (syscall-number SYS_lseek)
+ (syscall-number SYS_ftruncate)
+ (syscall-number SYS_sysctl)
+ (syscall-number SYS_mlock)
+ (syscall-number SYS_munlock)
+ (syscall-number SYS_getattrlist)
+ (syscall-number SYS_getxattr)
+ (syscall-number SYS_fgetxattr)
+ (syscall-number SYS_listxattr)
+ (syscall-number SYS_shm_open)
+ (syscall-number SYS_sem_wait)
+ (syscall-number SYS_sem_post)
+ (syscall-number SYS_sysctlbyname)
+ (syscall-number SYS_psynch_mutexwait)
+ (syscall-number SYS_psynch_mutexdrop)
+ (syscall-number SYS_psynch_cvbroad)
+ (syscall-number SYS_psynch_cvsignal)
+ (syscall-number SYS_psynch_cvwait)
+ (syscall-number SYS_psynch_rw_wrlock)
+ (syscall-number SYS_psynch_rw_unlock)
+ (syscall-number SYS_psynch_cvclrprepost)
+ (syscall-number SYS_process_policy)
+ (syscall-number SYS_issetugid)
+ (syscall-number SYS___pthread_kill)
+ (syscall-number SYS___pthread_markcancel)
+ (syscall-number SYS___pthread_sigmask)
+ (syscall-number SYS___disable_threadsignal)
+ (syscall-number SYS___semwait_signal)
+ (syscall-number SYS_proc_info)
+ (syscall-number SYS_stat64)
+ (syscall-number SYS_fstat64)
+ (syscall-number SYS_lstat64)
+ (syscall-number SYS_getdirentries64)
+ (syscall-number SYS_statfs64)
+ (syscall-number SYS_fstatfs64)
+ (syscall-number SYS_getfsstat64)
+ (syscall-number SYS_getaudit_addr)
+ (syscall-number SYS_bsdthread_create)
+ (syscall-number SYS_bsdthread_terminate)
+ (syscall-number SYS_workq_kernreturn)
+ (syscall-number SYS_thread_selfid)
+ (syscall-number SYS_kevent_qos)
+ (syscall-number SYS_kevent_id)
+ (syscall-number SYS___mac_syscall)
+ (syscall-number SYS_read_nocancel)
+ (syscall-number SYS_write_nocancel)
+ (syscall-number SYS_open_nocancel)
+ (syscall-number SYS_close_nocancel)
+ (syscall-number SYS_sendmsg_nocancel)
+ (syscall-number SYS_recvfrom_nocancel)
+ (syscall-number SYS_fcntl_nocancel)
+ (syscall-number SYS_select_nocancel)
+ (syscall-number SYS_connect_nocancel)
+ (syscall-number SYS_sendto_nocancel)
+ (syscall-number SYS_fsgetpath)
+ (syscall-number SYS_fileport_makeport)
+ (syscall-number SYS_guarded_open_np)
+ (syscall-number SYS_guarded_close_np)
+ (syscall-number SYS_change_fdguard_np)
+ (syscall-number SYS_proc_rlimit_control)
+ (syscall-number SYS_connectx)
+ (syscall-number SYS_getattrlistbulk)
+ (syscall-number SYS_openat)
+ (syscall-number SYS_openat_nocancel)
+ (syscall-number SYS_fstatat64)
+ (syscall-number SYS_mkdirat)
+ (syscall-number SYS_bsdthread_ctl)
+ (syscall-number SYS_csrctl)
+ (syscall-number SYS_guarded_pwrite_np)
+ (syscall-number SYS_getentropy)
+ (syscall-number SYS_necp_open)
+ (syscall-number SYS_necp_client_action)
+ (syscall-number SYS_ulock_wait)
+ (syscall-number SYS_ulock_wake)
+ (syscall-number SYS_kdebug_typefilter)
+ (syscall-number SYS_shared_region_check_np)
+ (syscall-number SYS_getpid)
+ (syscall-number SYS_bsdthread_register)
+ (syscall-number SYS_sigaction)
+ (syscall-number SYS_gettid)
+ (syscall-number SYS_workq_open)
+ (syscall-number SYS_chdir)
+ (syscall-number SYS_memorystatus_control)
+ (syscall-number SYS_sem_open)
+ (syscall-number SYS_sem_close)
+ (syscall-number SYS_fsetattrlist)
+ (syscall-number SYS_guarded_open_dprotected_np) ; <rdar://problem/48166729>
+ (syscall-number SYS_mremap_encrypted)
+ (syscall-number SYS_dup2)
+ (syscall-number SYS_fileport_makefd)
+ (syscall-number SYS_os_fault_with_payload)
+ (syscall-number SYS_persona)
+ (syscall-number SYS_work_interval_ctl)
+ (syscall-number SYS_open_dprotected_np)
+ (syscall-number SYS_pread_nocancel)
+ (syscall-number SYS___semwait_signal_nocancel)
+ (syscall-number SYS_kdebug_trace_string) ;; Needed for performance sampling, see <rdar://problem/48829655>.
+ (syscall-number SYS_fgetattrlist) ;; <rdar://problem/50266257>
+ (syscall-number SYS_fsetxattr) ;; <rdar://problem/49795964>
+ (syscall-number SYS_abort_with_payload) ;; <rdar://problem/50967271>
+ (syscall-number SYS_kqueue) ;; <rdar://problem/49609201>
+ (syscall-number SYS_kqueue_workloop_ctl) ;; <rdar://problem/50999499>
+ (syscall-number SYS_psynch_rw_rdlock) ;; <rdar://problem/51134351>
+ (syscall-number SYS_faccessat) ;; <rdar://problem/56998930>
+ )
+)
diff --git a/Source/WebKit/WebKit.xcodeproj/project.pbxproj b/Source/WebKit/WebKit.xcodeproj/project.pbxproj
index b52455a..95ce08d 100644
--- a/Source/WebKit/WebKit.xcodeproj/project.pbxproj
+++ b/Source/WebKit/WebKit.xcodeproj/project.pbxproj
@@ -712,6 +712,7 @@
2DAF06D618BD1A470081CEB1 /* SmartMagnificationController.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DAF06D418BD1A470081CEB1 /* SmartMagnificationController.h */; };
2DB7667121B5E48A0045DDB1 /* AccessibilitySupportSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DB7667021B5E48A0045DDB1 /* AccessibilitySupportSPI.h */; };
2DB94299234E7A7F00E776AD /* WKMouseGestureRecognizer.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DB94297234E7A7F00E776AD /* WKMouseGestureRecognizer.h */; };
+ 2DB96053239886C100102791 /* com.apple.WebKit.GPU.sb in CopyFiles */ = {isa = PBXBuildFile; fileRef = 2DB96052239886B900102791 /* com.apple.WebKit.GPU.sb */; };
2DC18FAD218910490025A88D /* WKDrawingView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DC18FAB218910480025A88D /* WKDrawingView.h */; };
2DC18FB0218912640025A88D /* PencilKitSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DC18FAF218912640025A88D /* PencilKitSPI.h */; };
2DC18FB3218A6E9E0025A88D /* RemoteLayerTreeViews.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DC18FB1218A6E9E0025A88D /* RemoteLayerTreeViews.h */; };
@@ -1398,7 +1399,6 @@
A5EC6AD42151BD7B00677D17 /* WebPageDebuggable.h in Headers */ = {isa = PBXBuildFile; fileRef = A5EC6AD32151BD6900677D17 /* WebPageDebuggable.h */; };
A5EFD38C16B0E88C00B2F0E8 /* WKPageVisibilityTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = A5EFD38B16B0E88C00B2F0E8 /* WKPageVisibilityTypes.h */; settings = {ATTRIBUTES = (Private, ); }; };
A78CCDDB193AC9F8005ECC25 /* com.apple.WebKit.Networking.sb in CopyFiles */ = {isa = PBXBuildFile; fileRef = A78CCDD8193AC9E3005ECC25 /* com.apple.WebKit.Networking.sb */; };
- A78CCDDB193AC9F8005ECC26 /* com.apple.WebKit.GPU.sb in CopyFiles */ = {isa = PBXBuildFile; fileRef = A78CCDD8193AC9E3005ECC26 /* com.apple.WebKit.GPU.sb */; };
A78CCDDC193AC9FB005ECC25 /* com.apple.WebKit.WebContent.sb in CopyFiles */ = {isa = PBXBuildFile; fileRef = A78CCDD9193AC9E3005ECC25 /* com.apple.WebKit.WebContent.sb */; };
A7D792D81767CCA300881CBE /* ActivityAssertion.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D792D41767CB0900881CBE /* ActivityAssertion.h */; };
AAB145E6223F931200E489D8 /* PrefetchCache.h in Headers */ = {isa = PBXBuildFile; fileRef = AAB145E4223F931200E489D8 /* PrefetchCache.h */; };
@@ -1975,9 +1975,9 @@
dstPath = "$(INSTALL_PATH)";
dstSubfolderSpec = 0;
files = (
- A78CCDDB193AC9F8005ECC26 /* com.apple.WebKit.GPU.sb in CopyFiles */,
A78CCDDB193AC9F8005ECC25 /* com.apple.WebKit.Networking.sb in CopyFiles */,
A78CCDDC193AC9FB005ECC25 /* com.apple.WebKit.WebContent.sb in CopyFiles */,
+ 2DB96053239886C100102791 /* com.apple.WebKit.GPU.sb in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -2923,6 +2923,7 @@
2DB7667021B5E48A0045DDB1 /* AccessibilitySupportSPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilitySupportSPI.h; sourceTree = "<group>"; };
2DB94297234E7A7F00E776AD /* WKMouseGestureRecognizer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = WKMouseGestureRecognizer.h; path = ios/WKMouseGestureRecognizer.h; sourceTree = "<group>"; };
2DB94298234E7A7F00E776AD /* WKMouseGestureRecognizer.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = WKMouseGestureRecognizer.mm; path = ios/WKMouseGestureRecognizer.mm; sourceTree = "<group>"; };
+ 2DB96052239886B900102791 /* com.apple.WebKit.GPU.sb */ = {isa = PBXFileReference; lastKnownFileType = text; path = com.apple.WebKit.GPU.sb; sourceTree = "<group>"; };
2DC18FAB218910480025A88D /* WKDrawingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WKDrawingView.h; path = ios/WKDrawingView.h; sourceTree = "<group>"; };
2DC18FAC218910480025A88D /* WKDrawingView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WKDrawingView.mm; path = ios/WKDrawingView.mm; sourceTree = "<group>"; };
2DC18FAF218912640025A88D /* PencilKitSPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PencilKitSPI.h; sourceTree = "<group>"; };
@@ -7751,6 +7752,7 @@
A78CCDD6193AC9E3005ECC25 /* ios */ = {
isa = PBXGroup;
children = (
+ 2DB96052239886B900102791 /* com.apple.WebKit.GPU.sb */,
A78CCDD8193AC9E3005ECC25 /* com.apple.WebKit.Networking.sb */,
A78CCDD9193AC9E3005ECC25 /* com.apple.WebKit.WebContent.sb */,
);