Title: [283984] trunk
Revision
283984
Author
[email protected]
Date
2021-10-12 09:13:31 -0700 (Tue, 12 Oct 2021)

Log Message

Remove non-HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE) code
https://bugs.webkit.org/show_bug.cgi?id=231579

Patch by Alex Christensen <[email protected]> on 2021-10-12
Reviewed by Chris Dumez.

Source/WebCore/PAL:

* pal/spi/cf/CFNetworkSPI.h:

Source/WebKit:

* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(processServerTrustEvaluation):
(-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):

Source/WTF:

* wtf/PlatformHave.h:
This was incorrectly marked as not being available on watchOS and tvOS.  It is.

Tools:

* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(TestWebKitAPI::TEST):

Modified Paths

Diff

Modified: trunk/Source/WTF/ChangeLog (283983 => 283984)


--- trunk/Source/WTF/ChangeLog	2021-10-12 15:48:46 UTC (rev 283983)
+++ trunk/Source/WTF/ChangeLog	2021-10-12 16:13:31 UTC (rev 283984)
@@ -1,5 +1,15 @@
 2021-10-12  Alex Christensen  <[email protected]>
 
+        Remove non-HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE) code
+        https://bugs.webkit.org/show_bug.cgi?id=231579
+
+        Reviewed by Chris Dumez.
+
+        * wtf/PlatformHave.h:
+        This was incorrectly marked as not being available on watchOS and tvOS.  It is.
+
+2021-10-12  Alex Christensen  <[email protected]>
+
         Begin migration from WTF::Variant to std::variant
         https://bugs.webkit.org/show_bug.cgi?id=231086
 

Modified: trunk/Source/WTF/wtf/PlatformHave.h (283983 => 283984)


--- trunk/Source/WTF/wtf/PlatformHave.h	2021-10-12 15:48:46 UTC (rev 283983)
+++ trunk/Source/WTF/wtf/PlatformHave.h	2021-10-12 16:13:31 UTC (rev 283984)
@@ -428,10 +428,6 @@
 #define HAVE_CFNETWORK_OVERRIDE_SESSION_COOKIE_ACCEPT_POLICY 1
 #endif
 
-#if PLATFORM(COCOA) && !PLATFORM(WATCHOS) && !PLATFORM(APPLETV)
-#define HAVE_CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE 1
-#endif
-
 #if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 110000) \
     || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 140000) \
     || (PLATFORM(WATCHOS) && __WATCH_OS_VERSION_MIN_REQUIRED >= 70000) \

Modified: trunk/Source/WebCore/PAL/ChangeLog (283983 => 283984)


--- trunk/Source/WebCore/PAL/ChangeLog	2021-10-12 15:48:46 UTC (rev 283983)
+++ trunk/Source/WebCore/PAL/ChangeLog	2021-10-12 16:13:31 UTC (rev 283984)
@@ -1,3 +1,12 @@
+2021-10-12  Alex Christensen  <[email protected]>
+
+        Remove non-HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE) code
+        https://bugs.webkit.org/show_bug.cgi?id=231579
+
+        Reviewed by Chris Dumez.
+
+        * pal/spi/cf/CFNetworkSPI.h:
+
 2021-10-08  Devin Rousso  <[email protected]>
 
         [iOS][GPU Process] support `<attachment>`

Modified: trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h (283983 => 283984)


--- trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h	2021-10-12 15:48:46 UTC (rev 283983)
+++ trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h	2021-10-12 16:13:31 UTC (rev 283984)
@@ -307,9 +307,7 @@
 @end
 
 @interface NSURLSession (SPI)
-#if HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE)
 + (void)_strictTrustEvaluate:(NSURLAuthenticationChallenge *)challenge queue:(dispatch_queue_t)queue completionHandler:(void (^)(NSURLAuthenticationChallenge *challenge, OSStatus trustResult))cb;
-#endif
 #if HAVE(APP_SSO)
 + (void)_disableAppSSO;
 #endif

Modified: trunk/Source/WebKit/ChangeLog (283983 => 283984)


--- trunk/Source/WebKit/ChangeLog	2021-10-12 15:48:46 UTC (rev 283983)
+++ trunk/Source/WebKit/ChangeLog	2021-10-12 16:13:31 UTC (rev 283984)
@@ -1,3 +1,14 @@
+2021-10-12  Alex Christensen  <[email protected]>
+
+        Remove non-HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE) code
+        https://bugs.webkit.org/show_bug.cgi?id=231579
+
+        Reviewed by Chris Dumez.
+
+        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
+        (processServerTrustEvaluation):
+        (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
+
 2021-10-12  Simon Fraser  <[email protected]>
 
         Have the ScrollingTree track nodes with animated scrolls

Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm (283983 => 283984)


--- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2021-10-12 15:48:46 UTC (rev 283983)
+++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2021-10-12 16:13:31 UTC (rev 283984)
@@ -664,7 +664,6 @@
     }
 }
 
-#if HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE)
 static inline void processServerTrustEvaluation(NetworkSessionCocoa& session, SessionWrapper& sessionWrapper, NSURLAuthenticationChallenge *challenge, NegotiatedLegacyTLS negotiatedLegacyTLS, NetworkDataTaskCocoa::TaskIdentifier taskIdentifier, NetworkDataTaskCocoa* networkDataTask, CompletionHandler<void(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential *credential)>&& completionHandler)
 {
     session.continueDidReceiveChallenge(sessionWrapper, challenge, negotiatedLegacyTLS, taskIdentifier, networkDataTask, [completionHandler = WTFMove(completionHandler), secTrust = retainPtr(challenge.protectionSpace.serverTrust)] (WebKit::AuthenticationChallengeDisposition disposition, const WebCore::Credential& credential) mutable {
@@ -676,7 +675,6 @@
         completionHandler(toNSURLSessionAuthChallengeDisposition(disposition), credential.nsCredential());
     });
 }
-#endif
 
 - (NetworkSessionCocoa*)sessionFromTask:(NSURLSessionTask *)task {
     if (auto* networkDataTask = [self existingTask:task])
@@ -748,7 +746,6 @@
                 NSURLProtectionSpace *protectionSpace = challenge.protectionSpace;
                 networkDataTask->didNegotiateModernTLS(URL(URL(), makeString(String(protectionSpace.protocol), "://", String(protectionSpace.host), ':', protectionSpace.port)));
             }
-#if HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE)
             auto decisionHandler = makeBlockPtr([weakSelf = WeakObjCPtr<WKNetworkSessionDelegate>(self), sessionCocoa = makeWeakPtr(sessionCocoa), completionHandler = makeBlockPtr(completionHandler), taskIdentifier, networkDataTask = RefPtr { networkDataTask }, negotiatedLegacyTLS](NSURLAuthenticationChallenge *challenge, OSStatus trustResult) mutable {
                 auto strongSelf = weakSelf.get();
                 if (!strongSelf)
@@ -763,9 +760,6 @@
             });
             [NSURLSession _strictTrustEvaluate:challenge queue:[NSOperationQueue mainQueue].underlyingQueue completionHandler:decisionHandler.get()];
             return;
-#else
-            return completionHandler(NSURLSessionAuthChallengeRejectProtectionSpace, nil);
-#endif
         }
     }
 

Modified: trunk/Tools/ChangeLog (283983 => 283984)


--- trunk/Tools/ChangeLog	2021-10-12 15:48:46 UTC (rev 283983)
+++ trunk/Tools/ChangeLog	2021-10-12 16:13:31 UTC (rev 283984)
@@ -1,3 +1,13 @@
+2021-10-12  Alex Christensen  <[email protected]>
+
+        Remove non-HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE) code
+        https://bugs.webkit.org/show_bug.cgi?id=231579
+
+        Reviewed by Chris Dumez.
+
+        * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
+        (TestWebKitAPI::TEST):
+
 2021-10-11  Diego Pino Garcia  <[email protected]>
 
         [GTK] Unreviewed build fix. Fix build for Debian 10 (Buster)

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm (283983 => 283984)


--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm	2021-10-12 15:48:46 UTC (rev 283983)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm	2021-10-12 16:13:31 UTC (rev 283984)
@@ -619,14 +619,7 @@
 
 TEST(WebKit, FastServerTrust)
 {
-#if HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE)
     HTTPServer server(HTTPServer::respondWithOK, HTTPServer::Protocol::Https);
-#else
-    // FIXME: Remove this. HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE) is now true on all supported platforms.
-    TCPServer server(TCPServer::Protocol::HTTPS, [](SSL* ssl) {
-        EXPECT_FALSE(ssl);
-    }, std::nullopt, 2);
-#endif
     auto configuration = adoptNS([[WKWebViewConfiguration alloc] init]);
     auto dataStoreConfiguration = adoptNS([[_WKWebsiteDataStoreConfiguration alloc] init]);
     [dataStoreConfiguration setFastServerTrustEvaluationEnabled:YES];
@@ -635,16 +628,8 @@
     auto delegate = adoptNS([ServerTrustDelegate new]);
     [webView setNavigationDelegate:delegate.get()];
     [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://localhost:%d/", server.port()]]]];
-#if HAVE(CFNETWORK_NSURLSESSION_STRICTRUSTEVALUATE)
     [delegate waitForDidFinishNavigation];
     EXPECT_EQ([delegate authenticationChallengeCount], 1ull);
-#else
-    NSError *error = [delegate waitForDidFailProvisionalNavigationError];
-    EXPECT_WK_STREQ([error.userInfo[_WKRecoveryAttempterErrorKey] className], @"WKReloadFrameErrorRecoveryAttempter");
-    EXPECT_WK_STREQ(error.domain, NSURLErrorDomain);
-    EXPECT_EQ(error.code, NSURLErrorServerCertificateUntrusted);
-    EXPECT_EQ([delegate authenticationChallengeCount], 0ull);
-#endif
 }
 
 TEST(WebKit, ErrorSecureCoding)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to