Title: [279083] trunk
Revision
279083
Author
[email protected]
Date
2021-06-21 14:25:45 -0700 (Mon, 21 Jun 2021)

Log Message

Migrate App Privacy Report code from WebKitAdditions
https://bugs.webkit.org/show_bug.cgi?id=227045
<rdar://problem/74333287>

Reviewed by Alex Christensen.

Source/WebKit:

No new tests, covered by existing tests.

* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):
(contextString): Deleted.
This patch deletes the contextString function because it is no longer
needed now that CFNetwork sets the attribution context, and it seemed
silly to migrate code from WebKitAdditions just to delete it
immediately. This also moves the processPCMRequest function
declaration from WebKitAdditions so we can remove
NETWORK_DATA_TASK_COCOA_ADDITIONS.

* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::isActingOnBehalfOfAFullWebBrowser):
(WebKit::NetworkSessionCocoa::removeNetworkWebsiteData):
* UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::setLastNavigationWasAppBound):

Source/WTF:

Update compile flag naming to align with the App Privacy Report
feature.

* wtf/PlatformEnableCocoa.h:

Tools:

* TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:

Modified Paths

Diff

Modified: trunk/Source/WTF/ChangeLog (279082 => 279083)


--- trunk/Source/WTF/ChangeLog	2021-06-21 21:06:49 UTC (rev 279082)
+++ trunk/Source/WTF/ChangeLog	2021-06-21 21:25:45 UTC (rev 279083)
@@ -1,3 +1,16 @@
+2021-06-21  Kate Cheney  <[email protected]>
+
+        Migrate App Privacy Report code from WebKitAdditions
+        https://bugs.webkit.org/show_bug.cgi?id=227045
+        <rdar://problem/74333287>
+
+        Reviewed by Alex Christensen.
+
+        Update compile flag naming to align with the App Privacy Report
+        feature.
+
+        * wtf/PlatformEnableCocoa.h:
+
 2021-06-21  Kimmo Kinnunen  <[email protected]>
 
         makeUnique cannot be used to instantiate function-local classes

Modified: trunk/Source/WTF/wtf/PlatformEnableCocoa.h (279082 => 279083)


--- trunk/Source/WTF/wtf/PlatformEnableCocoa.h	2021-06-21 21:06:49 UTC (rev 279082)
+++ trunk/Source/WTF/wtf/PlatformEnableCocoa.h	2021-06-21 21:25:45 UTC (rev 279083)
@@ -699,8 +699,8 @@
 #define ENABLE_NOTIFY_FILTERING 1
 #endif
 
-#if !defined(ENABLE_APP_BOUND_REQUESTS) && PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 150000
-#define ENABLE_APP_BOUND_REQUESTS 1
+#if !defined(ENABLE_APP_PRIVACY_REPORT) && PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 150000
+#define ENABLE_APP_PRIVACY_REPORT 1
 #endif
 
 #if !defined(ENABLE_DESTINATION_COLOR_SPACE_DISPLAY_P3)

Modified: trunk/Source/WebKit/ChangeLog (279082 => 279083)


--- trunk/Source/WebKit/ChangeLog	2021-06-21 21:06:49 UTC (rev 279082)
+++ trunk/Source/WebKit/ChangeLog	2021-06-21 21:25:45 UTC (rev 279083)
@@ -1,3 +1,29 @@
+2021-06-21  Kate Cheney  <[email protected]>
+
+        Migrate App Privacy Report code from WebKitAdditions
+        https://bugs.webkit.org/show_bug.cgi?id=227045
+        <rdar://problem/74333287>
+
+        Reviewed by Alex Christensen.
+
+        No new tests, covered by existing tests.
+
+        * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
+        (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):
+        (contextString): Deleted.
+        This patch deletes the contextString function because it is no longer
+        needed now that CFNetwork sets the attribution context, and it seemed
+        silly to migrate code from WebKitAdditions just to delete it
+        immediately. This also moves the processPCMRequest function
+        declaration from WebKitAdditions so we can remove
+        NETWORK_DATA_TASK_COCOA_ADDITIONS.
+
+        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
+        (WebKit::isActingOnBehalfOfAFullWebBrowser):
+        (WebKit::NetworkSessionCocoa::removeNetworkWebsiteData):
+        * UIProcess/Cocoa/WebPageProxyCocoa.mm:
+        (WebKit::WebPageProxy::setLastNavigationWasAppBound):
+
 2021-06-21  Chris Dumez  <[email protected]>
 
         [WK2] Don't process-swap on navigations within the same non-HTTP(s) protocol

Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm (279082 => 279083)


--- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm	2021-06-21 21:06:49 UTC (rev 279082)
+++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm	2021-06-21 21:25:45 UTC (rev 279083)
@@ -57,8 +57,7 @@
 #if USE(APPLE_INTERNAL_SDK)
 #import <WebKitAdditions/NetworkDataTaskCocoaAdditions.h>
 #else
-#define NETWORK_DATA_TASK_COCOA_ADDITIONS UNUSED_VARIABLE(pcmDataCarried);
-static WebCore::RegistrableDomain contextString(NSURLRequest *) { return { }; }
+static void processPCMRequest(WebCore::PrivateClickMeasurement::PcmDataCarried, NSMutableURLRequest *) { };
 #endif
 
 namespace WebKit {
@@ -338,24 +337,31 @@
 #endif
     restrictRequestReferrerToOriginIfNeeded(request);
 
-    // FIXME: Once we are done with NETWORK_DATA_TASK_COCOA_ADDITIONS, make nsRequest a RetainPtr and get rid of protectedNSRequest and pcmDataCarried.
-    NSURLRequest *nsRequest = request.nsURLRequest(WebCore::HTTPBodyUpdatePolicy::UpdateHTTPBody);
-    auto pcmDataCarried = parameters.pcmDataCarried;
+    RetainPtr<NSURLRequest> nsRequest = request.nsURLRequest(WebCore::HTTPBodyUpdatePolicy::UpdateHTTPBody);
+    RetainPtr<NSMutableURLRequest> mutableRequest = adoptNS([nsRequest.get() mutableCopy]);
 
-    NETWORK_DATA_TASK_COCOA_ADDITIONS
+#if ENABLE(APP_PRIVACY_REPORT)
+    ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+    mutableRequest.get()._isNonAppInitiated = !request.isAppBound();
+    ALLOW_DEPRECATED_DECLARATIONS_END
+#endif
 
-    auto protectedNSRequest = retainPtr(nsRequest);
-    m_session->appBoundNavigationTestingData().updateAppBoundNavigationTestingData(request, contextString(protectedNSRequest.get()));
+    if (parameters.pcmDataCarried)
+        processPCMRequest(*parameters.pcmDataCarried, mutableRequest.get());
 
-    applySniffingPoliciesAndBindRequestToInferfaceIfNeeded(protectedNSRequest, parameters.contentSniffingPolicy == WebCore::ContentSniffingPolicy::SniffContent && !url.isLocalFile(), parameters.contentEncodingSniffingPolicy == WebCore::ContentEncodingSniffingPolicy::Sniff);
+    nsRequest = mutableRequest;
 
-    m_task = [m_sessionWrapper->session dataTaskWithRequest:protectedNSRequest.get()];
+    m_session->appBoundNavigationTestingData().updateAppBoundNavigationTestingData(request, request.firstPartyForCookies().isEmpty() ? WebCore::RegistrableDomain(request.url()) : WebCore::RegistrableDomain(request.firstPartyForCookies()));
 
+    applySniffingPoliciesAndBindRequestToInferfaceIfNeeded(nsRequest, parameters.contentSniffingPolicy == WebCore::ContentSniffingPolicy::SniffContent && !url.isLocalFile(), parameters.contentEncodingSniffingPolicy == WebCore::ContentEncodingSniffingPolicy::Sniff);
+
+    m_task = [m_sessionWrapper->session dataTaskWithRequest:nsRequest.get()];
+
     WTFBeginSignpost(m_task.get(), "DataTask", "%{public}s pri: %.2f preconnect: %d", url.string().ascii().data(), toNSURLSessionTaskPriority(request.priority()), parameters.shouldPreconnectOnly == PreconnectOnly::Yes);
 
     RELEASE_ASSERT(!m_sessionWrapper->dataTaskMap.contains([m_task taskIdentifier]));
     m_sessionWrapper->dataTaskMap.add([m_task taskIdentifier], this);
-    LOG(NetworkSession, "%lu Creating NetworkDataTask with URL %s", (unsigned long)[m_task taskIdentifier], [protectedNSRequest URL].absoluteString.UTF8String);
+    LOG(NetworkSession, "%lu Creating NetworkDataTask with URL %s", (unsigned long)[m_task taskIdentifier], [nsRequest URL].absoluteString.UTF8String);
 
     if (parameters.shouldPreconnectOnly == PreconnectOnly::Yes) {
 #if ENABLE(SERVER_PRECONNECT)
@@ -372,9 +378,9 @@
     if (shouldBlockCookies) {
 #if !RELEASE_LOG_DISABLED
         if (m_session->shouldLogCookieInformation())
-            RELEASE_LOG_IF(isAlwaysOnLoggingAllowed(), Network, "%p - NetworkDataTaskCocoa::logCookieInformation: pageID=%" PRIu64 ", frameID=%" PRIu64 ", taskID=%lu: Blocking cookies for URL %s", this, pageID().toUInt64(), frameID().toUInt64(), (unsigned long)[m_task taskIdentifier], [protectedNSRequest URL].absoluteString.UTF8String);
+            RELEASE_LOG_IF(isAlwaysOnLoggingAllowed(), Network, "%p - NetworkDataTaskCocoa::logCookieInformation: pageID=%" PRIu64 ", frameID=%" PRIu64 ", taskID=%lu: Blocking cookies for URL %s", this, pageID().toUInt64(), frameID().toUInt64(), (unsigned long)[m_task taskIdentifier], [nsRequest URL].absoluteString.UTF8String);
 #else
-        LOG(NetworkSession, "%lu Blocking cookies for URL %s", (unsigned long)[m_task taskIdentifier], [protectedNSRequest URL].absoluteString.UTF8String);
+        LOG(NetworkSession, "%lu Blocking cookies for URL %s", (unsigned long)[m_task taskIdentifier], [nsRequest URL].absoluteString.UTF8String);
 #endif
         blockCookies();
     }

Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm (279082 => 279083)


--- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2021-06-21 21:06:49 UTC (rev 279082)
+++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2021-06-21 21:25:45 UTC (rev 279083)
@@ -59,10 +59,31 @@
 #import <wtf/SoftLinking.h>
 #import <wtf/URL.h>
 #import <wtf/WeakObjCPtr.h>
+#import <wtf/cocoa/VectorCocoa.h>
+#import <wtf/darwin/WeakLinking.h>
 #import <wtf/text/WTFString.h>
 
 #if USE(APPLE_INTERNAL_SDK)
 #import <WebKitAdditions/NetworkSessionCocoaAdditions.h>
+
+#if !PLATFORM(IOS_FAMILY_SIMULATOR)
+#import <Symptoms/SymptomAnalytics.h>
+#import <Symptoms/SymptomPresentationFeed.h>
+#endif
+
+#if !PLATFORM(IOS_FAMILY_SIMULATOR) && !PLATFORM(WATCHOS)
+SOFT_LINK_PRIVATE_FRAMEWORK_IN_UMBRELLA_OPTIONAL(Symptoms, SymptomAnalytics);
+SOFT_LINK_PRIVATE_FRAMEWORK_IN_UMBRELLA_OPTIONAL(Symptoms, SymptomPresentationFeed);
+SOFT_LINK_PRIVATE_FRAMEWORK_IN_UMBRELLA_OPTIONAL(Symptoms, SymptomPresentationLite);
+SOFT_LINK_CLASS_OPTIONAL(SymptomAnalytics, AnalyticsWorkspace);
+SOFT_LINK_CLASS_OPTIONAL(SymptomPresentationFeed, UsageFeed);
+SOFT_LINK_CONSTANT_MAY_FAIL(SymptomPresentationFeed, kSymptomAnalyticsServiceDomainTrackingClearHistoryBundleIDs, const NSString *);
+SOFT_LINK_CONSTANT_MAY_FAIL(SymptomPresentationFeed, kSymptomAnalyticsServiceDomainTrackingClearHistoryStartDate, const NSString *);
+SOFT_LINK_CONSTANT_MAY_FAIL(SymptomPresentationFeed, kSymptomAnalyticsServiceDomainTrackingClearHistoryEndDate, const NSString *);
+SOFT_LINK_CONSTANT_MAY_FAIL(SymptomPresentationFeed, kSymptomAnalyticsServiceDomainTrackingClearHistoryKey, const NSString *);
+SOFT_LINK_CONSTANT_MAY_FAIL(SymptomPresentationLite, kSymptomAnalyticsServiceEndpoint, NSString *)
+#endif
+
 #else
 #define NETWORK_SESSION_COCOA_ADDITIONS_1
 void WebKit::NetworkSessionCocoa::removeNetworkWebsiteData(std::optional<WallTime>, std::optional<HashSet<WebCore::RegistrableDomain>>&&, CompletionHandler<void()>&& completionHandler) { completionHandler(); }
@@ -1764,4 +1785,85 @@
 #endif
 }
 
+#if USE(APPLE_INTERNAL_SDK)
+
+#if !PLATFORM(IOS_FAMILY_SIMULATOR) && !PLATFORM(WATCHOS)
+static bool isActingOnBehalfOfAFullWebBrowser(const String& bundleID)
+{
+    return bundleID == "com.apple.webbookmarksd";
+}
+#endif
+
+void NetworkSessionCocoa::removeNetworkWebsiteData(std::optional<WallTime> modifiedSince, std::optional<HashSet<WebCore::RegistrableDomain>>&& domains, CompletionHandler<void()>&& completionHandler)
+{
+#if !PLATFORM(IOS_FAMILY_SIMULATOR) && !PLATFORM(WATCHOS)
+    auto bundleID = WebCore::applicationBundleIdentifier();
+    if (!isParentProcessAFullWebBrowser(networkProcess()) && !isActingOnBehalfOfAFullWebBrowser(bundleID))
+        return completionHandler();
+
+    if (!SymptomAnalyticsLibrary()
+        || !SymptomPresentationFeedLibrary()
+        || !SymptomPresentationLiteLibrary()
+        || !getAnalyticsWorkspaceClass()
+        || !getUsageFeedClass()
+        || !canLoadkSymptomAnalyticsServiceEndpoint()) {
+        completionHandler();
+        return;
+    }
+
+    RetainPtr<AnalyticsWorkspace> workspace = adoptNS([allocAnalyticsWorkspaceInstance() initWorkspaceWithService:getkSymptomAnalyticsServiceEndpoint()]);
+    RetainPtr<UsageFeed> usageFeed = adoptNS([allocUsageFeedInstance() initWithWorkspace:workspace.get()]);
+
+    if (![usageFeed.get() respondsToSelector:@selector(performNetworkDomainsActionWithOptions:reply:)]
+        || !canLoadkSymptomAnalyticsServiceDomainTrackingClearHistoryKey()
+        || !canLoadkSymptomAnalyticsServiceDomainTrackingClearHistoryBundleIDs()
+        || !canLoadkSymptomAnalyticsServiceDomainTrackingClearHistoryStartDate()
+        || !canLoadkSymptomAnalyticsServiceDomainTrackingClearHistoryEndDate()) {
+        completionHandler();
+        return;
+    }
+
+    auto *startDate = [NSDate distantPast];
+    if (modifiedSince) {
+        NSTimeInterval timeInterval = modifiedSince.value().secondsSinceEpoch().seconds();
+        startDate = [NSDate dateWithTimeIntervalSince1970:timeInterval];
+    }
+
+    auto contextArray = adoptNS([[NSMutableArray alloc] init]);
+    if (domains) {
+        contextArray = createNSArray(*domains, [&] (auto domain) {
+            return [NSString stringWithUTF8String:domain.string().utf8().data()];
+        });
+    }
+
+    if (isActingOnBehalfOfAFullWebBrowser(bundleID))
+        bundleID = "com.apple.mobilesafari";
+
+    NSDictionary *options = @{
+        (id)getkSymptomAnalyticsServiceDomainTrackingClearHistoryKey(): @{
+            (id)getkSymptomAnalyticsServiceDomainTrackingClearHistoryBundleIDs(): @{
+                bundleID : contextArray.get(),
+            },
+            (id)getkSymptomAnalyticsServiceDomainTrackingClearHistoryStartDate(): startDate,
+            (id)getkSymptomAnalyticsServiceDomainTrackingClearHistoryEndDate(): [NSDate distantFuture]
+        }
+    };
+
+    bool result = [usageFeed performNetworkDomainsActionWithOptions:options reply:makeBlockPtr([completionHandler = WTFMove(completionHandler)](NSDictionary *reply, NSError *error) mutable {
+        if (error)
+            LOG(NetworkSession, "Error deleting network domain data %" PUBLIC_LOG_STRING, error);
+
+        completionHandler();
+    }).get()];
+
+    if (!result)
+        LOG(NetworkSession, "Error deleting network domain data: invalid parameter or failure to contact the service");
+#else
+    UNUSED_PARAM(modifiedSince);
+    completionHandler();
+#endif
+}
+
+#endif // USE(APPLE_INTERNAL_SDK)
+
 } // namespace WebKit

Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm (279082 => 279083)


--- trunk/Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm	2021-06-21 21:06:49 UTC (rev 279082)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm	2021-06-21 21:25:45 UTC (rev 279083)
@@ -48,6 +48,7 @@
 #import "WebProcessProxy.h"
 #import "WebsiteDataStore.h"
 #import "WKErrorInternal.h"
+#import <Foundation/NSURLRequest.h>
 #import <WebCore/DragItem.h>
 #import <WebCore/GeometryUtilities.h>
 #import <WebCore/HighlightVisibility.h>
@@ -85,13 +86,6 @@
 SOFT_LINK_CLASS(WebContentAnalysis, WebFilterEvaluator);
 #endif
 
-#if USE(APPLE_INTERNAL_SDK)
-// FIXME: This additions file should be renamed to WebPageProxyAdditions.mm.
-#import <WebKitAdditions/WebPageProxyAdditions.h>
-#else
-#define WEB_PAGE_PROXY_ADDITIONS
-#endif
-
 #define MESSAGE_CHECK(assertion) MESSAGE_CHECK_BASE(assertion, process().connection())
 #define MESSAGE_CHECK_COMPLETION(assertion, completion) MESSAGE_CHECK_COMPLETION_BASE(assertion, process().connection(), completion)
 
@@ -659,7 +653,12 @@
 
 void WebPageProxy::setLastNavigationWasAppBound(ResourceRequest& request)
 {
-    WEB_PAGE_PROXY_ADDITIONS
+#if ENABLE(APP_PRIVACY_REPORT)
+    auto *nsRequest = request.nsURLRequest(WebCore::HTTPBodyUpdatePolicy::DoNotUpdateHTTPBody);
+    ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+    request.setIsAppBound(!nsRequest._isNonAppInitiated);
+    ALLOW_DEPRECATED_DECLARATIONS_END
+#endif
     m_lastNavigationWasAppBound = request.isAppBound();
 }
 

Modified: trunk/Tools/ChangeLog (279082 => 279083)


--- trunk/Tools/ChangeLog	2021-06-21 21:06:49 UTC (rev 279082)
+++ trunk/Tools/ChangeLog	2021-06-21 21:25:45 UTC (rev 279083)
@@ -1,3 +1,13 @@
+2021-06-21  Kate Cheney  <[email protected]>
+
+        Migrate App Privacy Report code from WebKitAdditions
+        https://bugs.webkit.org/show_bug.cgi?id=227045
+        <rdar://problem/74333287>
+
+        Reviewed by Alex Christensen.
+
+        * TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
+
 2021-06-21  Chris Dumez  <[email protected]>
 
         [WK2] Don't process-swap on navigations within the same non-HTTP(s) protocol

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm (279082 => 279083)


--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm	2021-06-21 21:06:49 UTC (rev 279082)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm	2021-06-21 21:25:45 UTC (rev 279083)
@@ -33,6 +33,7 @@
 #import "TestURLSchemeHandler.h"
 #import "TestWKWebView.h"
 #import "WKWebViewConfigurationExtras.h"
+#import <Foundation/NSURLRequest.h>
 #import <WebCore/RegistrableDomain.h>
 #import <WebCore/RuntimeApplicationChecks.h>
 #import <WebKit/WKHTTPCookieStorePrivate.h>
@@ -43,13 +44,10 @@
 #import <WebKit/WKWebsiteDataStorePrivate.h>
 #import <WebKit/_WKUserContentWorld.h>
 #import <WebKit/_WKUserStyleSheet.h>
+#import <pal/spi/cf/CFNetworkSPI.h>
 #import <wtf/RunLoop.h>
 #import <wtf/text/WTFString.h>
 
-#if USE(APPLE_INTERNAL_SDK)
-#import <WebKitAdditions/InAppBrowserPrivacyAdditions.h>
-#endif
-
 #if ENABLE(APP_BOUND_DOMAINS)
 
 static bool isDone;
@@ -1420,7 +1418,7 @@
 
 #endif // ENABLE(APP_BOUND_DOMAINS)
 
-#if USE(APPLE_INTERNAL_SDK) && ENABLE(APP_BOUND_REQUESTS)
+#if ENABLE(APP_PRIVACY_REPORT)
 TEST(InAppBrowserPrivacy, AppBoundRequest)
 {
     auto configuration = adoptNS([[WKWebViewConfiguration alloc] init]);
@@ -1430,8 +1428,11 @@
 
     __block bool isDone = false;
     NSMutableURLRequest *nonAppBoundRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
-    APP_BOUND_REQUEST_ADDITIONS
 
+    ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+    nonAppBoundRequest._isNonAppInitiated = YES;
+    ALLOW_DEPRECATED_DECLARATIONS_END
+
     [webView loadRequest:nonAppBoundRequest];
     [webView _test_waitForDidFinishNavigation];
 
@@ -1484,7 +1485,9 @@
     
     isDone = false;
     NSMutableURLRequest *nonAppBoundRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:nonAppBoundURL]];
-    APP_BOUND_REQUEST_ADDITIONS
+    ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+    nonAppBoundRequest._isNonAppInitiated = YES;
+    ALLOW_DEPRECATED_DECLARATIONS_END
     
     isDone = false;
     [webView _clearAppBoundNavigationData:^{
@@ -1542,7 +1545,9 @@
     __block bool isDone = false;
     auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 800, 600) configuration:configuration.get()]);
     NSMutableURLRequest *nonAppBoundRequest = [NSMutableURLRequest requestWithURL:[[NSBundle mainBundle] URLForResource:@"page-with-csp" withExtension:@"html" subdirectory:@"TestWebKitAPI.resources"]];
-    APP_BOUND_REQUEST_ADDITIONS
+    ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+    nonAppBoundRequest._isNonAppInitiated = YES;
+    ALLOW_DEPRECATED_DECLARATIONS_END
 
     [webView loadRequest:nonAppBoundRequest];
 
@@ -1622,7 +1627,9 @@
     NSURLRequest *request = server.request();
     if (appBound == IsAppBound::No) {
         NSMutableURLRequest *nonAppBoundRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://127.0.0.1:%d/", server.port()]]];
-        APP_BOUND_REQUEST_ADDITIONS
+        ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+        nonAppBoundRequest._isNonAppInitiated = YES;
+        ALLOW_DEPRECATED_DECLARATIONS_END
         request = nonAppBoundRequest;
     }
 
@@ -1730,7 +1737,9 @@
 
     isDone = false;
     NSMutableURLRequest *nonAppBoundRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://127.0.0.1:%d/main.html", server.port()]]];
-    APP_BOUND_REQUEST_ADDITIONS
+    ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+    nonAppBoundRequest._isNonAppInitiated = YES;
+    ALLOW_DEPRECATED_DECLARATIONS_END
     [webView2 loadRequest:nonAppBoundRequest];
     EXPECT_WK_STREQ([webView2 _test_waitForAlert], "fetched from server");
 
@@ -1780,7 +1789,9 @@
         NSURLRequest *request = server1.request();
         if (isAppBound == IsAppBound::No) {
             NSMutableURLRequest *nonAppBoundRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://127.0.0.1:%d/", server1.port()]]];
-            APP_BOUND_REQUEST_ADDITIONS
+            ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+            nonAppBoundRequest._isNonAppInitiated = YES;
+            ALLOW_DEPRECATED_DECLARATIONS_END
             request = nonAppBoundRequest;
         }
 
@@ -1799,7 +1810,9 @@
         NSURLRequest *request2 = server2.request();
         if (isAppBound == IsAppBound::No) {
             NSMutableURLRequest *nonAppBoundRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://127.0.0.1:%d/", server2.port()]]];
-            APP_BOUND_REQUEST_ADDITIONS
+            ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+            nonAppBoundRequest._isNonAppInitiated = YES;
+            ALLOW_DEPRECATED_DECLARATIONS_END
             request2 = nonAppBoundRequest;
         }
 
@@ -1850,7 +1863,9 @@
     NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
     if (isAppBound == IsAppBound::No) {
         NSMutableURLRequest *nonAppBoundRequest = request;
-        APP_BOUND_REQUEST_ADDITIONS
+        ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+        nonAppBoundRequest._isNonAppInitiated = YES;
+        ALLOW_DEPRECATED_DECLARATIONS_END
         request = nonAppBoundRequest;
     }
 
@@ -2005,7 +2020,9 @@
     expectedMessage = "starts app-bound";
     receivedMessage = false;
     NSMutableURLRequest *nonAppBoundRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://127.0.0.1:%d/main.html", server.port()]]];
-    APP_BOUND_REQUEST_ADDITIONS
+    ALLOW_DEPRECATED_DECLARATIONS_BEGIN
+    nonAppBoundRequest._isNonAppInitiated = YES;
+    ALLOW_DEPRECATED_DECLARATIONS_END
 
     [webView2 loadRequest:nonAppBoundRequest];
     TestWebKitAPI::Util::run(&receivedMessage);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to