Title: [248348] branches/safari-608.1-branch/Source
- Revision
- 248348
- Author
- [email protected]
- Date
- 2019-08-06 23:52:28 -0700 (Tue, 06 Aug 2019)
Log Message
Cherry-pick r247793. rdar://problem/54017899
Regression(r247400): Unable to log into AIB Mobile Banking App
https://bugs.webkit.org/show_bug.cgi?id=200094
<rdar://problem/52519818>
Reviewed by Brent Fulgham.
In r247400, a change was made to only set the 'app has universal sandbox access' flag
only when issueing the sandbox extension for / actually succeeded (it usually fails
in practice). Previously, AIB Mobile Banking app was relying on this behavior to
trigger a load for file:///login which is outside their container. However, now that
the 'app has universal sandbox access' flag is no longer set, it trips our security
checks and the load gets ignored.
To address the issue, apply only the 'app has universal sandbox access' flag fix with
a linked-on-after check.
* UIProcess/Cocoa/VersionChecks.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@247793 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Modified Paths
Diff
Modified: branches/safari-608.1-branch/Source/WTF/wtf/spi/darwin/dyldSPI.h (248347 => 248348)
--- branches/safari-608.1-branch/Source/WTF/wtf/spi/darwin/dyldSPI.h 2019-08-07 06:52:25 UTC (rev 248347)
+++ branches/safari-608.1-branch/Source/WTF/wtf/spi/darwin/dyldSPI.h 2019-08-07 06:52:28 UTC (rev 248348)
@@ -53,6 +53,10 @@
#define DYLD_MACOSX_VERSION_10_14 0x000A0E00
#endif
+#ifndef DYLD_MACOSX_VERSION_10_15
+#define DYLD_MACOSX_VERSION_10_15 0x000A0F00
+#endif
+
#else
#define DYLD_IOS_VERSION_3_0 0x00030000
@@ -71,6 +75,7 @@
#define DYLD_MACOSX_VERSION_10_12 0x000A0C00
#define DYLD_MACOSX_VERSION_10_13 0x000A0D00
#define DYLD_MACOSX_VERSION_10_14 0x000A0E00
+#define DYLD_MACOSX_VERSION_10_15 0x000A0F00
#endif
Modified: branches/safari-608.1-branch/Source/WebKit/ChangeLog (248347 => 248348)
--- branches/safari-608.1-branch/Source/WebKit/ChangeLog 2019-08-07 06:52:25 UTC (rev 248347)
+++ branches/safari-608.1-branch/Source/WebKit/ChangeLog 2019-08-07 06:52:28 UTC (rev 248348)
@@ -1,5 +1,54 @@
2019-08-06 Kocsen Chung <[email protected]>
+ Cherry-pick r247793. rdar://problem/54017899
+
+ Regression(r247400): Unable to log into AIB Mobile Banking App
+ https://bugs.webkit.org/show_bug.cgi?id=200094
+ <rdar://problem/52519818>
+
+ Reviewed by Brent Fulgham.
+
+ In r247400, a change was made to only set the 'app has universal sandbox access' flag
+ only when issueing the sandbox extension for / actually succeeded (it usually fails
+ in practice). Previously, AIB Mobile Banking app was relying on this behavior to
+ trigger a load for file:///login which is outside their container. However, now that
+ the 'app has universal sandbox access' flag is no longer set, it trips our security
+ checks and the load gets ignored.
+
+ To address the issue, apply only the 'app has universal sandbox access' flag fix with
+ a linked-on-after check.
+
+ * UIProcess/Cocoa/VersionChecks.h:
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
+
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@247793 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2019-07-24 Chris Dumez <[email protected]>
+
+ Regression(r247400): Unable to log into AIB Mobile Banking App
+ https://bugs.webkit.org/show_bug.cgi?id=200094
+ <rdar://problem/52519818>
+
+ Reviewed by Brent Fulgham.
+
+ In r247400, a change was made to only set the 'app has universal sandbox access' flag
+ only when issueing the sandbox extension for / actually succeeded (it usually fails
+ in practice). Previously, AIB Mobile Banking app was relying on this behavior to
+ trigger a load for file:///login which is outside their container. However, now that
+ the 'app has universal sandbox access' flag is no longer set, it trips our security
+ checks and the load gets ignored.
+
+ To address the issue, apply only the 'app has universal sandbox access' flag fix with
+ a linked-on-after check.
+
+ * UIProcess/Cocoa/VersionChecks.h:
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
+
+2019-08-06 Kocsen Chung <[email protected]>
+
Cherry-pick r247679. rdar://problem/54017903
[iOS] [WebKit2] Add limited support for -isPosition:atBoundary:inDirection: in WKContentView
Modified: branches/safari-608.1-branch/Source/WebKit/UIProcess/Cocoa/VersionChecks.h (248347 => 248348)
--- branches/safari-608.1-branch/Source/WebKit/UIProcess/Cocoa/VersionChecks.h 2019-08-07 06:52:25 UTC (rev 248347)
+++ branches/safari-608.1-branch/Source/WebKit/UIProcess/Cocoa/VersionChecks.h 2019-08-07 06:52:28 UTC (rev 248348)
@@ -40,17 +40,24 @@
#define DYLD_MACOS_VERSION_FIRST_WHERE_DOWNLOAD_ATTRIBUTE_DOES_NOT_OVERRIDE_NAVIGATION_DELEGATE 0
#endif
+#if PLATFORM(IOS_FAMILY)
#ifndef DYLD_IOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES
#define DYLD_IOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES 0
#endif
-#ifndef DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES
-#define DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES 0
-#endif
#ifndef DYLD_IOS_VERSION_FIRST_WITH_DEVICE_ORIENTATION_AND_MOTION_PERMISSION_API
#define DYLD_IOS_VERSION_FIRST_WITH_DEVICE_ORIENTATION_AND_MOTION_PERMISSION_API 0
#endif
+#endif // PLATFORM(IOS_FAMILY)
+#if PLATFORM(MAC)
+#ifndef DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES
+#define DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES 0
+#endif
+#endif
+
+
+
namespace WebKit {
enum class SDKVersion : uint32_t {
@@ -65,6 +72,7 @@
FirstWhereScrollViewContentInsetsAreNotObscuringInsets = DYLD_IOS_VERSION_12_0,
FirstWhereUIScrollViewDoesNotApplyKeyboardInsetsUnconditionally = DYLD_IOS_VERSION_12_0,
FirstWithMainThreadReleaseAssertionInWebPageProxy = DYLD_IOS_VERSION_12_0,
+ FirstWithoutUnconditionalUniversalSandboxExtension = DYLD_IOS_VERSION_13_0,
FirstWithLazyGestureRecognizerInstallation = DYLD_IOS_VERSION_FIRST_WITH_LAZY_GESTURE_RECOGNIZER_INSTALLATION,
FirstWithProcessSwapOnCrossSiteNavigation = DYLD_IOS_VERSION_FIRST_WITH_PROCESS_SWAP_ON_CROSS_SITE_NAVIGATION,
FirstWithSnapshotAfterScreenUpdates = DYLD_IOS_VERSION_FIRST_WITH_SNAPSHOT_AFTER_SCREEN_UPDATES,
@@ -80,6 +88,7 @@
FirstWithDropToNavigateDisallowedByDefault = DYLD_MACOSX_VERSION_10_13,
FirstWithExpiredOnlyReloadBehavior = DYLD_MACOSX_VERSION_10_13,
FirstWithMainThreadReleaseAssertionInWebPageProxy = DYLD_MACOSX_VERSION_10_14,
+ FirstWithoutUnconditionalUniversalSandboxExtension = DYLD_MACOSX_VERSION_10_15,
FirstWithSnapshotAfterScreenUpdates = DYLD_MACOS_VERSION_FIRST_WITH_SNAPSHOT_AFTER_SCREEN_UPDATES,
FirstWithExceptionsForRelatedWebViewsUsingDifferentDataStores = DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES,
#endif
Modified: branches/safari-608.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (248347 => 248348)
--- branches/safari-608.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2019-08-07 06:52:25 UTC (rev 248347)
+++ branches/safari-608.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2019-08-07 06:52:28 UTC (rev 248348)
@@ -195,6 +195,7 @@
#include "RemoteLayerTreeScrollingPerformanceData.h"
#include "TouchBarMenuData.h"
#include "TouchBarMenuItemData.h"
+#include "VersionChecks.h"
#include "VideoFullscreenManagerProxy.h"
#include "VideoFullscreenManagerProxyMessages.h"
#include <WebCore/RunLoopObserver.h>
@@ -1063,6 +1064,11 @@
return;
}
+#if PLATFORM(COCOA)
+ if (!linkedOnOrAfter(SDKVersion::FirstWithoutUnconditionalUniversalSandboxExtension))
+ willAcquireUniversalFileReadSandboxExtension(process);
+#endif
+
// We failed to issue an universal file read access sandbox, fall back to issuing one for the base URL instead.
auto baseURL = URL(URL(), url.baseAsString());
auto basePath = baseURL.fileSystemPath();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes