Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 678ece22c6542a1ae99472c11d2204bd93be7ea1 https://github.com/WebKit/WebKit/commit/678ece22c6542a1ae99472c11d2204bd93be7ea1 Author: Matthew Finkel <m_fin...@apple.com> Date: 2024-07-26 (Fri, 26 Jul 2024)
Changed paths: M Source/WebCore/loader/FrameLoader.cpp M Source/WebCore/loader/ResourceLoader.cpp M Source/WebCore/loader/cache/CachedResourceLoader.cpp M Source/WebCore/loader/cache/CachedResourceLoader.h M Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp M Tools/TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm M Tools/WebKitTestRunner/TestController.cpp Log Message: ----------- Align https-by-default upgrade logic with mixed-content upgrading https://bugs.webkit.org/show_bug.cgi?id=277053 rdar://132444853 Reviewed by Alex Christensen. This patch performs https upgrade for an initial resource request, and on redirect, similar to mixed content. This patch also leverages ResourceRequest::wasSchemeOptimisticallyUpgraded() to make a decision about whether we are in a redirect loop, instead of re-evaluating whether https-by-default is enabled. I also moved setting a shorter time-out for optimistically upgraded requests into the NetworkResourceLoader. In the future I want to experiment with setting a value that is more appropriate for the current network, and tracking those measurements should happen in the network process. Also I'm disabling the preference in WTR. Some tests are failing on some ports, but not all. I want to keep this as testable. No new tests, covered by existing tests, and: 1) move from [webView _mainFrameURL] to [webView URL] 2) Adjust one subtest to account for moving the upgrading behavior for redirects into CachedResourceLoader::updateRequestAfterRedirection. * Source/WebCore/loader/FrameLoader.cpp: (WebCore::FrameLoader::changeLocation): * Source/WebCore/loader/ResourceLoader.cpp: (WebCore::ResourceLoader::willSendRequestInternal): * Source/WebCore/loader/cache/CachedResourceLoader.cpp: (WebCore::shouldPerformHTTPSUpgrade): (WebCore::CachedResourceLoader::updateRequestAfterRedirection): (WebCore::CachedResourceLoader::requestResource): (WebCore::CachedResourceLoader::shouldUpgradeRequestforHTTPSOnly const): Deleted. (WebCore::CachedResourceLoader::upgradeRequestforHTTPSOnlyIfNeeded const): Deleted. * Source/WebCore/loader/cache/CachedResourceLoader.h: * Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::startNetworkLoad): * Tools/TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm: (TEST(WKNavigation, HTTPSFirstHTTPDowngrade)): (TEST(WKNavigation, HTTPSFirstHTTPDowngradeRedirect)): (TEST(WKNavigation, HTTPSFirstLocalHostIPAddress)): (TEST(WKNavigation, HTTPSOnlyInitialLoad)): (TEST(WKNavigation, HTTPSOnlyHTTPFallback)): (TEST(WKNavigation, HTTPSOnlyHTTPFallbackBypassEnabledCertificateError)): (TEST(WKNavigation, HTTPSOnlyWithSameSiteBypass)): (TEST(WKNavigation, HTTPSOnlyWithHTTPRedirect)): * Tools/WebKitTestRunner/TestController.cpp: (WTR::TestController::resetPreferencesToConsistentValues): Canonical link: https://commits.webkit.org/281429@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes