[webkit-changes] [WebKit/WebKit] 5c92b6: ITP: Add quirk to allow google.com first party coo...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 5c92b693e90814ca9c95750b6b1344e05e24543e https://github.com/WebKit/WebKit/commit/5c92b693e90814ca9c95750b6b1344e05e24543e Author: John Wilander Date: 2022-12-13 (Tue, 13 Dec 2022) Changed paths: M Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm Log Message: --- ITP: Add quirk to allow google.com first party cookie access when redirected to by third-party googleusercontent.com https://bugs.webkit.org/show_bug.cgi?id=249260 Reviewed by Brent Fulgham. * Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::needsFirstPartyCookieBlockingLatchModeQuirk const): Canonical link: https://commits.webkit.org/257826@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] df01a6: [SKAdNetwork for Web Ads] Safari/WebKit should ind...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: df01a61834c787c2cf953136a42e4b25b5f645e1 https://github.com/WebKit/WebKit/commit/df01a61834c787c2cf953136a42e4b25b5f645e1 Author: John Wilander Date: 2022-10-13 (Thu, 13 Oct 2022) Changed paths: M Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm Log Message: --- [SKAdNetwork for Web Ads] Safari/WebKit should indicate version as "4.0" when calling SKAdNetwork SPI https://bugs.webkit.org/show_bug.cgi?id=246479 Reviewed by Alex Christensen. * Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::donateToSKAdNetwork): Canonical link: https://commits.webkit.org/255514@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [287970] trunk
Title: [287970] trunk Revision 287970 Author wilan...@apple.com Date 2022-01-12 19:23:40 -0800 (Wed, 12 Jan 2022) Log Message PCM: Same-site triggering events should support ephemeral measurement https://bugs.webkit.org/show_bug.cgi?id=235160 Reviewed by Alex Christensen. Source/WebCore: We added ephemeral measurement for direct response advertising in https://bugs.webkit.org/show_bug.cgi?id=228984. We added support for same-site triggering events in https://bugs.webkit.org/show_bug.cgi?id=233173. These two features should work together. The bug was that WebKit::NetworkSession::handlePrivateClickMeasurementConversion() only checked for cross-site triggering events when handling ephemeral measurements. Test: http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral.html * loader/PrivateClickMeasurement.cpp: (WebCore::PrivateClickMeasurement::isNeitherSameSiteNorCrossSiteTriggeringEvent): New convenience function to enhance readability in WebKit::NetworkSession::handlePrivateClickMeasurementConversion(). * loader/PrivateClickMeasurement.h: Source/WebKit: We added ephemeral measurement for direct response advertising in https://bugs.webkit.org/show_bug.cgi?id=228984. We added support for same-site triggering events in https://bugs.webkit.org/show_bug.cgi?id=233173. These two features should work together. * NetworkProcess/NetworkSession.cpp: (WebKit::NetworkSession::handlePrivateClickMeasurementConversion): This function previously only checked for cross-site triggering events when handling ephemeral measurements. Now it also checks for same-site triggering events. LayoutTests: * http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral-expected.txt: Added. * http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp Added Paths trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral.html Diff Modified: trunk/LayoutTests/ChangeLog (287969 => 287970) --- trunk/LayoutTests/ChangeLog 2022-01-13 03:21:22 UTC (rev 287969) +++ trunk/LayoutTests/ChangeLog 2022-01-13 03:23:40 UTC (rev 287970) @@ -1,3 +1,14 @@ +2022-01-12 John Wilander + +PCM: Same-site triggering events should support ephemeral measurement +https://bugs.webkit.org/show_bug.cgi?id=235160 + + +Reviewed by Alex Christensen. + +* http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral-expected.txt: Added. +* http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral.html: Added. + 2022-01-12 Diego Pino Garcia [GTK][WPE] Unreviewed test gardening, merge common WebRTC test failures Added: trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral-expected.txt (0 => 287970) --- trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral-expected.txt 2022-01-13 03:23:40 UTC (rev 287970) @@ -0,0 +1,16 @@ +CONSOLE MESSAGE: [Private Click Measurement] Triggering event was not accepted because the conversion data could not be parsed or was higher than the allowed maximum of 15. +CONSOLE MESSAGE: Origin http://localhost:8000 is not allowed by Access-Control-Allow-Origin. Status code: 404 +CONSOLE MESSAGE: Fetch API cannot load https://localhost:8443/.well-known/private-click-measurement/trigger-attribution/Dummy?attributionSource=https://127.0.0.1 due to access control checks. +Tests triggering of ephemeral private click measurement attribution with same-site triggering event request. + + +Attributed Private Click Measurements: +WebCore::PrivateClickMeasurement 1 +Source site: 127.0.0.1 +Attribute on site: localhost +Source ID: 3 +Attribution trigger data: 12 +Attribution priority: 0 +Attribution earliest time to send: Within 24-48 hours +Destination token: Not set +Application bundle identifier: testBundleID Added: trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-ephemeral.html (0 => 287970) --- trunk/LayoutTests/h
[webkit-changes] [287665] trunk/Source/WTF
Title: [287665] trunk/Source/WTF Revision 287665 Author wilan...@apple.com Date 2022-01-05 18:12:18 -0800 (Wed, 05 Jan 2022) Log Message Change version number for HAVE_RSA_PSS_OID https://bugs.webkit.org/show_bug.cgi?id=234904 Reviewed by Alex Christensen. * wtf/PlatformHave.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h Diff Modified: trunk/Source/WTF/ChangeLog (287664 => 287665) --- trunk/Source/WTF/ChangeLog 2022-01-06 02:09:04 UTC (rev 287664) +++ trunk/Source/WTF/ChangeLog 2022-01-06 02:12:18 UTC (rev 287665) @@ -1,3 +1,13 @@ +2022-01-05 John Wilander + +Change version number for HAVE_RSA_PSS_OID +https://bugs.webkit.org/show_bug.cgi?id=234904 + + +Reviewed by Alex Christensen. + +* wtf/PlatformHave.h: + 2022-01-05 Tim Horton Momentum Event Dispatcher: Momentum tails may get truncated if the duration runs longer than the system's Modified: trunk/Source/WTF/wtf/PlatformHave.h (287664 => 287665) --- trunk/Source/WTF/wtf/PlatformHave.h 2022-01-06 02:09:04 UTC (rev 287664) +++ trunk/Source/WTF/wtf/PlatformHave.h 2022-01-06 02:12:18 UTC (rev 287665) @@ -942,10 +942,10 @@ #define HAVE_VM_FLAGS_PERMANENT 1 #endif -#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 120400) \ -|| (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 150400) \ -|| (PLATFORM(APPLETV) && __TV_OS_VERSION_MAX_ALLOWED >= 150400) \ -|| (PLATFORM(WATCHOS) && __WATCH_OS_VERSION_MAX_ALLOWED >= 80400) +#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 120300) \ +|| (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 150300) \ +|| (PLATFORM(APPLETV) && __TV_OS_VERSION_MAX_ALLOWED >= 150300) \ +|| (PLATFORM(WATCHOS) && __WATCH_OS_VERSION_MAX_ALLOWED >= 80300) #define HAVE_RSA_PSS_OID 1 #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [287123] trunk/Tools
Title: [287123] trunk/Tools Revision 287123 Author wilan...@apple.com Date 2021-12-15 19:33:41 -0800 (Wed, 15 Dec 2021) Log Message TestWebKitAPI.PrivateClickMeasurement.MigrateWithDestinationToken is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=234335 Unreviewed test gardening. * TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm: (cleanUp): Made the function sleep-wait until the file is indeed deleted. Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm Diff Modified: trunk/Tools/ChangeLog (287122 => 287123) --- trunk/Tools/ChangeLog 2021-12-16 02:15:38 UTC (rev 287122) +++ trunk/Tools/ChangeLog 2021-12-16 03:33:41 UTC (rev 287123) @@ -1,3 +1,15 @@ +2021-12-15 John Wilander + +TestWebKitAPI.PrivateClickMeasurement.MigrateWithDestinationToken is a flaky failure +https://bugs.webkit.org/show_bug.cgi?id=234335 + + +Unreviewed test gardening. + +* TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm: +(cleanUp): +Made the function sleep-wait until the file is indeed deleted. + 2021-12-15 Jonathan Bedard [reporelaypy] Forward branches to alternate remote Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm (287122 => 287123) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm 2021-12-16 02:15:38 UTC (rev 287122) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm 2021-12-16 03:33:41 UTC (rev 287123) @@ -316,6 +316,8 @@ NSFileManager *defaultFileManager = NSFileManager.defaultManager; NSString *itpRoot = WKWebsiteDataStore.defaultDataStore._configuration._resourceLoadStatisticsDirectory.path; [defaultFileManager removeItemAtPath:itpRoot error:nil]; +while ([defaultFileManager fileExistsAtPath:itpRoot]) +usleep(1); EXPECT_FALSE([defaultFileManager fileExistsAtPath:itpRoot]); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [287013] trunk
Title: [287013] trunk Revision 287013 Author wilan...@apple.com Date 2021-12-13 23:56:44 -0800 (Mon, 13 Dec 2021) Log Message PCM: Remove old DB update and migration code, and add a unit test for destination token DB columns https://bugs.webkit.org/show_bug.cgi?id=234281 Reviewed by Alex Christensen and Kate Cheney. Source/WebKit: WebKit::Database::needsUpdatedSchema() in PrivateClickMeasurement.cpp has a comment saying it should be removed late 2021. WebKit::DatabaseUtilities::migrateDataToNewTablesIfNecessary() returns directly if WebKit::Database::needsUpdatedSchema() returns false so always returning false for WebKit::Database::needsUpdatedSchema() in PrivateClickMeasurement.cpp effectively disables WebKit::DatabaseUtilities::migrateDataToNewTablesIfNecessary() for PCM. New unit/API test PrivateClickMeasurement.MigrateWithDestinationToken added. * NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementDatabase.cpp: (WebKit::PCM::Database::Database): No longer calls the deleted DatabaseUtilities::migrateDataToNewTablesIfNecessary(). (WebKit::PCM::Database::attributionToStringForTesting const): Now outputs destination token info. (WebKit::PCM::Database::needsUpdatedSchema): Deleted. * NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementDatabase.h: needsUpdatedSchema() now always returns false. Tools: * TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm: (addAttributedPCMv5): (pollUntilPCMIsMigrated): Now takes a parameter UsingDestinationToken and handles its expectation accordingly. (TEST): New test PrivateClickMeasurement.MigrateWithDestinationToken. LayoutTests: These expect files are just updated with destination token dump output. * http/tests/privateClickMeasurement/attribution-conversion-through-fetch-keepalive-expected.txt: * http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral-expected.txt: * http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window-expected.txt: * http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority-expected.txt: * http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-without-priority-expected.txt: * http/tests/privateClickMeasurement/second-attribution-converted-with-higher-priority-expected.txt: * http/tests/privateClickMeasurement/second-attribution-converted-with-lower-priority-expected.txt: * http/tests/privateClickMeasurement/second-conversion-with-higher-priority-expected.txt: * http/tests/privateClickMeasurement/second-conversion-with-lower-priority-expected.txt: * http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-fetch-keepalive-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-without-priority-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/second-attribution-converted-with-higher-priority-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/second-attribution-converted-with-lower-priority-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/second-conversion-with-higher-priority-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/second-conversion-with-lower-priority-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-expected.txt trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementDatabase.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementDatabase.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm Diff Modified: trunk/LayoutTests/ChangeLog (287012 => 287013) --- trunk/LayoutTests/ChangeLog 2021-12-14 07:07:39 UTC (rev 287012) +++ trunk/LayoutTests/ChangeLog 2021-12-14 07:56:44 UTC (rev 287013) @@ -1,3 +1,24 @@ +2021-12-13 John Wilander + +PCM: Remove old DB update and migration code, and add a unit test for destination token DB columns +https://bugs.webkit.org/show_bug.cgi?id=234281 + + +Reviewed by Alex Christensen and Kate Cheney. + +These expect files are just updated with destination token dump output. + +* http/tests/privateClickMeasurement/attribution-conversion-through-fetch-keepalive-expected.
[webkit-changes] [286582] trunk/Tools
Title: [286582] trunk/Tools Revision 286582 Author wilan...@apple.com Date 2021-12-06 17:19:58 -0800 (Mon, 06 Dec 2021) Log Message Add WebCore::RegistrableDomain tests for duplicate sub domains https://bugs.webkit.org/show_bug.cgi?id=233902 Unreviewed expansion of the RegistrableDomain.MatchesURLs API test. https://bugs.webkit.org/show_bug.cgi?id=20 claims that duplicate sub domains such as news.news.example.com causes WebKit's RegistrableDomain matching to fail and treat same-site content as cross-site. This patch add tests of such duplicate sub domains. * TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp: (TestWebKitAPI::TEST): Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp Diff Modified: trunk/Tools/ChangeLog (286581 => 286582) --- trunk/Tools/ChangeLog 2021-12-07 01:15:26 UTC (rev 286581) +++ trunk/Tools/ChangeLog 2021-12-07 01:19:58 UTC (rev 286582) @@ -1,3 +1,19 @@ +2021-12-06 John Wilander + +Add WebCore::RegistrableDomain tests for duplicate sub domains +https://bugs.webkit.org/show_bug.cgi?id=233902 + + +Unreviewed expansion of the RegistrableDomain.MatchesURLs API test. + +https://bugs.webkit.org/show_bug.cgi?id=20 claims that duplicate sub domains +such as news.news.example.com causes WebKit's RegistrableDomain matching to fail +and treat same-site content as cross-site. This patch add tests of such duplicate +sub domains. + +* TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp: +(TestWebKitAPI::TEST): + 2021-12-06 Brady Eidson webpushd/webpushtool debugging additions Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp (286581 => 286582) --- trunk/Tools/TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp 2021-12-07 01:15:26 UTC (rev 286581) +++ trunk/Tools/TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp 2021-12-07 01:19:58 UTC (rev 286582) @@ -58,13 +58,19 @@ URL webkitURL { URL(), "https://webkit.org" }; URL webkitURLWithPath { URL(), "https://webkit.org/road/to/nowhere/" }; URL webkitSubdomainURL { URL(), "https://sub.domain.webkit.org" }; +URL webkitOtherSubdomainURL { URL(), "https://sub.other.webkit.org" }; +URL webkitDuplicateSubdomainURL { URL(), "https://domain.domain.webkit.org" }; URL webkitSubdomainURLWithPath { URL(), "https://sub.domain.webkit.org/road/to/nowhere/" }; RegistrableDomain webkitDomain { webkitURL }; +RegistrableDomain webkitSubdomain { webkitSubdomainURL }; ASSERT_TRUE(webkitDomain.matches(webkitURL)); ASSERT_TRUE(webkitDomain.matches(webkitURLWithPath)); ASSERT_TRUE(webkitDomain.matches(webkitSubdomainURL)); +ASSERT_TRUE(webkitDomain.matches(webkitDuplicateSubdomainURL)); ASSERT_TRUE(webkitDomain.matches(webkitSubdomainURLWithPath)); +ASSERT_TRUE(webkitSubdomain.matches(webkitOtherSubdomainURL)); +ASSERT_TRUE(webkitSubdomain.matches(webkitDuplicateSubdomainURL)); URL localhostURL { URL(), "http://localhost" }; URL localhostURLWithPath { URL(), "http://localhost/road/to/nowhere/" }; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [285967] trunk
orkProcess/PrivateClickMeasurement/PrivateClickMeasurementStore.h: Source/WTF: * wtf/URL.cpp: (WTF::queryParameters): New convenience getter. * wtf/URL.h: Tools: These changes are just a correction of a function name: sourceUnlinkableToken() to sourceSecretToken() * TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp: (TestWebKitAPI::TEST): * TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm: (TestWebKitAPI::TEST): LayoutTests: * http/tests/privateClickMeasurement/resources/redirectToConversionWithAttributionSource.py: Added. * http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-expected.txt: Added. * http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/URL.cpp trunk/Source/WTF/wtf/URL.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLAnchorElement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementDatabase.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManager.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManager.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementStore.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementStore.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm Added Paths trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionWithAttributionSource.py trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive.html Diff Modified: trunk/LayoutTests/ChangeLog (285966 => 285967) --- trunk/LayoutTests/ChangeLog 2021-11-18 00:38:36 UTC (rev 285966) +++ trunk/LayoutTests/ChangeLog 2021-11-18 01:08:40 UTC (rev 285967) @@ -1,3 +1,15 @@ +2021-11-17 John Wilander + +PCM: Add capability for click destination to fire triggering event without cross-site requests to the click source +https://bugs.webkit.org/show_bug.cgi?id=233173 + + +Reviewed by Alex Christensen. + +* http/tests/privateClickMeasurement/resources/redirectToConversionWithAttributionSource.py: Added. +* http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive-expected.txt: Added. +* http/tests/privateClickMeasurement/triggering-event-with-attribution-source-through-fetch-keepalive.html: Added. + 2021-11-17 Ryan Haddad [iOS] imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_block_downloads.tentative.html is frequently failing Added: trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionWithAttributionSource.py (0 => 285967) --- trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionWithAttributionSource.py (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionWithAttributionSource.py 2021-11-18 01:08:40 UTC (rev 285967) @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 + +import os +import sys +import time +from urllib.parse import parse_qs + +query = parse_qs(os.environ.get('QUERY_STRING', ''), keep_blank_values=True) +delay_ms = query.get('delay_ms', [None])[0] +conversion_data = query.get('conversionData', [None])[0] +priority = query.get('priority', [None])[0] + +if delay_ms is not None: +time.sleep(int(delay_ms) * 0.001) + +sys.stdout.write( +'status: 302\r\n' +'Cache-Control: no-cache, no-store, must-revalidate\r\n' +'Access-Control-Allow-Origin: *\r\n' +'Access-Control-Allow-Methods: GET\r\n' +'Content-Type: text/html\r\n' +) + +if conversion_data is not None and priority is not None: +sys.stdout.write('Location: /.well-known/private-click-measurement/trigger-attribution/{}/{}?attributionSource=https://127.0.0.1\r\n'.format(conversion_data, priority)) +elif conversion_data is not None: +sys.stdout.write('Location: /.well-known/private-click-measurement/trigger-attribution/{}?attributionSource=https://127.0.0.1\r\n'.format(conversion_data)) + +sys.stdout.write('\r\n') Property changes on: trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionWithAttributionSo
[webkit-changes] [284899] trunk/LayoutTests
Title: [284899] trunk/LayoutTests Revision 284899 Author wilan...@apple.com Date 2021-10-26 14:39:45 -0700 (Tue, 26 Oct 2021) Log Message [ iOS 15 ] ASSERTION FAILED: isRunningTest(WebCore::applicationBundleIdentifier()) https://bugs.webkit.org/show_bug.cgi?id=231255 Kate's fix in https://commits.webkit.org/r284897 should now have removed the cause of these assertion failures. Unreviewed test gardening. * platform/ios-wk2/TestExpectations: Removed test expectation that was added in https://trac.webkit.org/changeset/284881/webkit Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-wk2/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (284898 => 284899) --- trunk/LayoutTests/ChangeLog 2021-10-26 21:36:10 UTC (rev 284898) +++ trunk/LayoutTests/ChangeLog 2021-10-26 21:39:45 UTC (rev 284899) @@ -1,3 +1,16 @@ +2021-10-26 John Wilander + +[ iOS 15 ] ASSERTION FAILED: isRunningTest(WebCore::applicationBundleIdentifier()) +https://bugs.webkit.org/show_bug.cgi?id=231255 + +Kate's fix in https://commits.webkit.org/r284897 should now have removed the +cause of these assertion failures. + +Unreviewed test gardening. + +* platform/ios-wk2/TestExpectations: +Removed test expectation that was added in https://trac.webkit.org/changeset/284881/webkit + 2021-10-26 Chris Dumez error event should be fired at
[webkit-changes] [284848] trunk
Title: [284848] trunk Revision 284848 Author wilan...@apple.com Date 2021-10-25 16:39:50 -0700 (Mon, 25 Oct 2021) Log Message Remove assert failure expectations after r284846 landed https://bugs.webkit.org/show_bug.cgi?id=232048 https://bugs.webkit.org/show_bug.cgi?id=232102 https://bugs.webkit.org/show_bug.cgi?id=231255 https://bugs.webkit.org/show_bug.cgi?id=231431 Unreviewed test gardening. Depends on this fix: https://trac.webkit.org/changeset/284846/webkit Source/WebKit: * NetworkProcess/NetworkSession.cpp: (WebKit::NetworkSession::setPrivateClickMeasurementAppBundleIDForTesting): Removed comment with Bugzilla reference. I decided to keep the logging since it was so useful in finding the root cause of the assertion crashes. Logging is only triggered when we will fail the assertion. LayoutTests: * platform/ios-wk2/TestExpectations: Removed crash expectations now that the app bundle ID setting for InAppBrowserPrivacy API tests is being cleared after each test. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-wk2/TestExpectations trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp Diff Modified: trunk/LayoutTests/ChangeLog (284847 => 284848) --- trunk/LayoutTests/ChangeLog 2021-10-25 23:33:27 UTC (rev 284847) +++ trunk/LayoutTests/ChangeLog 2021-10-25 23:39:50 UTC (rev 284848) @@ -1,3 +1,23 @@ +2021-10-25 John Wilander + +Remove assert failure expectations after r284846 landed +https://bugs.webkit.org/show_bug.cgi?id=232048 + +https://bugs.webkit.org/show_bug.cgi?id=232102 + +https://bugs.webkit.org/show_bug.cgi?id=231255 + +https://bugs.webkit.org/show_bug.cgi?id=231431 + + +Unreviewed test gardening. + +Depends on this fix: https://trac.webkit.org/changeset/284846/webkit + +* platform/ios-wk2/TestExpectations: +Removed crash expectations now that the app bundle ID setting for InAppBrowserPrivacy +API tests is being cleared after each test. + 2021-10-25 Eric Hutchison [ Mac wk1 ] 2 media-capabilities/webrtc tests are flaky failures. Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (284847 => 284848) --- trunk/LayoutTests/platform/ios-wk2/TestExpectations 2021-10-25 23:33:27 UTC (rev 284847) +++ trunk/LayoutTests/platform/ios-wk2/TestExpectations 2021-10-25 23:39:50 UTC (rev 284848) @@ -2150,12 +2150,6 @@ webkit.org/b/222563 [ Release ] http/tests/loading/basic-auth-load-URL-with-consecutive-slashes.html [ Pass Failure ] -webkit.org/b/231255 http/tests/privateClickMeasurement/attribution-conversion-through-cross-site-image-redirect.html [ Pass Crash ] - -webkit.org/b/231431 http/tests/privateClickMeasurement/attribution-conversion-through-fetch-keepalive.html [ Pass Crash ] - -webkit.org/b/231748 http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral.html [ Pass Crash ] - webkit.org/b/229563 imported/w3c/web-platform-tests/css/css-display/display-contents-blockify-dynamic.html [ Pass Timeout ] webkit.org/b/229567 [ Release ] imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip.html [ Pass ImageOnlyFailure ] @@ -2228,8 +,6 @@ webkit.org/b/232099 imported/w3c/web-platform-tests/websockets/Close-1000.any.html [ Pass Crash ] -webkit.org/b/232102 http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html [ Pass Crash ] - webkit.org/b/232120 imported/w3c/web-platform-tests/content-security-policy/script-src/script-src-multiple-policies-multiple-hashing-algorithms.html [ Pass Failure DumpJSConsoleLogInStdErr ] webkit.org/b/225528 http/wpt/fetch/fetch-response-body-stop-in-worker.html [ Pass Crash ] Modified: trunk/Source/WebKit/ChangeLog (284847 => 284848) --- trunk/Source/WebKit/ChangeLog 2021-10-25 23:33:27 UTC (rev 284847) +++ trunk/Source/WebKit/ChangeLog 2021-10-25 23:39:50 UTC (rev 284848) @@ -1,3 +1,26 @@ +2021-10-25 John Wilander + +Remove assert failure expectations after r284846 landed +https://bugs.webkit.org/show_bug.cgi?id=232048 + +https://bugs.webkit.org/show_bug.cgi?id=232102 + +https://bugs.webkit.org/show_bug.cgi?id=231255 + +https://bugs.webkit.org/show_bug.cgi?id=231431 + + +Unreviewed test gardening. + +Depends on this fix: https://trac.webkit.org/changeset/284846/webkit + +* NetworkProcess/NetworkSession.cpp: +(WebKit::NetworkSession::setPrivateClickMeasurementAppBundleIDForTesting): +Removed comment with Bugzilla reference. +I decided to keep the logging since it was so useful in finding the root +cause of the assertion crashes. Logging is only triggered when we will +fail the assertion. + 2021-10-25 Wen
[webkit-changes] [284653] trunk/LayoutTests
Title: [284653] trunk/LayoutTests Revision 284653 Author wilan...@apple.com Date 2021-10-21 16:46:00 -0700 (Thu, 21 Oct 2021) Log Message PCM: Change expectation to pass so we can investigate http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html https://bugs.webkit.org/show_bug.cgi?id=232115 Unreviewed test gardening. * platform/ios-wk2/TestExpectations: Removed expectation added in https://trac.webkit.org/changeset/284572/webkit. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-wk2/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (284652 => 284653) --- trunk/LayoutTests/ChangeLog 2021-10-21 23:13:02 UTC (rev 284652) +++ trunk/LayoutTests/ChangeLog 2021-10-21 23:46:00 UTC (rev 284653) @@ -1,3 +1,13 @@ +2021-10-21 John Wilander + +PCM: Change expectation to pass so we can investigate http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html +https://bugs.webkit.org/show_bug.cgi?id=232115 + +Unreviewed test gardening. + +* platform/ios-wk2/TestExpectations: +Removed expectation added in https://trac.webkit.org/changeset/284572/webkit. + 2021-10-21 Sihui Liu FileSystemSyncAccessHandle should close platform file handle on close() Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (284652 => 284653) --- trunk/LayoutTests/platform/ios-wk2/TestExpectations 2021-10-21 23:13:02 UTC (rev 284652) +++ trunk/LayoutTests/platform/ios-wk2/TestExpectations 2021-10-21 23:46:00 UTC (rev 284653) @@ -2230,8 +2230,6 @@ webkit.org/b/231780 [ Debug ] imported/w3c/web-platform-tests/webrtc/simulcast/basic.https.html [ Pass Failure ] -webkit.org/b/232048 http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html [ Pass Crash ] - webkit.org/b/232099 imported/w3c/web-platform-tests/websockets/Close-1000.any.html [ Pass Crash ] webkit.org/b/232102 http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html [ Pass Crash ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [284649] trunk/Source/WebKit
Title: [284649] trunk/Source/WebKit Revision 284649 Author wilan...@apple.com Date 2021-10-21 15:28:30 -0700 (Thu, 21 Oct 2021) Log Message PCM: Add temporary logging when isRunningTest() assertion is about to fail to be able to investigate https://bugs.webkit.org/show_bug.cgi?id=232108 Unreviewed. Just adding logging for test-only functionality. This patch adds logging to when we are about to fail the assert of isRunningTest() in WebKit::NetworkSession::setPrivateClickMeasurementAppBundleIDForTesting)(). This is added to help investigate https://bugs.webkit.org/show_bug.cgi?id=232048. * NetworkProcess/NetworkSession.cpp: (WebKit::NetworkSession::setPrivateClickMeasurementAppBundleIDForTesting): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (284648 => 284649) --- trunk/Source/WebKit/ChangeLog 2021-10-21 21:49:28 UTC (rev 284648) +++ trunk/Source/WebKit/ChangeLog 2021-10-21 22:28:30 UTC (rev 284649) @@ -1,3 +1,17 @@ +2021-10-21 John Wilander + +PCM: Add temporary logging when isRunningTest() assertion is about to fail to be able to investigate +https://bugs.webkit.org/show_bug.cgi?id=232108 + +Unreviewed. Just adding logging for test-only functionality. + +This patch adds logging to when we are about to fail the assert of isRunningTest() in +WebKit::NetworkSession::setPrivateClickMeasurementAppBundleIDForTesting)(). This is +added to help investigate https://bugs.webkit.org/show_bug.cgi?id=232048. + +* NetworkProcess/NetworkSession.cpp: +(WebKit::NetworkSession::setPrivateClickMeasurementAppBundleIDForTesting): + 2021-10-21 Simon Fraser Rare crash under DisplayLink::displayLinkCallback() Modified: trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp (284648 => 284649) --- trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp 2021-10-21 21:49:28 UTC (rev 284648) +++ trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp 2021-10-21 22:28:30 UTC (rev 284649) @@ -455,6 +455,10 @@ void NetworkSession::setPrivateClickMeasurementAppBundleIDForTesting(String&& appBundleIDForTesting) { #if PLATFORM(COCOA) +// FIXME: Remove this logging once https://bugs.webkit.org/show_bug.cgi?id=232048 has been resolved. +auto appBundleID = WebCore::applicationBundleIdentifier(); +if (!isRunningTest(appBundleID)) +WTFLogAlways("isRunningTest() returned false. appBundleID is %s.", appBundleID.isEmpty() ? "empty" : appBundleID.utf8().data()); RELEASE_ASSERT(isRunningTest(WebCore::applicationBundleIdentifier())); #endif privateClickMeasurement().setPrivateClickMeasurementAppBundleIDForTesting(WTFMove(appBundleIDForTesting)); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [284473] trunk/LayoutTests
Title: [284473] trunk/LayoutTests Revision 284473 Author wilan...@apple.com Date 2021-10-19 11:43:20 -0700 (Tue, 19 Oct 2021) Log Message http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=231379 Reviewed by Chris Dumez. * http/tests/resourceLoadStatistics/resources/redirect.py: Added the response header 'Cache-Control: no-cache, no-store'. Historically, we've had problems with redirects getting cached so that they don't hit the network. In this particular case, the same redirect is being done in different orders and might fall into the cache trap. * platform/mac-wk2/TestExpectations: Removed [Pass Failure] expectation for sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/redirect.py trunk/LayoutTests/platform/mac-wk2/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (284472 => 284473) --- trunk/LayoutTests/ChangeLog 2021-10-19 18:41:13 UTC (rev 284472) +++ trunk/LayoutTests/ChangeLog 2021-10-19 18:43:20 UTC (rev 284473) @@ -1,3 +1,20 @@ +2021-10-19 John Wilander + +http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html is a flaky failure +https://bugs.webkit.org/show_bug.cgi?id=231379 + + +Reviewed by Chris Dumez. + +* http/tests/resourceLoadStatistics/resources/redirect.py: +Added the response header 'Cache-Control: no-cache, no-store'. +Historically, we've had problems with redirects getting cached +so that they don't hit the network. In this particular case, +the same redirect is being done in different orders and might +fall into the cache trap. +* platform/mac-wk2/TestExpectations: +Removed [Pass Failure] expectation for sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html. + 2021-10-19 Youenn Fablet Guarantee order of WebSocket events in case of being resumed Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/redirect.py (284472 => 284473) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/redirect.py 2021-10-19 18:41:13 UTC (rev 284472) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/redirect.py 2021-10-19 18:43:20 UTC (rev 284473) @@ -7,12 +7,12 @@ query = parse_qs(os.environ.get('QUERY_STRING', ''), keep_blank_values=True) redirect_url = query.get('redirectTo', [''])[0] -sys.stdout.write('Content-Type: text/html\r\n') - for name in ['name2', 'name3', 'message']: query_name = query.get(name, [None])[0] if query_name: redirect_url += '&{}={}'.format(name, query_name) +sys.stdout.write('Content-Type: text/html\r\n') +sys.stdout.write('Cache-Control: no-cache, no-store\r\n') sys.stdout.write('Location: {}\r\n\r\n'.format(redirect_url)) sys.exit(0) \ No newline at end of file Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (284472 => 284473) --- trunk/LayoutTests/platform/mac-wk2/TestExpectations 2021-10-19 18:41:13 UTC (rev 284472) +++ trunk/LayoutTests/platform/mac-wk2/TestExpectations 2021-10-19 18:43:20 UTC (rev 284473) @@ -1668,8 +1668,6 @@ webkit.org/b/231083 [ Debug ] imported/w3c/web-platform-tests/content-security-policy/generic/policy-inherited-correctly-by-plznavigate.html [ Pass Failure ] -webkit.org/b/231379 [ BigSur Release ] http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html [ Pass Failure ] - webkit.org/b/231386 [ BigSur ] http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction.html [ Pass Timeout ] webkit.org/b/231600 [ Release ] imported/w3c/web-platform-tests/css/cssom-view/scroll-behavior-main-frame-window.html [ Pass Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [284229] trunk/Tools
Title: [284229] trunk/Tools Revision 284229 Author wilan...@apple.com Date 2021-10-14 19:55:32 -0700 (Thu, 14 Oct 2021) Log Message TestWebKitAPI.PrivateClickMeasurement.FraudPrevention is a constant timeout https://bugs.webkit.org/show_bug.cgi?id=231393 Reviewed by Alex Christensen and Kate Cheney as part of https://bugs.webkit.org/show_bug.cgi?id=231553. * TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm: (TestWebKitAPI::TEST): PrivateClickMeasurement.FraudPrevention fixed. It was missing a call to _setPrivateClickMeasurementAppBundleIDForTesting() so that the app bundle ID for the triggering event matches the app bundle ID where the click happened. Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm Diff Modified: trunk/Tools/ChangeLog (284228 => 284229) --- trunk/Tools/ChangeLog 2021-10-15 02:21:54 UTC (rev 284228) +++ trunk/Tools/ChangeLog 2021-10-15 02:55:32 UTC (rev 284229) @@ -1,3 +1,17 @@ +2021-10-14 John Wilander + +TestWebKitAPI.PrivateClickMeasurement.FraudPrevention is a constant timeout +https://bugs.webkit.org/show_bug.cgi?id=231393 + + +Reviewed by Alex Christensen and Kate Cheney as part of https://bugs.webkit.org/show_bug.cgi?id=231553. + +* TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm: +(TestWebKitAPI::TEST): +PrivateClickMeasurement.FraudPrevention fixed. It was missing a call to +_setPrivateClickMeasurementAppBundleIDForTesting() so that the app bundle ID +for the triggering event matches the app bundle ID where the click happened. + 2021-10-14 Lauro Moura [webkitpy] Occasional exception thrown in change_result_to_failure when repeating flaky layout tests Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm (284228 => 284229) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm 2021-10-15 02:21:54 UTC (rev 284228) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm 2021-10-15 02:55:32 UTC (rev 284229) @@ -317,8 +317,10 @@ [webView _setPrivateClickMeasurementOverrideTimerForTesting:YES completionHandler:^{ [webView _setPrivateClickMeasurementAttributionTokenPublicKeyURLForTesting:serverURL completionHandler:^{ [webView _setPrivateClickMeasurementAttributionTokenSignatureURLForTesting:serverURL completionHandler:^{ -NSString *html = [NSString stringWithFormat:@"setTimeout(function(){ fetch('%@conversionRequestBeforeRedirect',{mode:'no-cors'}); }, 100);", serverURL]; -[webView loadHTMLString:html baseURL:exampleURL()]; +[webView _setPrivateClickMeasurementAppBundleIDForTesting:@"test.bundle.id" completionHandler:^{ +NSString *html = [NSString stringWithFormat:@"setTimeout(function(){ fetch('%@conversionRequestBeforeRedirect',{mode:'no-cors'}); }, 100);", serverURL]; +[webView loadHTMLString:html baseURL:exampleURL()]; +}]; }]; }]; }]; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [283593] trunk
Title: [283593] trunk Revision 283593 Author wilan...@apple.com Date 2021-10-05 17:46:43 -0700 (Tue, 05 Oct 2021) Log Message PCM: Allow measurement of links in nested, cross-site iframes https://bugs.webkit.org/show_bug.cgi?id=229204 Reviewed by Alex Christensen. Developers have said it would be great to allow measurement of links served in nested, cross-site iframes on the click source. The click still count as if it happened on the first party click source site, and any attribution report still goes to that first party. This change enables the *serving* of measurable links in nested, cross-site iframes. The standards issue where this was discussed: https://github.com/privacycg/private-click-measurement/issues/7 Source/WebCore: Test: http/tests/privateClickMeasurement/store-private-click-measurement-nested.html * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::parsePrivateClickMeasurement const): Removed the block for nested, cross-site iframes. LayoutTests: * http/tests/privateClickMeasurement/resources/nestedTargetLink.html: Added. * http/tests/privateClickMeasurement/store-private-click-measurement-nested-expected.txt: Added. * http/tests/privateClickMeasurement/store-private-click-measurement-nested.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLAnchorElement.cpp Added Paths trunk/LayoutTests/http/tests/privateClickMeasurement/resources/nestedTargetLink.html trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-nested-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-nested.html Diff Modified: trunk/LayoutTests/ChangeLog (283592 => 283593) --- trunk/LayoutTests/ChangeLog 2021-10-06 00:42:35 UTC (rev 283592) +++ trunk/LayoutTests/ChangeLog 2021-10-06 00:46:43 UTC (rev 283593) @@ -1,3 +1,24 @@ +2021-10-05 John Wilander + +PCM: Allow measurement of links in nested, cross-site iframes +https://bugs.webkit.org/show_bug.cgi?id=229204 + + +Reviewed by Alex Christensen. + +Developers have said it would be great to allow measurement of links served in +nested, cross-site iframes on the click source. The click still count as if it +happened on the first party click source site, and any attribution report still +goes to that first party. This change enables the *serving* of measurable links +in nested, cross-site iframes. + +The standards issue where this was discussed: +https://github.com/privacycg/private-click-measurement/issues/7 + +* http/tests/privateClickMeasurement/resources/nestedTargetLink.html: Added. +* http/tests/privateClickMeasurement/store-private-click-measurement-nested-expected.txt: Added. +* http/tests/privateClickMeasurement/store-private-click-measurement-nested.html: Added. + 2021-10-05 Fujii Hironori [WinCairo] Unreviewed test gardening after r283550 Added: trunk/LayoutTests/http/tests/privateClickMeasurement/resources/nestedTargetLink.html (0 => 283593) --- trunk/LayoutTests/http/tests/privateClickMeasurement/resources/nestedTargetLink.html (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/resources/nestedTargetLink.html 2021-10-06 00:46:43 UTC (rev 283593) @@ -0,0 +1,10 @@ + + + + +Nested target link + + +Link + + \ No newline at end of file Added: trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-nested-expected.txt (0 => 283593) --- trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-nested-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-nested-expected.txt 2021-10-06 00:46:43 UTC (rev 283593) @@ -0,0 +1,9 @@ +Tests storage of private click measurement with nested links. + +Unattributed Private Click Measurements: +WebCore::PrivateClickMeasurement 1 +Source site: 127.0.0.1 +Attribute on site: localhost +Source ID: 3 +No attribution trigger data. +Application bundle identifier: testBundleID Added: trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-nested.html (0 => 283593) --- trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-nested.html (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-nested.html 2021-10-06 00:46:43 UTC (rev 283593) @@ -0,0 +1,55 @@ + + + + + + +<body _onload_="setTimeout(runTest, 0)"> +<div id="description">Tests storage of private click measurement with nested links.</div> +<div id="output"></div> +<script> +prepareTest(); + +function activateLink() { +let element = document.getElementById("
[webkit-changes] [283342] trunk
Title: [283342] trunk Revision 283342 Author wilan...@apple.com Date 2021-09-30 15:42:17 -0700 (Thu, 30 Sep 2021) Log Message PCM: Change WebIDL attributes from all lowercase to camelcase to match spec and align with Attribution Reporting API https://bugs.webkit.org/show_bug.cgi?id=230914 Reviewed by Brent Fulgham. This patch changes Private Click Measurement's WebIDL attributes from all lowercase to camelcase to match the spec and align with the Attribution Reporting API proposal. References - Private Click Measurement proposal: https://privacycg.github.io/private-click-measurement/#linkformat - Attribution Reporting API proposal: https://wicg.github.io/conversion-measurement-api/#monkeypatch-anchor Source/WebCore: Existing tests updated. * html/HTMLAnchorElement.idl: LayoutTests: * http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt: * http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html: * http/tests/privateClickMeasurement/anchor-tag-attributes-validation.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-validation.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLAnchorElement.idl Diff Modified: trunk/LayoutTests/ChangeLog (283341 => 283342) --- trunk/LayoutTests/ChangeLog 2021-09-30 22:34:21 UTC (rev 283341) +++ trunk/LayoutTests/ChangeLog 2021-09-30 22:42:17 UTC (rev 283342) @@ -1,3 +1,23 @@ +2021-09-30 John Wilander + +PCM: Change WebIDL attributes from all lowercase to camelcase to match spec and align with Attribution Reporting API +https://bugs.webkit.org/show_bug.cgi?id=230914 + + +Reviewed by Brent Fulgham. + +This patch changes Private Click Measurement's WebIDL attributes from +all lowercase to camelcase to match the spec and align with the +Attribution Reporting API proposal. + +References +- Private Click Measurement proposal: https://privacycg.github.io/private-click-measurement/#linkformat +- Attribution Reporting API proposal: https://wicg.github.io/conversion-measurement-api/#monkeypatch-anchor + +* http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt: +* http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html: +* http/tests/privateClickMeasurement/anchor-tag-attributes-validation.html: + 2021-09-30 Ziran Sun [css-grid] Transfer sizes from the aspect-ratio while resolving min-length for auto repetitions Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt (283341 => 283342) --- trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt 2021-09-30 22:34:21 UTC (rev 283341) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt 2021-09-30 22:42:17 UTC (rev 283342) @@ -1,10 +1,10 @@ -Test for the new private click measurement attributes on anchor tags. +Test for private click measurement attributes on anchor tags. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". -PASS anchorTag.attributionsourceid is 40 -PASS anchorTag.attributiondestination is "https://destination.example" +PASS anchorTag.attributionSourceId is 40 +PASS anchorTag.attributionDestination is "https://destination.example" PASS successfullyParsed is true TEST COMPLETE Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html (283341 => 283342) --- trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html 2021-09-30 22:34:21 UTC (rev 283341) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html 2021-09-30 22:42:17 UTC (rev 283342) @@ -7,11 +7,11 @@ </span><del>-description("Test for the new private click measurement attributes on anchor tags."); </del><ins>+description("Test for private click measurement attributes on anchor tags."); </ins><span class="cx"> </span><span class="cx"> const anchorTag = document.getElementById("testTag"); </span><del>-shouldBeEqualToNumber("anchorTag.attributionsourceid", 40); -shouldBeEqualToString("anchorTag.attributiondestination", "https://destination.example"); </del><ins>+shouldBeEqualToNumber("anchorTag.attributionSourceId", 40); +shouldBeEqualToString("anchorTag.attributionDestination", "https://destination.example"); </ins>&
[webkit-changes] [283316] trunk
dings/TestRunner.idl: * WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::setPrivateClickMeasurementAppBundleIDForTesting): * WebKitTestRunner/InjectedBundle/TestRunner.h: * WebKitTestRunner/TestController.cpp: (WTR::TestController::setPrivateClickMeasurementAppBundleIDForTesting): * WebKitTestRunner/TestController.h: * WebKitTestRunner/TestInvocation.cpp: (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): LayoutTests: * http/tests/privateClickMeasurement/multiple-app-bundle-ids-expected.txt: Added. * http/tests/privateClickMeasurement/multiple-app-bundle-ids.html: Added. * http/tests/privateClickMeasurement/resources/util.js: (tearDownAndFinish): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/privateClickMeasurement/resources/util.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementDatabase.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementDatabase.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManager.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManager.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManagerInterface.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManagerInterface.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManagerProxy.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManagerProxy.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementStore.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementStore.h trunk/Source/WebKit/UIProcess/API/C/WKPage.cpp trunk/Source/WebKit/UIProcess/API/C/WKPagePrivate.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp Added Paths trunk/LayoutTests/http/tests/privateClickMeasurement/multiple-app-bundle-ids-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/multiple-app-bundle-ids.html Diff Modified: trunk/LayoutTests/ChangeLog (283315 => 283316) --- trunk/LayoutTests/ChangeLog 2021-09-30 16:05:34 UTC (rev 283315) +++ trunk/LayoutTests/ChangeLog 2021-09-30 16:22:01 UTC (rev 283316) @@ -1,3 +1,20 @@ +2021-09-30 John Wilander + +PCM: Take app bundle ID into consideration when matching triggering events with pending clicks +https://bugs.webkit.org/show_bug.cgi?id=230778 + + +Reviewed by Alex Christensen. + +https://commits.webkit.org/r282884 added app bundle IDs to unattributed +and attributed clicks in PCM. This patch makes sure we take those IDs +into consideration in PCM::Database::attributePrivateClickMeasurement(). + +* http/tests/privateClickMeasurement/multiple-app-bundle-ids-expected.txt: Added. +* http/tests/privateClickMeasurement/multiple-app-bundle-ids.html: Added. +* http/tests/privateClickMeasurement/resources/util.js: +(tearDownAndFinish): + 2021-09-30 Alan Bujtas (REGRESSION r282150) Missing background-color on inline box while hovering Added: trunk/LayoutTests/http/tests/privateClickMeasurement/multiple-app-bundle-ids-expected.txt (0 => 283316) --- trunk/LayoutTests/http/tests/privateClickMeasurement/multiple-app-bundle-ids-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/multiple-app-bundle-ids-expected.txt 2021-09-30 16:22:01 UTC (rev 283316) @@ -0,0 +1,35 @@ +Tests private click measurement with multiple app bundle IDs, making sure only the matching ID is considered a match. + + + + + +Frame: '' + +Attribution received. +HTTP_HOST: 127.0.0.1:8000 +Content type: application/json +REQUEST_URI: /privateClickMeasurement/resources/conversionReport.py?recipient=ClickSource +No cookies in attribution r
[webkit-changes] [281480] trunk
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp Added Paths trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral.html Diff Modified: trunk/LayoutTests/ChangeLog (281479 => 281480) --- trunk/LayoutTests/ChangeLog 2021-08-24 00:20:27 UTC (rev 281479) +++ trunk/LayoutTests/ChangeLog 2021-08-24 00:33:32 UTC (rev 281480) @@ -1,3 +1,23 @@ +2021-08-23 John Wilander + +PCM: Support ephemeral measurement with non-persistent WebCore::PrivateClickMeasurement +https://bugs.webkit.org/show_bug.cgi?id=228984 + + +Reviewed by Kate Cheney. + +This patch adds support for ephemeral measurement with non-persistent +WebCore::PrivateClickMeasurement for direct response advertising. +Such advertising means there is only one pending click, held in memory, +and only stored right before the triggering event causes attribution +reports to be scheduled. + +* http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral-expected.txt: Added. +* http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral.html: Added. +* http/tests/privateClickMeasurement/resources/util.js: +(tearDownAndFinish): +Resets the new testRunner.setPrivateClickMeasurementEphemeralMeasurementForTesting(). + 2021-08-23 Ayumi Kojima [ Catalina EWS ] http/tests/media/hls/range-request.html is a flaky failure. Added: trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral-expected.txt (0 => 281480) --- trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral-expected.txt 2021-08-24 00:33:32 UTC (rev 281480) @@ -0,0 +1,11 @@ +Tests triggering of ephemeral private click measurement attributions. + + +Attributed Private Click Measurements: +WebCore::PrivateClickMeasurement 1 +Source site: 127.0.0.1 +Attribute on site: localhost +Source ID: 3 +Attribution trigger data: 12 +Attribution priority: 0 +Attribution earliest time to send: Within 24-48 hours Added: trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral.html (0 => 281480) --- trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral.html (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-ephemeral.html 2021-08-24 00:33:32 UTC (rev 281480) @@ -0,0 +1,53 @@ + + + + + + +<body _onload_="setTimeout(runTest, 0)"> +<div id="description">Tests triggering of ephemeral private click measurement attributions.</div> +<a id="targetLink" href="" attributionsourceid=3 attributiondestination="http://localhost:8000">Link</a><br> +<div id="output"></div> +<script> +prepareTest(); + +function activateElement(elementID) { +var element = document.getElementById(elementID); +var centerX = element.offsetLeft + element.offsetWidth / 2; +var centerY = element.offsetTop + element.offsetHeight / 2; +UIHelper.activateAt(centerX, centerY).then( +function () { +}, +function () { +document.getElementById("output").innerText = "FAIL Promise rejected."; +tearDownAndFinish(); +} +); +} + +function runTest() { +if (window.testRunner) { +if (window.location.search === "?stepTwo") { +let imageElement = document.createElement("img"); +imageElement.src = "" +imageElement.id = "pixel"; +imageElement._onerror_ = function() { +testRunner.dumpPrivateClickMeasurement(); +document.body.removeChild(document.getElementById("targetLink")); +document.body.removeChild(document.getElementById("pixel")); +tearDownAndFinish(); +}; +
[webkit-changes] [280930] trunk/Source/WebCore
Title: [280930] trunk/Source/WebCore Revision 280930 Author wilan...@apple.com Date 2021-08-11 13:39:42 -0700 (Wed, 11 Aug 2021) Log Message PCM: Flip WebCore's FraudPreventionEnabled to true if HAVE(RSA_BSSA) to match the experimental setting https://bugs.webkit.org/show_bug.cgi?id=228961 Reviewed by Tim Horton. Existing tests use the affected anchor attribute. * page/RuntimeEnabledFeatures.h: * page/Settings.yaml: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/RuntimeEnabledFeatures.h trunk/Source/WebCore/page/Settings.yaml Diff Modified: trunk/Source/WebCore/ChangeLog (280929 => 280930) --- trunk/Source/WebCore/ChangeLog 2021-08-11 20:35:31 UTC (rev 280929) +++ trunk/Source/WebCore/ChangeLog 2021-08-11 20:39:42 UTC (rev 280930) @@ -1,3 +1,15 @@ +2021-08-11 John Wilander + +PCM: Flip WebCore's FraudPreventionEnabled to true if HAVE(RSA_BSSA) to match the experimental setting +https://bugs.webkit.org/show_bug.cgi?id=228961 + +Reviewed by Tim Horton. + +Existing tests use the affected anchor attribute. + +* page/RuntimeEnabledFeatures.h: +* page/Settings.yaml: + 2021-08-11 Dana Estra Start smooth keyboard scrolling animation when pageUp or pageDown key is pressed. Modified: trunk/Source/WebCore/page/RuntimeEnabledFeatures.h (280929 => 280930) --- trunk/Source/WebCore/page/RuntimeEnabledFeatures.h 2021-08-11 20:35:31 UTC (rev 280929) +++ trunk/Source/WebCore/page/RuntimeEnabledFeatures.h 2021-08-11 20:39:42 UTC (rev 280930) @@ -346,7 +346,11 @@ bool m_lineHeightUnitsEnabled { false }; bool m_privateClickMeasurementDebugModeEnabled { false }; +#if HAVE(RSA_BSSA) +bool m_privateClickMeasurementFraudPreventionEnabled { true }; +#else bool m_privateClickMeasurementFraudPreventionEnabled { false }; +#endif #if ENABLE(TOUCH_EVENTS) bool m_mouseEventsSimulationEnabled { false }; Modified: trunk/Source/WebCore/page/Settings.yaml (280929 => 280930) --- trunk/Source/WebCore/page/Settings.yaml 2021-08-11 20:35:31 UTC (rev 280929) +++ trunk/Source/WebCore/page/Settings.yaml 2021-08-11 20:39:42 UTC (rev 280930) @@ -441,6 +441,7 @@ type: bool defaultValue: WebCore: + "HAVE(RSA_BSSA)": true default: false QuickTimePluginReplacementEnabled: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [280009] trunk/Source/WebKit
Title: [280009] trunk/Source/WebKit Revision 280009 Author wilan...@apple.com Date 2021-07-16 16:53:23 -0700 (Fri, 16 Jul 2021) Log Message PCM: Add early return when unlinkable token is used and add more happy path Web Inspector logging https://bugs.webkit.org/show_bug.cgi?id=228039 Reviewed by Kate Cheney. There's a missing return after an accepted unlinkable token transaction. The attribution object is therefore moved and stored twice. This patch also adds more Web Inspector logging to the happy path for better developer feedback. No new tests. * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::storeUnattributed): Add the missing return. (WebKit::PrivateClickMeasurementManager::getTokenPublicKey): Add Web Inspector logging. (WebKit::PrivateClickMeasurementManager::getSignedUnlinkableToken): Add Web Inspector logging. (WebKit::PrivateClickMeasurementManager::handleAttribution): Add Web Inspector logging. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (280008 => 280009) --- trunk/Source/WebKit/ChangeLog 2021-07-16 23:40:00 UTC (rev 280008) +++ trunk/Source/WebKit/ChangeLog 2021-07-16 23:53:23 UTC (rev 280009) @@ -1,3 +1,29 @@ +2021-07-16 John Wilander + +PCM: Add early return when unlinkable token is used and add more happy path Web Inspector logging +https://bugs.webkit.org/show_bug.cgi?id=228039 + + +Reviewed by Kate Cheney. + +There's a missing return after an accepted unlinkable token transaction. The +attribution object is therefore moved and stored twice. + +This patch also adds more Web Inspector logging to the happy path for better +developer feedback. + +No new tests. + +* NetworkProcess/PrivateClickMeasurementManager.cpp: +(WebKit::PrivateClickMeasurementManager::storeUnattributed): +Add the missing return. +(WebKit::PrivateClickMeasurementManager::getTokenPublicKey): +Add Web Inspector logging. +(WebKit::PrivateClickMeasurementManager::getSignedUnlinkableToken): +Add Web Inspector logging. +(WebKit::PrivateClickMeasurementManager::handleAttribution): +Add Web Inspector logging. + 2021-07-16 Wenson Hsieh REGRESSION (r277820): Can't scroll up and down using trackpad in Mail message viewer when in Slide Over Modified: trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp (280008 => 280009) --- trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp 2021-07-16 23:40:00 UTC (rev 280008) +++ trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp 2021-07-16 23:53:23 UTC (rev 280009) @@ -97,6 +97,7 @@ #endif getSignedUnlinkableToken(WTFMove(attribution)); +return; }); } @@ -174,6 +175,8 @@ return; } +m_networkProcess->broadcastConsoleMessage(m_sessionID, MessageSource::PrivateClickMeasurement, MessageLevel::Log, makeString("[Private Click Measurement] Got JSON response for token public key request."_s)); + callback(WTFMove(attribution), jsonObject->getString("token_public_key"_s)); }); @@ -216,9 +219,10 @@ } auto signatureBase64URL = jsonObject->getString("unlinkable_token"_s); -if (signatureBase64URL.isEmpty()) +if (signatureBase64URL.isEmpty()) { +m_networkProcess->broadcastConsoleMessage(m_sessionID, MessageSource::PrivateClickMeasurement, MessageLevel::Error, makeString("[Private Click Measurement] JSON response doesn't have the key 'unlinkable_token' for token signing request."_s)); return; - +} // FIX NOW! if (m_fraudPreventionValuesForTesting) attribution.setSourceSecretToken({ m_fraudPreventionValuesForTesting->secretToken, m_fraudPreventionValuesForTesting->signature, m_fraudPreventionValuesForTesting->keyID }); @@ -251,15 +255,17 @@ auto& firstPartyURL = redirectRequest.firstPartyForCookies(); if (!redirectDomain.matches(requestURL)) { -m_networkProcess->broadcastConsoleMessage(m_sessionID, MessageSource::PrivateClickMeasurement, MessageLevel::Warning, "[Private Click Measurement] Attribution was not accepted because the HTTP redirect was not same-site."_s); +m_networkProcess->broadcastConsoleMessage(m_sessionID, MessageSource::PrivateClickMeasurement, MessageLevel::Warning, "[Private Click Measurement] Triggering event was not accepted because the HTTP redirect was not same-site."_s); return; } if (redirectDomain.matches(firstPartyURL)) { -m_networkProcess->broadcastConsoleMessage(m_sessionID, Messa
[webkit-changes] [279710] trunk
Title: [279710] trunk Revision 279710 Author wilan...@apple.com Date 2021-07-07 22:09:53 -0700 (Wed, 07 Jul 2021) Log Message PCM: Add error logging for CryptoKit operations https://bugs.webkit.org/show_bug.cgi?id=227731 Reviewed by Brent Fulgham. Resolves three FIXMEs for error logging in PCM's CryptoKit operations. Source/WebCore: No new tests. Only added logging. * loader/PrivateClickMeasurement.h: * loader/cocoa/PrivateClickMeasurementCocoa.mm: (WebCore::PrivateClickMeasurement::calculateAndUpdateSourceUnlinkableToken): (WebCore::PrivateClickMeasurement::calculateAndUpdateSourceSecretToken): Source/WebKit: * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::storeUnattributed): (WebKit::PrivateClickMeasurementManager::getSignedUnlinkableToken): Tools: * TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp: (TestWebKitAPI::TEST): Now expects an optional string instead of a bool from the function calls which means EXPECT_TRUE has become EXPECT_FALSE. The optional string is non-nullopt if it carries an error message. * TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm: (TestWebKitAPI::TEST): Now expects an optional string instead of a bool from the function calls which means EXPECT_TRUE has become EXPECT_FALSE. The optional string is non-nullopt if it carries an error message. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebCore/loader/cocoa/PrivateClickMeasurementCocoa.mm trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm Diff Modified: trunk/Source/WebCore/ChangeLog (279709 => 279710) --- trunk/Source/WebCore/ChangeLog 2021-07-08 04:48:27 UTC (rev 279709) +++ trunk/Source/WebCore/ChangeLog 2021-07-08 05:09:53 UTC (rev 279710) @@ -1,3 +1,20 @@ +2021-07-07 John Wilander + +PCM: Add error logging for CryptoKit operations +https://bugs.webkit.org/show_bug.cgi?id=227731 + + +Reviewed by Brent Fulgham. + +Resolves three FIXMEs for error logging in PCM's CryptoKit operations. + +No new tests. Only added logging. + +* loader/PrivateClickMeasurement.h: +* loader/cocoa/PrivateClickMeasurementCocoa.mm: +(WebCore::PrivateClickMeasurement::calculateAndUpdateSourceUnlinkableToken): +(WebCore::PrivateClickMeasurement::calculateAndUpdateSourceSecretToken): + 2021-07-07 Chris Dumez Our structured cloning implementation does not encode all of RegExp's flags Modified: trunk/Source/WebCore/loader/PrivateClickMeasurement.h (279709 => 279710) --- trunk/Source/WebCore/loader/PrivateClickMeasurement.h 2021-07-08 04:48:27 UTC (rev 279709) +++ trunk/Source/WebCore/loader/PrivateClickMeasurement.h 2021-07-08 05:09:53 UTC (rev 279710) @@ -354,8 +354,8 @@ }; #if PLATFORM(COCOA) -WEBCORE_EXPORT bool calculateAndUpdateSourceUnlinkableToken(const String& serverPublicKeyBase64URL); -WEBCORE_EXPORT bool calculateAndUpdateSourceSecretToken(const String& serverResponseBase64URL); +WEBCORE_EXPORT std::optional calculateAndUpdateSourceUnlinkableToken(const String& serverPublicKeyBase64URL); +WEBCORE_EXPORT std::optional calculateAndUpdateSourceSecretToken(const String& serverResponseBase64URL); #endif void setSourceUnlinkableTokenValue(const String& value) { m_sourceUnlinkableToken.valueBase64URL = value; } Modified: trunk/Source/WebCore/loader/cocoa/PrivateClickMeasurementCocoa.mm (279709 => 279710) --- trunk/Source/WebCore/loader/cocoa/PrivateClickMeasurementCocoa.mm 2021-07-08 04:48:27 UTC (rev 279709) +++ trunk/Source/WebCore/loader/cocoa/PrivateClickMeasurementCocoa.mm 2021-07-08 05:09:53 UTC (rev 279710) @@ -30,50 +30,56 @@ namespace WebCore { -bool PrivateClickMeasurement::calculateAndUpdateSourceUnlinkableToken(const String& serverPublicKeyBase64URL) +std::optional PrivateClickMeasurement::calculateAndUpdateSourceUnlinkableToken(const String& serverPublicKeyBase64URL) { #if HAVE(RSA_BSSA) { auto serverPublicKeyData = base64URLDecode(serverPublicKeyBase64URL); if (!serverPublicKeyData) -return false; +return "Could not decode the source's public key data."_s; auto serverPublicKey = adoptNS([[NSData alloc] initWithBytes:serverPublicKeyData->data() length:serverPublicKeyData->size()]); -// FIXME(222018): Check error. -m_sourceUnlinkableToken.blinder = adoptNS([PAL::allocRSABSSATokenBlinderInstance() initWithPublicKey:serverPublicKey.get() error:nullptr]); +NSError* nsError = 0; +m_sourceUnlinkableToken.blinder = adoptNS([PAL::allocRSABSSAToke
[webkit-changes] [279687] trunk/Tools
Title: [279687] trunk/Tools Revision 279687 Author wilan...@apple.com Date 2021-07-07 17:09:12 -0700 (Wed, 07 Jul 2021) Log Message PCM: API test PrivateClickMeasurement.ValidBlindedSecret is failing on platforms with RSABSSA https://bugs.webkit.org/show_bug.cgi?id=22 Reviewed by Kate Cheney. * TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm: (TestWebKitAPI::TEST): The test was looking for the value of JSON key "source_secret_token" which should be "source_unlinkable_token". This patch fixes that and renames the local variable accordingly. Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm Diff Modified: trunk/Tools/ChangeLog (279686 => 279687) --- trunk/Tools/ChangeLog 2021-07-07 23:57:58 UTC (rev 279686) +++ trunk/Tools/ChangeLog 2021-07-08 00:09:12 UTC (rev 279687) @@ -1,3 +1,17 @@ +2021-07-07 John Wilander + +PCM: API test PrivateClickMeasurement.ValidBlindedSecret is failing on platforms with RSABSSA +https://bugs.webkit.org/show_bug.cgi?id=22 + + +Reviewed by Kate Cheney. + +* TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm: +(TestWebKitAPI::TEST): + The test was looking for the value of JSON key "source_secret_token" + which should be "source_unlinkable_token". This patch fixes that and + renames the local variable accordingly. + 2021-07-07 Ling Ho Remove proxy server setting from Buildbot configuration Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm (279686 => 279687) --- trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm 2021-07-07 23:57:58 UTC (rev 279686) +++ trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm 2021-07-08 00:09:12 UTC (rev 279687) @@ -77,15 +77,15 @@ // Continue the test. EXPECT_TRUE(pcm.calculateAndUpdateSourceUnlinkableToken(base64URLEncodeToString(nsSpkiData.bytes, nsSpkiData.length))); -auto sourceSecretToken = pcm.tokenSignatureJSON(); -EXPECT_EQ(sourceSecretToken->asObject()->size(), 4ul); -EXPECT_STREQ(sourceSecretToken->getString("source_engagement_type"_s).utf8().data(), "click"); -EXPECT_STREQ(sourceSecretToken->getString("source_nonce"_s).utf8().data(), "ABCDEFabcdef0123456789"); -EXPECT_FALSE(sourceSecretToken->getString("source_secret_token"_s).isEmpty()); -EXPECT_EQ(sourceSecretToken->getInteger("version"_s), 2); +auto sourceUnlinkableToken = pcm.tokenSignatureJSON(); +EXPECT_EQ(sourceUnlinkableToken->asObject()->size(), 4ul); +EXPECT_STREQ(sourceUnlinkableToken->getString("source_engagement_type"_s).utf8().data(), "click"); +EXPECT_STREQ(sourceUnlinkableToken->getString("source_nonce"_s).utf8().data(), "ABCDEFabcdef0123456789"); +EXPECT_FALSE(sourceUnlinkableToken->getString("source_unlinkable_token"_s).isEmpty()); +EXPECT_EQ(sourceUnlinkableToken->getInteger("version"_s), 2); // Generate the signature. -auto blindedMessage = base64URLDecode(sourceSecretToken->getString("source_secret_token"_s)); +auto blindedMessage = base64URLDecode(sourceUnlinkableToken->getString("source_unlinkable_token"_s)); auto blindedSignature = adoptNS([[NSMutableData alloc] initWithLength:modulusNBytes]); ccrsabssa_sign_blinded_message(ciphersuite, rsaPrivateKey, blindedMessage->data(), blindedMessage->size(), static_cast([blindedSignature mutableBytes]), [blindedSignature length], rng); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [279491] trunk/Source/WebCore
Title: [279491] trunk/Source/WebCore Revision 279491 Author wilan...@apple.com Date 2021-07-01 18:07:54 -0700 (Thu, 01 Jul 2021) Log Message PCM: Change import from CryptoKitCBridging to CryptoKitPrivate https://bugs.webkit.org/show_bug.cgi?id=227556 Reviewed by Alex Christensen. Source/WebCore: No new tests since no functionality is changed. * loader/cocoa/PrivateClickMeasurementCocoa.mm: Changed import from CryptoKitCBridgingSoftLink.h to CryptoKitPrivateSoftLink.h. Source/WebCore/PAL: * PAL.xcodeproj/project.pbxproj: * pal/PlatformMac.cmake: * pal/cocoa/CryptoKitPrivateSoftLink.h: Renamed from Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.h. * pal/cocoa/CryptoKitPrivateSoftLink.mm: Renamed from Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.mm. * pal/spi/cocoa/CryptoKitPrivateSPI.h: Renamed from Source/WebCore/PAL/pal/spi/cocoa/CryptoKitCBridgingSPI.h. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj trunk/Source/WebCore/PAL/pal/PlatformMac.cmake trunk/Source/WebCore/loader/cocoa/PrivateClickMeasurementCocoa.mm Added Paths trunk/Source/WebCore/PAL/pal/cocoa/CryptoKitPrivateSoftLink.h trunk/Source/WebCore/PAL/pal/cocoa/CryptoKitPrivateSoftLink.mm trunk/Source/WebCore/PAL/pal/spi/cocoa/CryptoKitPrivateSPI.h Removed Paths trunk/Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.h trunk/Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.mm trunk/Source/WebCore/PAL/pal/spi/cocoa/CryptoKitCBridgingSPI.h Diff Modified: trunk/Source/WebCore/ChangeLog (279490 => 279491) --- trunk/Source/WebCore/ChangeLog 2021-07-02 01:03:53 UTC (rev 279490) +++ trunk/Source/WebCore/ChangeLog 2021-07-02 01:07:54 UTC (rev 279491) @@ -1,3 +1,18 @@ +2021-07-01 John Wilander + +PCM: Change import from CryptoKitCBridging to CryptoKitPrivate +https://bugs.webkit.org/show_bug.cgi?id=227556 + + +Reviewed by Alex Christensen. + +Patch by Frederic Jacobs. + +No new tests since no functionality is changed. + +* loader/cocoa/PrivateClickMeasurementCocoa.mm: +Changed import from CryptoKitCBridgingSoftLink.h to CryptoKitPrivateSoftLink.h. + 2021-07-01 Alex Christensen Align beacon CORS mode with Chrome and Firefox Modified: trunk/Source/WebCore/PAL/ChangeLog (279490 => 279491) --- trunk/Source/WebCore/PAL/ChangeLog 2021-07-02 01:03:53 UTC (rev 279490) +++ trunk/Source/WebCore/PAL/ChangeLog 2021-07-02 01:07:54 UTC (rev 279491) @@ -1,3 +1,19 @@ +2021-07-01 John Wilander + +PCM: Change import from CryptoKitCBridging to CryptoKitPrivate +https://bugs.webkit.org/show_bug.cgi?id=227556 + + +Reviewed by Alex Christensen. + +Patch by Frederic Jacobs. + +* PAL.xcodeproj/project.pbxproj: +* pal/PlatformMac.cmake: +* pal/cocoa/CryptoKitPrivateSoftLink.h: Renamed from Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.h. +* pal/cocoa/CryptoKitPrivateSoftLink.mm: Renamed from Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.mm. +* pal/spi/cocoa/CryptoKitPrivateSPI.h: Renamed from Source/WebCore/PAL/pal/spi/cocoa/CryptoKitCBridgingSPI.h. + 2021-07-01 Amir Mark Jr Unreviewed, reverting r279452. Modified: trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj (279490 => 279491) --- trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj 2021-07-02 01:03:53 UTC (rev 279490) +++ trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj 2021-07-02 01:07:54 UTC (rev 279491) @@ -140,8 +140,8 @@ 570AB8F920AF6E3D00B8BE87 /* NSXPCConnectionSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 570AB8F820AF6E3D00B8BE87 /* NSXPCConnectionSPI.h */; }; 572A107822B456F500F410C8 /* AuthKitSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 572A107722B456F500F410C8 /* AuthKitSPI.h */; }; 576CA9D622B854AB0030143C /* AppSSOSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 576CA9D522B854AB0030143C /* AppSSOSPI.h */; }; - 57F1C90925DCF0CF00E8F6EA /* CryptoKitCBridgingSoftLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 57F1C90725DCF0CF00E8F6EA /* CryptoKitCBridgingSoftLink.h */; }; - 57F1C90A25DCF0CF00E8F6EA /* CryptoKitCBridgingSoftLink.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57F1C90825DCF0CF00E8F6EA /* CryptoKitCBridgingSoftLink.mm */; }; + 57F1C90925DCF0CF00E8F6EA /* CryptoKitPrivateSoftLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 57F1C90725DCF0CF00E8F6EA /* CryptoKitPrivateSoftLink.h */; }; + 57F1C90A25DCF0CF00E8F6EA /* CryptoKitPrivateSoftLink.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57F1C90825DCF0CF00E8F6EA /* CryptoKitPrivateSoftLink.mm */; }; 57FD318A22B3593E008D0E8B /* AppSSOSoftLink.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57FD318922B3593E008D0E8B /* AppSSOSoftLink.mm */; }; 57FD318B22B35989008D0E8B /* AppSSOSoftLink.h in Headers */ = {isa = PBX
[webkit-changes] [279452] trunk/Source/WebCore
Title: [279452] trunk/Source/WebCore Revision 279452 Author wilan...@apple.com Date 2021-06-30 23:32:40 -0700 (Wed, 30 Jun 2021) Log Message PCM: Change import from CryptoKitCBridging to CryptoKitPrivate https://bugs.webkit.org/show_bug.cgi?id=227556 Reviewed by Alex Christensen. Source/WebCore: No new tests since no functionality is changed. * loader/cocoa/PrivateClickMeasurementCocoa.mm: Changed import from CryptoKitCBridgingSoftLink.h to CryptoKitPrivateSoftLink.h. Source/WebCore/PAL: * PAL.xcodeproj/project.pbxproj: * pal/PlatformMac.cmake: * pal/cocoa/CryptoKitPrivateSoftLink.h: Renamed from Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.h. * pal/cocoa/CryptoKitPrivateSoftLink.mm: Renamed from Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.mm. * pal/spi/cocoa/CryptoKitPrivateSPI.h: Renamed from Source/WebCore/PAL/pal/spi/cocoa/CryptoKitCBridgingSPI.h. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj trunk/Source/WebCore/PAL/pal/PlatformMac.cmake trunk/Source/WebCore/loader/cocoa/PrivateClickMeasurementCocoa.mm Added Paths trunk/Source/WebCore/PAL/pal/cocoa/CryptoKitPrivateSoftLink.h trunk/Source/WebCore/PAL/pal/cocoa/CryptoKitPrivateSoftLink.mm trunk/Source/WebCore/PAL/pal/spi/cocoa/CryptoKitPrivateSPI.h Removed Paths trunk/Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.h trunk/Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.mm trunk/Source/WebCore/PAL/pal/spi/cocoa/CryptoKitCBridgingSPI.h Diff Modified: trunk/Source/WebCore/ChangeLog (279451 => 279452) --- trunk/Source/WebCore/ChangeLog 2021-07-01 06:32:12 UTC (rev 279451) +++ trunk/Source/WebCore/ChangeLog 2021-07-01 06:32:40 UTC (rev 279452) @@ -1,3 +1,18 @@ +2021-06-30 John Wilander + +PCM: Change import from CryptoKitCBridging to CryptoKitPrivate +https://bugs.webkit.org/show_bug.cgi?id=227556 + + +Reviewed by Alex Christensen. + +Patch by Frederic Jacobs. + +No new tests since no functionality is changed. + +* loader/cocoa/PrivateClickMeasurementCocoa.mm: +Changed import from CryptoKitCBridgingSoftLink.h to CryptoKitPrivateSoftLink.h. + 2021-06-30 Antoine Quint [Model] [macOS] Add support for rendering model resources Modified: trunk/Source/WebCore/PAL/ChangeLog (279451 => 279452) --- trunk/Source/WebCore/PAL/ChangeLog 2021-07-01 06:32:12 UTC (rev 279451) +++ trunk/Source/WebCore/PAL/ChangeLog 2021-07-01 06:32:40 UTC (rev 279452) @@ -1,3 +1,19 @@ +2021-06-30 John Wilander + +PCM: Change import from CryptoKitCBridging to CryptoKitPrivate +https://bugs.webkit.org/show_bug.cgi?id=227556 + + +Reviewed by Alex Christensen. + +Patch by Frederic Jacobs. + +* PAL.xcodeproj/project.pbxproj: +* pal/PlatformMac.cmake: +* pal/cocoa/CryptoKitPrivateSoftLink.h: Renamed from Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.h. +* pal/cocoa/CryptoKitPrivateSoftLink.mm: Renamed from Source/WebCore/PAL/pal/cocoa/CryptoKitCBridgingSoftLink.mm. +* pal/spi/cocoa/CryptoKitPrivateSPI.h: Renamed from Source/WebCore/PAL/pal/spi/cocoa/CryptoKitCBridgingSPI.h. + 2021-06-30 Antoine Quint [Model] [macOS] Add support for rendering model resources Modified: trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj (279451 => 279452) --- trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj 2021-07-01 06:32:12 UTC (rev 279451) +++ trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj 2021-07-01 06:32:40 UTC (rev 279452) @@ -140,8 +140,8 @@ 570AB8F920AF6E3D00B8BE87 /* NSXPCConnectionSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 570AB8F820AF6E3D00B8BE87 /* NSXPCConnectionSPI.h */; }; 572A107822B456F500F410C8 /* AuthKitSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 572A107722B456F500F410C8 /* AuthKitSPI.h */; }; 576CA9D622B854AB0030143C /* AppSSOSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 576CA9D522B854AB0030143C /* AppSSOSPI.h */; }; - 57F1C90925DCF0CF00E8F6EA /* CryptoKitCBridgingSoftLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 57F1C90725DCF0CF00E8F6EA /* CryptoKitCBridgingSoftLink.h */; }; - 57F1C90A25DCF0CF00E8F6EA /* CryptoKitCBridgingSoftLink.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57F1C90825DCF0CF00E8F6EA /* CryptoKitCBridgingSoftLink.mm */; }; + 57F1C90925DCF0CF00E8F6EA /* CryptoKitPrivateSoftLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 57F1C90725DCF0CF00E8F6EA /* CryptoKitPrivateSoftLink.h */; }; + 57F1C90A25DCF0CF00E8F6EA /* CryptoKitPrivateSoftLink.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57F1C90825DCF0CF00E8F6EA /* CryptoKitPrivateSoftLink.mm */; }; 57FD318A22B3593E008D0E8B /* AppSSOSoftLink.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57FD318922B3593E008D0E8B /* AppSSOSoftLink.mm */; }; 57FD318B22B35989008D0E8B /* AppSSOSoft
[webkit-changes] [277534] trunk
page.py trunk/LayoutTests/http/tests/cookies/same-site/user-load-cross-site-redirect-expected.txt trunk/LayoutTests/http/tests/cookies/same-site/user-load-cross-site-redirect.py trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/CookieJar.cpp trunk/Source/WebCore/loader/CookieJar.h trunk/Source/WebCore/platform/network/SameSiteInfo.cpp trunk/Source/WebCore/platform/network/SameSiteInfo.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/WebCookieJar.cpp Diff Modified: trunk/LayoutTests/ChangeLog (277533 => 277534) --- trunk/LayoutTests/ChangeLog 2021-05-15 05:02:06 UTC (rev 277533) +++ trunk/LayoutTests/ChangeLog 2021-05-15 05:26:41 UTC (rev 277534) @@ -1,3 +1,33 @@ +2021-05-14 John Wilander + +_javascript_ can't access a SameSite=Strict cookie after page is loaded after a redirect from a third party site +https://bugs.webkit.org/show_bug.cgi?id=208049 + + +Reviewed by Chris Dumez. + +The HTTP WG has decided that SameSite=strict cookies should be returned in document.cookie +even in cases where they are not sent in the HTTP request for the page. Chromium and Gecko +now work according to those rules and the spec is being updated. + +See: +- https://github.com/httpwg/http-extensions/issues/769 +- https://github.com/httpwg/http-extensions/pull/1428/files. + +Tests changed and rebased accordingly. + +* http/tests/cookies/same-site/fetch-after-top-level-cross-origin-redirect-expected.txt: +* http/tests/cookies/same-site/fetch-after-top-level-navigation-from-cross-origin-page-expected.txt: +* http/tests/cookies/same-site/fetch-after-top-level-navigation-initiated-from-iframe-in-cross-origin-page-expected.txt: +* http/tests/cookies/same-site/popup-cross-site-post.html: +* http/tests/cookies/same-site/popup-cross-site.html: +* http/tests/cookies/same-site/popup-same-site-via-cross-site-redirect.html: +* http/tests/cookies/same-site/resources/fetch-after-top-level-cross-origin-redirect.py: +* http/tests/cookies/same-site/resources/fetch-after-top-level-navigation-from-cross-origin-page.py: +* http/tests/cookies/same-site/resources/fetch-after-top-level-navigation-initiated-from-iframe-in-cross-origin-page.py: +* http/tests/cookies/same-site/user-load-cross-site-redirect-expected.txt: +* http/tests/cookies/same-site/user-load-cross-site-redirect.py: + 2021-05-14 Darin Adler output element doesn't react properly to node tree mutations Modified: trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-cross-origin-redirect-expected.txt (277533 => 277534) --- trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-cross-origin-redirect-expected.txt 2021-05-15 05:02:06 UTC (rev 277533) +++ trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-cross-origin-redirect-expected.txt 2021-05-15 05:26:41 UTC (rev 277534) @@ -10,7 +10,7 @@ PASS Has cookie "lax" with value 19. Cookies visible in DOM: -PASS Do not have DOM cookie "strict". +PASS Has DOM cookie "strict" with value 19. PASS Has DOM cookie "implicit-strict" with value 19. PASS Has DOM cookie "strict-because-invalid-SameSite-value" with value 19. PASS Has DOM cookie "lax" with value 19. Modified: trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-navigation-from-cross-origin-page-expected.txt (277533 => 277534) --- trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-navigation-from-cross-origin-page-expected.txt 2021-05-15 05:02:06 UTC (rev 277533) +++ trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-navigation-from-cross-origin-page-expected.txt 2021-05-15 05:26:41 UTC (rev 277534) @@ -10,7 +10,7 @@ PASS Has cookie "lax" with value 5. Cookies visible in DOM: -PASS Do not have DOM cookie "strict". +PASS Has DOM cookie "strict" with value 5. PASS Has DOM cookie "implicit-strict" with value 5. PASS Has DOM cookie "strict-because-invalid-SameSite-value" with value 5. PASS Has DOM cookie "lax" with value 5. Modified: trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-navigation-initiated-from-iframe-in-cross-origin-page-expected.txt (277533 => 277534) --- trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-navigation-initiated-from-iframe-in-cross-origin-page-expected.txt 2021-05-15 05:02:06 UTC (rev 277533) +++ trunk/LayoutTests/http/tests/cookies/same-site/fetch-after-top-level-navigation-initiated-from-iframe-in-cross-origin-page-expected.txt 2021-05-15 05:26:41 UTC (rev 277534) @@ -10,7 +10,7 @@ PASS Has cookie "lax" with value 4. Cookies visible in DOM: -PASS Do not have DOM cookie "strict". +PASS Has DOM cookie "strict&
[webkit-changes] [276413] trunk/Source/WebKit
Title: [276413] trunk/Source/WebKit Revision 276413 Author wilan...@apple.com Date 2021-04-21 18:15:13 -0700 (Wed, 21 Apr 2021) Log Message PCM: Remove PrivateClickMeasurement::PcmDataCarried::NonPersonallyIdentifiable overrides in testing https://bugs.webkit.org/show_bug.cgi?id=224885 Reviewed by Brent Fulgham. We had a temporary override to PrivateClickMeasurement::PcmDataCarried::NonPersonallyIdentifiable in WebKit::PrivateClickMeasurementManager::getTokenPublicKey() and WebKit::PrivateClickMeasurementManager::getSignedUnlinkableToken(). This patch removes those overrides since the network load hang has been resolved. No new tests. Existing tests cover this code. * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::getTokenPublicKey): (WebKit::PrivateClickMeasurementManager::getSignedUnlinkableToken): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (276412 => 276413) --- trunk/Source/WebKit/ChangeLog 2021-04-22 01:04:28 UTC (rev 276412) +++ trunk/Source/WebKit/ChangeLog 2021-04-22 01:15:13 UTC (rev 276413) @@ -1,3 +1,23 @@ +2021-04-21 John Wilander + +PCM: Remove PrivateClickMeasurement::PcmDataCarried::NonPersonallyIdentifiable overrides in testing +https://bugs.webkit.org/show_bug.cgi?id=224885 + + +Reviewed by Brent Fulgham. + +We had a temporary override to PrivateClickMeasurement::PcmDataCarried::NonPersonallyIdentifiable +in WebKit::PrivateClickMeasurementManager::getTokenPublicKey() and +WebKit::PrivateClickMeasurementManager::getSignedUnlinkableToken(). + +This patch removes those overrides since the network load hang has been resolved. + +No new tests. Existing tests cover this code. + +* NetworkProcess/PrivateClickMeasurementManager.cpp: +(WebKit::PrivateClickMeasurementManager::getTokenPublicKey): +(WebKit::PrivateClickMeasurementManager::getSignedUnlinkableToken): + 2021-04-21 Chris Dumez Regression(r275887) open.spotify.com says Safari is not supported Modified: trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp (276412 => 276413) --- trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp 2021-04-22 01:04:28 UTC (rev 276412) +++ trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp 2021-04-22 01:15:13 UTC (rev 276413) @@ -145,7 +145,6 @@ if (attributionReportEndpoint == PrivateClickMeasurement::AttributionReportEndpoint::Destination) return; tokenPublicKeyURL = *m_tokenPublicKeyURLForTesting; -pcmDataCarried = PrivateClickMeasurement::PcmDataCarried::NonPersonallyIdentifiable; } if (tokenPublicKeyURL.isEmpty() || !tokenPublicKeyURL.isValid()) @@ -183,10 +182,8 @@ // This is guaranteed to be close in time to the navigational click which makes it likely to be personally identifiable. auto pcmDataCarried = PrivateClickMeasurement::PcmDataCarried::PersonallyIdentifiable; auto tokenSignatureURL = attribution.tokenSignatureURL(); -if (m_tokenSignatureURLForTesting) { +if (m_tokenSignatureURLForTesting) tokenSignatureURL = *m_tokenSignatureURLForTesting; -pcmDataCarried = PrivateClickMeasurement::PcmDataCarried::NonPersonallyIdentifiable; -} if (tokenSignatureURL.isEmpty() || !tokenSignatureURL.isValid()) return; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [275419] trunk/Source/WebKit
Title: [275419] trunk/Source/WebKit Revision 275419 Author wilan...@apple.com Date 2021-04-02 07:01:07 -0700 (Fri, 02 Apr 2021) Log Message PCM: PrivateClickMeasurementManager::getTokenPublicKey() should not use PrivateClickMeasurement::PcmDataCarried::PersonallyIdentifiable when validating the token before the attribution report is sent https://bugs.webkit.org/show_bug.cgi?id=223956 Reviewed by Youenn Fablet. No new tests. This just changes the NetworkLoadParameters field pcmDataCarried for the initial public key load and for PCM Debug Mode. This network load setting is not observable in tests. * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::storeUnattributed): Now sends PrivateClickMeasurement::PcmDataCarried::PersonallyIdentifiable to PrivateClickMeasurementManager::getTokenPublicKey() since it's required. (WebKit::generateNetworkLoadParameters): Now takes the parameter isDebugModeEnabled and if it's true, forces PrivateClickMeasurement::PcmDataCarried::PersonallyIdentifiable since Debug Mode disables privacy measures making PCM network requests likely to be personally identifiable. (WebKit::generateNetworkLoadParametersForHttpPost): Now forwards isDebugModeEnabled to generateNetworkLoadParameters(). (WebKit::generateNetworkLoadParametersForHttpGet): Now forwards isDebugModeEnabled to generateNetworkLoadParameters(). (WebKit::PrivateClickMeasurementManager::getTokenPublicKey): Now takes a PrivateClickMeasurement::PcmDataCarried parameter to be able to request the public key in either network load mode. Now also forwards isDebugModeEnabled to generateNetworkLoadParameters(). (WebKit::PrivateClickMeasurementManager::fireConversionRequest): Now sends PrivateClickMeasurement::PcmDataCarried::NonPersonallyIdentifiable to PrivateClickMeasurementManager::getTokenPublicKey() since it's required. (WebKit::PrivateClickMeasurementManager::fireConversionRequestImpl): Now forwards isDebugModeEnabled to generateNetworkLoadParameters(). * NetworkProcess/PrivateClickMeasurementManager.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.h Diff Modified: trunk/Source/WebKit/ChangeLog (275418 => 275419) --- trunk/Source/WebKit/ChangeLog 2021-04-02 13:26:00 UTC (rev 275418) +++ trunk/Source/WebKit/ChangeLog 2021-04-02 14:01:07 UTC (rev 275419) @@ -1,3 +1,39 @@ +2021-04-02 John Wilander + +PCM: PrivateClickMeasurementManager::getTokenPublicKey() should not use PrivateClickMeasurement::PcmDataCarried::PersonallyIdentifiable when validating the token before the attribution report is sent +https://bugs.webkit.org/show_bug.cgi?id=223956 + + +Reviewed by Youenn Fablet. + +No new tests. This just changes the NetworkLoadParameters field pcmDataCarried +for the initial public key load and for PCM Debug Mode. This network load setting +is not observable in tests. + +* NetworkProcess/PrivateClickMeasurementManager.cpp: +(WebKit::PrivateClickMeasurementManager::storeUnattributed): +Now sends PrivateClickMeasurement::PcmDataCarried::PersonallyIdentifiable +to PrivateClickMeasurementManager::getTokenPublicKey() since it's required. +(WebKit::generateNetworkLoadParameters): +Now takes the parameter isDebugModeEnabled and if it's true, forces +PrivateClickMeasurement::PcmDataCarried::PersonallyIdentifiable since +Debug Mode disables privacy measures making PCM network requests likely +to be personally identifiable. +(WebKit::generateNetworkLoadParametersForHttpPost): +Now forwards isDebugModeEnabled to generateNetworkLoadParameters(). +(WebKit::generateNetworkLoadParametersForHttpGet): +Now forwards isDebugModeEnabled to generateNetworkLoadParameters(). +(WebKit::PrivateClickMeasurementManager::getTokenPublicKey): +Now takes a PrivateClickMeasurement::PcmDataCarried parameter to be able +to request the public key in either network load mode. +Now also forwards isDebugModeEnabled to generateNetworkLoadParameters(). +(WebKit::PrivateClickMeasurementManager::fireConversionRequest): +Now sends PrivateClickMeasurement::PcmDataCarried::NonPersonallyIdentifiable +to PrivateClickMeasurementManager::getTokenPublicKey() since it's required. +(WebKit::PrivateClickMeasurementManager::fireConversionRequestImpl): +Now forwards isDebugModeEnabled to generateNetworkLoadParameters(). +* NetworkProcess/PrivateClickMeasurementManager.h: + 2021-04-02 Youenn Fablet Use webrtc GPU Process feature flag for audio capture on MacOS Modified: t
[webkit-changes] [274543] trunk/Tools
Title: [274543] trunk/Tools Revision 274543 Author wilan...@apple.com Date 2021-03-16 17:54:17 -0700 (Tue, 16 Mar 2021) Log Message PCM: Use adoptWK in TestInvocation::didReceiveSynchronousMessageFromInjectedBundle()'s handling of "SetPrivateClickMeasurementAttributionReportURLsForTesting" https://bugs.webkit.org/show_bug.cgi?id=223286 Reviewed by Darin Adler. See Darin's initial comment here: https://bugs.webkit.org/show_bug.cgi?id=223238#c9 * WebKitTestRunner/TestInvocation.cpp: (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): Modified Paths trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/TestInvocation.cpp Diff Modified: trunk/Tools/ChangeLog (274542 => 274543) --- trunk/Tools/ChangeLog 2021-03-17 00:53:41 UTC (rev 274542) +++ trunk/Tools/ChangeLog 2021-03-17 00:54:17 UTC (rev 274543) @@ -1,3 +1,16 @@ +2021-03-16 John Wilander + +PCM: Use adoptWK in TestInvocation::didReceiveSynchronousMessageFromInjectedBundle()'s handling of "SetPrivateClickMeasurementAttributionReportURLsForTesting" +https://bugs.webkit.org/show_bug.cgi?id=223286 + + +Reviewed by Darin Adler. + +See Darin's initial comment here: https://bugs.webkit.org/show_bug.cgi?id=223238#c9 + +* WebKitTestRunner/TestInvocation.cpp: +(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): + 2021-03-16 Jonathan Bedard [resultsdbpy] Save identifiers in commit table Modified: trunk/Tools/WebKitTestRunner/TestInvocation.cpp (274542 => 274543) --- trunk/Tools/WebKitTestRunner/TestInvocation.cpp 2021-03-17 00:53:41 UTC (rev 274542) +++ trunk/Tools/WebKitTestRunner/TestInvocation.cpp 2021-03-17 00:54:17 UTC (rev 274543) @@ -1354,9 +1354,9 @@ if (WKStringIsEqualToUTF8CString(messageName, "SetPrivateClickMeasurementAttributionReportURLsForTesting")) { auto testDictionary = dictionaryValue(messageBody); -auto sourceURL = WKURLCreateWithUTF8CString(toWTFString(stringValue(testDictionary, "SourceURLString")).utf8().data()); -auto attributeOnURL = WKURLCreateWithUTF8CString(toWTFString(stringValue(testDictionary, "AttributeOnURLString")).utf8().data()); -TestController::singleton().setPrivateClickMeasurementAttributionReportURLsForTesting(sourceURL, attributeOnURL); +auto sourceURL = adoptWK(WKURLCreateWithUTF8CString(toWTFString(stringValue(testDictionary, "SourceURLString")).utf8().data())); +auto attributeOnURL = adoptWK(WKURLCreateWithUTF8CString(toWTFString(stringValue(testDictionary, "AttributeOnURLString")).utf8().data())); +TestController::singleton().setPrivateClickMeasurementAttributionReportURLsForTesting(sourceURL.get(), attributeOnURL.get()); return nullptr; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [274513] trunk
ocess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.h trunk/Source/WebKit/UIProcess/API/C/WKPage.cpp trunk/Source/WebKit/UIProcess/API/C/WKPagePrivate.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp Diff Modified: trunk/LayoutTests/ChangeLog (274512 => 274513) --- trunk/LayoutTests/ChangeLog 2021-03-16 20:51:11 UTC (rev 274512) +++ trunk/LayoutTests/ChangeLog 2021-03-16 20:57:04 UTC (rev 274513) @@ -1,3 +1,30 @@ +2021-03-16 John Wilander + +PCM: Test infrastructure for sending attribution reports to attribution website too +https://bugs.webkit.org/show_bug.cgi?id=223238 + + +Reviewed by Brent Fulgham. + +setPrivateClickMeasurementAttributionReportURLForTesting() now is named +setPrivateClickMeasurementAttributionReportURLsForTesting() in the layers that +eventually reach WebKit::PrivateClickMeasurementManager. It takes two URLs +attributionReportSourceURL and attributionReportAttributeOnURL and sets them +in a new struct AttributionReportTestConfig. + +* http/tests/contentextensions/block-private-click-measurement.html: +* http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html: +* http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start.html: +* http/tests/privateClickMeasurement/resources/getConversionData.php: +* http/tests/privateClickMeasurement/resources/util.js: +(tearDownAndFinish): +* http/tests/privateClickMeasurement/send-attribution-conversion-request.html: +* http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce.html: +* platform/mac-wk2/TestExpectations: +This was marked as an old flaky failure and tracked in rdar://63357481. +I've kept my eye on it and it does not seem flaky anymore. Removed failure +expectation to get better test coverage. + 2021-03-16 Truitt Savell Many media/media-fragments/ tests are crashing due to other tests that run before them. Modified: trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html (274512 => 274513) --- trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html 2021-03-16 20:51:11 UTC (rev 274512) +++ trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html 2021-03-16 20:57:04 UTC (rev 274513) @@ -15,7 +15,7 @@ if (window.testRunner) { testRunner.setPrivateClickMeasurementOverrideTimerForTesting(true); -testRunner.setPrivateClickMeasurementAttributionReportURLForTesting("http://127.0.0.1:8000/privateClickMeasurement/resources/conversionReport.php"); +testRunner.setPrivateClickMeasurementAttributionReportURLsForTesting("http://127.0.0.1:8000/privateClickMeasurement/resources/conversionReport.php", "http://localhost:8000/privateClickMeasurement/resources/conversionReport.php"); } function activateElement(elementID) { Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html (274512 => 274513) --- trunk/LayoutTests/http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html 2021-03-16 20:51:11 UTC (rev 274512) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html 2021-03-16 20:57:04 UTC (rev 274513) @@ -18,7 +18,7 @@ prepareTest(); if (window.testRunner) -testRunner.setPrivateClickMeasurementAttributionReportURLForTesting("http://127.0.0.1:8000/privateClickMeasurement/resources/conversionReport.php?nonce=" + nonce); +testRunner.setPrivateClickMeasurementAttributionReportURLsForTesting("http://127.0.0.1:8000/privateClickMeasurement/resources/conversionReport.php?nonce=" + nonce, "http://localhost:8000/privateClickMeasurement/resources/conversionReport.php?nonce=" + nonce); function activateElement(elementID) { var element = document.getElementById(elementID); Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start.html (274512 => 274513) --- trunk/LayoutTests/http/tests/
[webkit-changes] [274453] trunk
Title: [274453] trunk Revision 274453 Author wilan...@apple.com Date 2021-03-15 16:44:21 -0700 (Mon, 15 Mar 2021) Log Message PCM: Split attributionReportURL() into attributionReportSourceURL() and attributionReportAttributeOnURL() https://bugs.webkit.org/show_bug.cgi?id=223210 Reviewed by Brent Fulgham. This patch splits WebCore::PrivateClickMeasurement::attributionReportURL() into Source/WebCore: PrivateClickMeasurement::attributionReportSourceURL() and PrivateClickMeasurement::attributionReportAttributeOnURL() to facilitate sending attribution reports to both the click source and destination. No new tests. This patch doesn't change functionality and the functionality is covered by existing tests. * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::handleClick): Changed the assertion to check both the attribution URLs. * loader/PrivateClickMeasurement.cpp: (WebCore::attributionReportURL): Static convenience function to share code between PrivateClickMeasurement::attributionReportSourceURL() and PrivateClickMeasurement::attributionReportAttributeOnURL(). (WebCore::PrivateClickMeasurement::attributionReportSourceURL const): Generates the well-known location for the click source. (WebCore::PrivateClickMeasurement::attributionReportAttributeOnURL const): Generates the well-known location for the click destination. (WebCore::PrivateClickMeasurement::attributionReportURL const): Deleted. No mostly exists as a static convenience function (see above). * loader/PrivateClickMeasurement.h: Source/WebKit: WebCore::PrivateClickMeasurement::attributionReportSourceURL() and WebCore::PrivateClickMeasurement::attributionReportAttributeOnURL() to facilitate sending attribution reports to both the click source and destination. * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::storeUnattributed): Removed a reference to ads in a log statement. (WebKit::PrivateClickMeasurementManager::fireConversionRequestImpl): Now uses WebCore::PrivateClickMeasurement::attributionReportSourceURL(). Tools: WebCore::PrivateClickMeasurement::attributionReportSourceURL() and WebCore::PrivateClickMeasurement::attributionReportAttributeOnURL() to facilitate sending attribution reports to both the click source and destination. * TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp: (TestWebKitAPI::TEST): Updated to use the new functions and also not repeat tests of static data. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLAnchorElement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (274452 => 274453) --- trunk/Source/WebCore/ChangeLog 2021-03-15 23:41:59 UTC (rev 274452) +++ trunk/Source/WebCore/ChangeLog 2021-03-15 23:44:21 UTC (rev 274453) @@ -1,3 +1,35 @@ +2021-03-15 John Wilander + +PCM: Split attributionReportURL() into attributionReportSourceURL() and attributionReportAttributeOnURL() +https://bugs.webkit.org/show_bug.cgi?id=223210 + + +Reviewed by Brent Fulgham. + +This patch splits WebCore::PrivateClickMeasurement::attributionReportURL() into +PrivateClickMeasurement::attributionReportSourceURL() and +PrivateClickMeasurement::attributionReportAttributeOnURL() to +facilitate sending attribution reports to both the click source and destination. + +No new tests. This patch doesn't change functionality and the functionality is +covered by existing tests. + +* html/HTMLAnchorElement.cpp: +(WebCore::HTMLAnchorElement::handleClick): +Changed the assertion to check both the attribution URLs. +* loader/PrivateClickMeasurement.cpp: +(WebCore::attributionReportURL): +Static convenience function to share code between +PrivateClickMeasurement::attributionReportSourceURL() and +PrivateClickMeasurement::attributionReportAttributeOnURL(). +(WebCore::PrivateClickMeasurement::attributionReportSourceURL const): +Generates the well-known location for the click source. +(WebCore::PrivateClickMeasurement::attributionReportAttributeOnURL const): +Generates the well-known location for the click destination. +(WebCore::PrivateClickMeasurement::attributionReportURL const): Deleted. +No mostly exists as a static convenience function (see above). +* loader/PrivateClickMeasurement.h: + 2021-03-15 Wenson Hsieh Image overlay creation should be idempotent Modified: trunk/Source/WebCore/html/HTMLAnchorElement.cpp (274452 => 274453) --- trunk/Sou
[webkit-changes] [274087] trunk
bCore/PrivateClickMeasurement.cpp: (TestWebKitAPI::TEST): * TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm: (TestWebKitAPI::TEST): * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: * WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::setPrivateClickMeasurementFraudPreventionValuesForTesting): (WTR::TestRunner::setFraudPreventionValuesForTesting): Deleted. * WebKitTestRunner/InjectedBundle/TestRunner.h: * WebKitTestRunner/TestController.cpp: (WTR::TestController::setPCMFraudPreventionValuesForTesting): (WTR::TestController::setFraudPreventionValuesForTesting): Deleted. * WebKitTestRunner/TestController.h: * WebKitTestRunner/TestInvocation.cpp: (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): LayoutTests: * http/tests/privateClickMeasurement/resources/fraudPreventionTestURL.php: Renamed from LayoutTests/http/tests/privateClickMeasurement/resources/signToken.php. The way this PHP file is used goes beyond signing tokens so it now has a generic name. * http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce-expected.txt: Re-baselined to reflect the new naming. * http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebCore/loader/cocoa/PrivateClickMeasurementCocoa.mm trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.h trunk/Source/WebKit/UIProcess/API/C/WKPage.cpp trunk/Source/WebKit/UIProcess/API/C/WKPagePrivate.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/PrivateClickMeasurementCocoa.mm trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp Added Paths trunk/LayoutTests/http/tests/privateClickMeasurement/resources/fraudPreventionTestURL.php Removed Paths trunk/LayoutTests/http/tests/privateClickMeasurement/resources/signToken.php Diff Modified: trunk/LayoutTests/ChangeLog (274086 => 274087) --- trunk/LayoutTests/ChangeLog 2021-03-08 19:36:48 UTC (rev 274086) +++ trunk/LayoutTests/ChangeLog 2021-03-08 19:51:56 UTC (rev 274087) @@ -1,3 +1,20 @@ +2021-03-08 John Wilander + +PCM: Align fraud prevention token naming with issue 73 in the Privacy CG repo +https://bugs.webkit.org/show_bug.cgi?id=222838 + + +Reviewed by Brent Fulgham. + +This patch doesn't change functionality and only aligns naming to this W3C Privacy CG issue: +https://github.com/privacycg/private-click-measurement/issues/73 + +* http/tests/privateClickMeasurement/resources/fraudPreventionTestURL.php: Renamed from LayoutTests/http/tests/privateClickMeasurement/resources/signToken.php. +The way this PHP file is used goes beyond signing tokens so it now has a generic name. +* http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce-expected.txt: +Re-baselined to reflect the new naming. +* http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce.html: + 2021-03-06 Ryan Haddad REGRESSION (r269627?): ASSERTION FAILED: &layoutState().establishedFormattingState(layoutBox.formattingContextRoot()) == this in WebCore::Layout::FormattingState::boxGeometry Copied: trunk/LayoutTests/http/tests/privateClickMeasurement/resources/fraudPreventionTestURL.php (from rev 274085, trunk/LayoutTests/http/tests/privateClickMeasurement/resources/signToken.php) (0 => 274087) --- trunk/LayoutTests/http/tests/privateClickMeasurement/resources/fraudPreventionTestURL.php (rev 0) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/resources/fraudPreventionTestURL.php 2021-03-08 19:51:56 UTC
[webkit-changes] [273590] trunk
trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-website-data-removed.html trunk/LayoutTests/platform/wk2/TestExpectations trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-not-removed-with-user-interaction-6-days-ago-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-not-removed-with-user-interaction-6-days-ago.html trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-with-user-interaction-7-days-ago-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-with-user-interaction-7-days-ago.html Removed Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-statistics-with-no-user-interaction-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-statistics-with-no-user-interaction.html Diff Modified: trunk/LayoutTests/ChangeLog (273589 => 273590) --- trunk/LayoutTests/ChangeLog 2021-02-26 22:11:04 UTC (rev 273589) +++ trunk/LayoutTests/ChangeLog 2021-02-26 22:26:35 UTC (rev 273590) @@ -1,3 +1,27 @@ +2021-02-26 John Wilander + +Non-cookie website data not deleted after 7 days of browser use without user interaction +https://bugs.webkit.org/show_bug.cgi?id=48 + + +Reviewed by Brent Fulgham and informally by Kate Cheney. + +Existing test cases now make use of the new numberOfOperatingDaysPassed +parameter to testRunner.setStatisticsExpiredStatistic() to control the exact +number of operating days passed since user interaction. +A new test case makes sure website data is not deleted below the threshold. + +* http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-not-removed-with-user-interaction-6-days-ago-expected.txt: Added. +* http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-not-removed-with-user-interaction-6-days-ago.html: Added. +Sets numberOfOperatingDaysPassed to 6. +* http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-with-user-interaction-7-days-ago-expected.txt: Renamed from LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-statistics-with-no-user-interaction-expected.txt. +* http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-with-user-interaction-7-days-ago.html: Renamed from LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-statistics-with-no-user-interaction.html. +Sets numberOfOperatingDaysPassed to 7. +* http/tests/resourceLoadStatistics/operating-dates-all-website-data-removed.html: +Sets numberOfOperatingDaysPassed to 30. +* platform/wk2/TestExpectations: +Updated existing expectation with new file name. + 2021-02-26 Lauro Moura [GLIB] Move some css3 blending baselines to glib and update expectations Copied: trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-not-removed-with-user-interaction-6-days-ago-expected.txt (from rev 273589, trunk/LayoutTests/http/tests/resourceLoadStatistics/operating-dates-all-but-cookies-removed-statistics-with-no-user-interaction-expected.txt) (0 => 273590) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/operatin
[webkit-changes] [273088] trunk
/store-private-click-measurement-with-source-nonce-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce.html Diff Modified: trunk/LayoutTests/ChangeLog (273087 => 273088) --- trunk/LayoutTests/ChangeLog 2021-02-18 19:40:50 UTC (rev 273087) +++ trunk/LayoutTests/ChangeLog 2021-02-18 19:44:39 UTC (rev 273088) @@ -1,3 +1,31 @@ +2021-02-18 John Wilander + +PCM: Request signature for unlinkable token using attributionSourceNonce +https://bugs.webkit.org/show_bug.cgi?id=222076 + + +Reviewed by Chris Dumez. + +* http/tests/contentextensions/block-private-click-measurement.html: +Adoption of renamed TestRunner function setPrivateClickMeasurementAttributionReportURLForTesting(). +* http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html: +Adoption of renamed TestRunner function setPrivateClickMeasurementAttributionReportURLForTesting(). +* http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start.html: +Adoption of renamed TestRunner function setPrivateClickMeasurementAttributionReportURLForTesting(). +* http/tests/privateClickMeasurement/resources/getConversionData.php: +Adoption of renamed TestRunner function setPrivateClickMeasurementAttributionReportURLForTesting(). +* http/tests/privateClickMeasurement/resources/getTokenSigningData.php: Added. +* http/tests/privateClickMeasurement/resources/signToken.php: Added. +* http/tests/privateClickMeasurement/resources/tokenSigningFilePath.php: Added. +* http/tests/privateClickMeasurement/resources/util.js: +(tearDownAndFinish): +Adoption of renamed TestRunner function setPrivateClickMeasurementAttributionReportURLForTesting(). +Now also calls setPrivateClickMeasurementTokenSignatureURLForTesting(). +* http/tests/privateClickMeasurement/send-attribution-conversion-request.html: +Adoption of renamed TestRunner function setPrivateClickMeasurementAttributionReportURLForTesting(). +* http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce-expected.txt: Added. +* http/tests/privateClickMeasurement/store-private-click-measurement-with-source-nonce.html: Added. + 2021-02-18 Michael Saboff [JSC] Implement RegExp Match Indices proposal Modified: trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html (273087 => 273088) --- trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html 2021-02-18 19:40:50 UTC (rev 273087) +++ trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html 2021-02-18 19:44:39 UTC (rev 273088) @@ -15,7 +15,7 @@ if (window.testRunner) { testRunner.setPrivateClickMeasurementOverrideTimerForTesting(true); -testRunner.setPrivateClickMeasurementConversionURLForTesting("http://127.0.0.1:8000/privateClickMeasurement/resources/conversionReport.php"); +testRunner.setPrivateClickMeasurementAttributionReportURLForTesting("http://127.0.0.1:8000/privateClickMeasurement/resources/conversionReport.php"); } function activateElement(elementID) { Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html (273087 => 273088) --- trunk/LayoutTests/http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html 2021-02-18 19:40:50 UTC (rev 273087) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html 2021-02-18 19:44:39 UTC (rev 273088) @@ -18,7 +18,7 @@ prepareTest(); if (window.testRunner) -testRunner.setPrivateClickMeasurementConversionURLForTesting("http://127.0.0.1:8000/privateClickMeasurement/resources/conversionReport.php?nonce=" + nonce); +testRunner.setPrivateClickMeasurementAttributionReportURLForTesting("http://127.0.0.1:8000/privateClickMeasurement/resources/conversionReport.php?nonce=" + nonce); function activateElement(elementID) { var element = document.getElementById(elementID); Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start.html (273087 => 273088) --- trunk/LayoutTests/http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start.html 2021-02-18 19:40:50 UTC (rev 273087) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start.html 2021-02-18 19:44:39 UTC (rev 273088) @@ -18,7 +18,7 @@ prepareTest(); if (window.testRunner) { -testRunner.setPrivateClickMeasurementConversionURLForTesting("http://127.0.0.1:8000/privateClickM
[webkit-changes] [272894] trunk
Title: [272894] trunk Revision 272894 Author wilan...@apple.com Date 2021-02-15 20:11:31 -0800 (Mon, 15 Feb 2021) Log Message PCM: Add high entropy attributionSourceNonce attribute to anchor tags https://bugs.webkit.org/show_bug.cgi?id=221934 Reviewed by Jiewen Tan. In Private Click Measurement (PCM), the source site should have the option to provide a high entropy nonce with which PCM can asynchronously validate its subsequent, asynchronous request for a signature of its unlinkable token. The nonce attribute's name is attributionSourceNonce and it's a 128-bit/16-byte Base64URL encoded string. The attribute is behind the experimental feature flag PrivateClickMeasurementFraudPrevention. Source/WebCore: New API tests added. * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::parsePrivateClickMeasurement const): * html/HTMLAnchorElement.idl: * html/HTMLAttributeNames.in: * loader/PrivateClickMeasurement.h: (WebCore::PrivateClickMeasurement::EphemeralSourceNonce::EphemeralSourceNonce): (WebCore::PrivateClickMeasurement::EphemeralSourceNonce::isValid const): (WebCore::PrivateClickMeasurement::setEphemeralSourceNonce): (WebCore::PrivateClickMeasurement::ephemeralSourceNonce const): (WebCore::PrivateClickMeasurement::clearEphemeralSourceNonce): * page/Settings.yaml: Tools: * TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp: (TestWebKitAPI::TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLAnchorElement.cpp trunk/Source/WebCore/html/HTMLAnchorElement.idl trunk/Source/WebCore/html/HTMLAttributeNames.in trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebCore/page/Settings.yaml trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (272893 => 272894) --- trunk/Source/WebCore/ChangeLog 2021-02-16 02:06:18 UTC (rev 272893) +++ trunk/Source/WebCore/ChangeLog 2021-02-16 04:11:31 UTC (rev 272894) @@ -1,3 +1,35 @@ +2021-02-15 John Wilander + +PCM: Add high entropy attributionSourceNonce attribute to anchor tags +https://bugs.webkit.org/show_bug.cgi?id=221934 + + +Reviewed by Jiewen Tan. + +In Private Click Measurement (PCM), the source site should have the option to +provide a high entropy nonce with which PCM can asynchronously validate its +subsequent, asynchronous request for a signature of its unlinkable token. + +The nonce attribute's name is attributionSourceNonce and it's a +128-bit/16-byte Base64URL encoded string. + +The attribute is behind the experimental feature flag +PrivateClickMeasurementFraudPrevention. + +New API tests added. + +* html/HTMLAnchorElement.cpp: +(WebCore::HTMLAnchorElement::parsePrivateClickMeasurement const): +* html/HTMLAnchorElement.idl: +* html/HTMLAttributeNames.in: +* loader/PrivateClickMeasurement.h: +(WebCore::PrivateClickMeasurement::EphemeralSourceNonce::EphemeralSourceNonce): +(WebCore::PrivateClickMeasurement::EphemeralSourceNonce::isValid const): +(WebCore::PrivateClickMeasurement::setEphemeralSourceNonce): +(WebCore::PrivateClickMeasurement::ephemeralSourceNonce const): +(WebCore::PrivateClickMeasurement::clearEphemeralSourceNonce): +* page/Settings.yaml: + 2021-02-15 Eric Carlson [macOS] Connect Touch Bar to MediaSession Modified: trunk/Source/WebCore/html/HTMLAnchorElement.cpp (272893 => 272894) --- trunk/Source/WebCore/html/HTMLAnchorElement.cpp 2021-02-16 02:06:18 UTC (rev 272893) +++ trunk/Source/WebCore/html/HTMLAnchorElement.cpp 2021-02-16 04:11:31 UTC (rev 272894) @@ -450,7 +450,19 @@ return WTF::nullopt; } -return PrivateClickMeasurement { SourceID(attributionSourceID.value()), SourceSite(documentRegistrableDomain), AttributeOnSite(attributeOnURL) }; +auto privateClickMeasurement = PrivateClickMeasurement { SourceID(attributionSourceID.value()), SourceSite(documentRegistrableDomain), AttributeOnSite(attributeOnURL) }; + +auto attributionSourceNonceAttr = attributeWithoutSynchronization(attributionsourcenonceAttr); +if (!attributionSourceNonceAttr.isEmpty()) { +auto ephemeralNonce = PrivateClickMeasurement::EphemeralSourceNonce { attributionSourceNonceAttr }; +if (!ephemeralNonce.isValid()) { +document().addConsoleMessage(MessageSource::Other, MessageLevel::Warning, "attributionsourcenonce was not valid."_s); +return WTF::nullopt; +} +privateClickMeasurement.setEphemeralSourceNonce(WTFMove(ephemeralNonce)); +} + +return privateClickMeasurement; } void HTMLAnchorElement::handleClick(Event& event) Modified: trunk/Source/WebCore/html/HTMLAnchorElement.idl (272893 => 272894) --- trunk/Source/WebCore/html/HTMLAnchorElement.idl 2021-02-16 02:06:18 UTC
[webkit-changes] [271799] trunk
Title: [271799] trunk Revision 271799 Author wilan...@apple.com Date 2021-01-25 10:28:41 -0800 (Mon, 25 Jan 2021) Log Message PCM: Use different well-known locations for triggering and reporting attribution https://bugs.webkit.org/show_bug.cgi?id=220902 Reviewed by Brent Fulgham. The discussion in W3C Privacy CG concluded that we should use distinct well-known URL paths for websites triggering attribution and for the browser reporting attribution (https://github.com/privacycg/private-click-measurement/issues/59). This patch changes the one location to these two: /.well-known/private-click-measurement/trigger-attribution /.well-known/private-click-measurement/report-attribution Source/WebCore: Existing tests updated. * loader/PrivateClickMeasurement.cpp: (WebCore::PrivateClickMeasurement::parseAttributionRequest): (WebCore::PrivateClickMeasurement::reportURL const): Tools: * TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp: (TestWebKitAPI::TEST): * TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm: (TestWebKitAPI::TEST): LayoutTests: * http/tests/privateClickMeasurement/resources/redirectToConversion.php: * http/tests/privateClickMeasurement/resources/redirectToConversionOnIPAddress.php: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversion.php trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionOnIPAddress.php trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm Diff Modified: trunk/LayoutTests/ChangeLog (271798 => 271799) --- trunk/LayoutTests/ChangeLog 2021-01-25 18:19:47 UTC (rev 271798) +++ trunk/LayoutTests/ChangeLog 2021-01-25 18:28:41 UTC (rev 271799) @@ -1,3 +1,23 @@ +2021-01-25 John Wilander + +PCM: Use different well-known locations for triggering and reporting attribution +https://bugs.webkit.org/show_bug.cgi?id=220902 + + +Reviewed by Brent Fulgham. + +The discussion in W3C Privacy CG concluded that we should use distinct +well-known URL paths for websites triggering attribution and for the +browser reporting attribution +(https://github.com/privacycg/private-click-measurement/issues/59). + +This patch changes the one location to these two: +/.well-known/private-click-measurement/trigger-attribution +/.well-known/private-click-measurement/report-attribution + +* http/tests/privateClickMeasurement/resources/redirectToConversion.php: +* http/tests/privateClickMeasurement/resources/redirectToConversionOnIPAddress.php: + 2021-01-25 Sam Weinig Import css/css-color tests from WPT Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversion.php (271798 => 271799) --- trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversion.php 2021-01-25 18:19:47 UTC (rev 271798) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversion.php 2021-01-25 18:28:41 UTC (rev 271799) @@ -2,8 +2,8 @@ header("HTTP/1.1 302 Found"); header("Cache-Control: no-cache, no-store, must-revalidate"); if (isset($_GET["conversionData"]) && isset($_GET["priority"])) { - header("Location: /.well-known/private-click-measurement/" . $_GET["conversionData"] . "/" . $_GET["priority"]); + header("Location: /.well-known/private-click-measurement/trigger-attribution/" . $_GET["conversionData"] . "/" . $_GET["priority"]); } else if (isset($_GET["conversionData"])) { - header("Location: /.well-known/private-click-measurement/" . $_GET["conversionData"]); + header("Location: /.well-known/private-click-measurement/trigger-attribution/" . $_GET["conversionData"]); } ?> Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionOnIPAddress.php (271798 => 271799) --- trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionOnIPAddress.php 2021-01-25 18:19:47 UTC (rev 271798) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/resources/redirectToConversionOnIPAddress.php 2021-01-25 18:28:41 UTC (rev 271799) @@ -1,8 +1,8 @@ header("HTTP/1.0 302 Found"); if (isset($_GET["conversionData"]) && isset($_GET["priority"])) { - header("Location: https://127.0.0.1:8000/.well-known/private-click-measurement/" . $_GET["conversionData"] . "/" . $_GET["priority"]); + header("Location: https://127.0.0.1:8000/.well-known/private-click-measurement/trigger-attribution/" . $
[webkit-changes] [271473] trunk/Source
Title: [271473] trunk/Source Revision 271473 Author wilan...@apple.com Date 2021-01-13 16:10:07 -0800 (Wed, 13 Jan 2021) Log Message PCM: Output logs by default, including to Web Inspector https://bugs.webkit.org/show_bug.cgi?id=220596 Reviewed by Brent Fulgham. This change turns on PCM output to Web Inspector and logs Source/WebCore: by default. In the case of WebCore::PrivateClickMeasurement, this means we no longer need the debugModeEnabled() convenience function. * loader/PrivateClickMeasurement.cpp: (WebCore::PrivateClickMeasurement::parseAttributionRequest): (WebCore::PrivateClickMeasurement::debugModeEnabled): Deleted. * loader/PrivateClickMeasurement.h: Source/WebKit: by default. In some of the cases, the syslog output was deleted since it doesn't make sense to log those messages now that we have output in Web Inspector. * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::storeUnattributed): (WebKit::PrivateClickMeasurementManager::handleAttribution): (WebKit::PrivateClickMeasurementManager::attribute): (WebKit::PrivateClickMeasurementManager::fireConversionRequest): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (271472 => 271473) --- trunk/Source/WebCore/ChangeLog 2021-01-14 00:07:24 UTC (rev 271472) +++ trunk/Source/WebCore/ChangeLog 2021-01-14 00:10:07 UTC (rev 271473) @@ -1,3 +1,21 @@ +2021-01-13 John Wilander + +PCM: Output logs by default, including to Web Inspector +https://bugs.webkit.org/show_bug.cgi?id=220596 + + +Reviewed by Brent Fulgham. + +This change turns on PCM output to Web Inspector and logs +by default. In the case of WebCore::PrivateClickMeasurement, +this means we no longer need the debugModeEnabled() +convenience function. + +* loader/PrivateClickMeasurement.cpp: +(WebCore::PrivateClickMeasurement::parseAttributionRequest): +(WebCore::PrivateClickMeasurement::debugModeEnabled): Deleted. +* loader/PrivateClickMeasurement.h: + 2021-01-13 Said Abou-Hallawa Move the space transform outside the Gradient class Modified: trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp (271472 => 271473) --- trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp 2021-01-14 00:07:24 UTC (rev 271472) +++ trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp 2021-01-14 00:10:07 UTC (rev 271473) @@ -61,25 +61,15 @@ if (path.isEmpty() || !path.startsWith(privateClickMeasurementPathPrefix)) return makeUnexpected(nullString()); -if (!redirectURL.protocolIs("https") || redirectURL.hasCredentials() || redirectURL.hasQuery() || redirectURL.hasFragmentIdentifier()) { -if (UNLIKELY(debugModeEnabled())) { -RELEASE_LOG_INFO(PrivateClickMeasurement, "Conversion was not accepted because the URL's protocol is not HTTPS or the URL contains one or more of username, password, query string, and fragment."); -return makeUnexpected("[Private Click Measurement] Conversion was not accepted because the URL's protocol is not HTTPS or the URL contains one or more of username, password, query string, and fragment."_s); -} -return makeUnexpected(nullString()); -} +if (!redirectURL.protocolIs("https") || redirectURL.hasCredentials() || redirectURL.hasQuery() || redirectURL.hasFragmentIdentifier()) +return makeUnexpected("[Private Click Measurement] Conversion was not accepted because the URL's protocol is not HTTPS or the URL contains one or more of username, password, query string, and fragment."_s); auto prefixLength = sizeof(privateClickMeasurementPathPrefix) - 1; if (path.length() == prefixLength + privateClickMeasurementAttributionTriggerDataPathSegmentSize) { auto attributionTriggerDataUInt64 = path.substring(prefixLength, privateClickMeasurementAttributionTriggerDataPathSegmentSize).toUInt64Strict(); -if (!attributionTriggerDataUInt64 || *attributionTriggerDataUInt64 > AttributionTriggerData::MaxEntropy) { -if (UNLIKELY(debugModeEnabled())) { -RELEASE_LOG_INFO(PrivateClickMeasurement, "Conversion was not accepted because the conversion data could not be parsed or was higher than the allowed maximum of %{public}u.", AttributionTriggerData::MaxEntropy); -return makeUnexpected(makeString("[Private Click Measurement] Conversion was not accepted because the conversion data could not be parsed or was higher than the allowed maximum of "_s, AttributionTriggerData::MaxEntropy, "."_s)); -
[webkit-changes] [271448] trunk/Source/WebKit
Title: [271448] trunk/Source/WebKit Revision 271448 Author wilan...@apple.com Date 2021-01-13 11:42:29 -0800 (Wed, 13 Jan 2021) Log Message PCM: Experimental debug mode needs to be read from defaults differently on iOS https://bugs.webkit.org/show_bug.cgi?id=220573 Reviewed by Brent Fulgham. Experimental features on iOS use the prefix "WebKitExperimental" so we need to read it that way on that platform. PCM is not supported on other platforms than macOS and iOS at this point. * UIProcess/Cocoa/WebProcessPoolCocoa.mm: (WebKit::WebProcessPool::platformInitializeNetworkProcess): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm Diff Modified: trunk/Source/WebKit/ChangeLog (271447 => 271448) --- trunk/Source/WebKit/ChangeLog 2021-01-13 19:25:37 UTC (rev 271447) +++ trunk/Source/WebKit/ChangeLog 2021-01-13 19:42:29 UTC (rev 271448) @@ -1,3 +1,18 @@ +2021-01-13 John Wilander + +PCM: Experimental debug mode needs to be read from defaults differently on iOS +https://bugs.webkit.org/show_bug.cgi?id=220573 + + +Reviewed by Brent Fulgham. + +Experimental features on iOS use the prefix "WebKitExperimental" so we +need to read it that way on that platform. PCM is not supported on other +platforms than macOS and iOS at this point. + +* UIProcess/Cocoa/WebProcessPoolCocoa.mm: +(WebKit::WebProcessPool::platformInitializeNetworkProcess): + 2021-01-13 Megan Gardner Defer setting up app highlight menus until needed to not delay launch time. Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm (271447 => 271448) --- trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2021-01-13 19:25:37 UTC (rev 271447) +++ trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2021-01-13 19:42:29 UTC (rev 271448) @@ -491,7 +491,12 @@ #endif parameters.enablePrivateClickMeasurement = ![defaults objectForKey:WebPreferencesKey::privateClickMeasurementEnabledKey()] || [defaults boolForKey:WebPreferencesKey::privateClickMeasurementEnabledKey()]; -parameters.enablePrivateClickMeasurementDebugMode = [defaults boolForKey:[NSString stringWithFormat:@"Experimental%@", WebPreferencesKey::privateClickMeasurementDebugModeEnabledKey().createCFString().get()]]; +#if PLATFORM(MAC) +NSString *format = @"Experimental%@"; +#else +NSString *format = @"WebKitExperimental%@"; +#endif +parameters.enablePrivateClickMeasurementDebugMode = [defaults boolForKey:[NSString stringWithFormat:format, WebPreferencesKey::privateClickMeasurementDebugModeEnabledKey().createCFString().get()]]; } void WebProcessPool::platformInvalidateContext() ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [271184] trunk/Source/WebKit
Title: [271184] trunk/Source/WebKit Revision 271184 Author wilan...@apple.com Date 2021-01-05 17:08:52 -0800 (Tue, 05 Jan 2021) Log Message PCM: Experimental debug mode stops working after initial use https://bugs.webkit.org/show_bug.cgi?id=220336 Reviewed by Brent Fulgham. The existing experimental PCM debug mode uses RuntimeEnabledFeatures::sharedFeatures().privateClickMeasurementDebugModeEnabled() which is not correct in the network process. This makes the flag to lose its state after navigations in new tabs. This patch moves the flag to be alongside the PCM feature flag in WebKit::NetworkProcess. * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::setPrivateClickMeasurementDebugMode): (WebKit::NetworkProcess::privateClickMeasurementDebugModeEnabled const): * NetworkProcess/NetworkProcess.h: * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::debugModeEnabled const): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (271183 => 271184) --- trunk/Source/WebKit/ChangeLog 2021-01-06 00:44:51 UTC (rev 271183) +++ trunk/Source/WebKit/ChangeLog 2021-01-06 01:08:52 UTC (rev 271184) @@ -1,3 +1,26 @@ +2021-01-05 John Wilander + +PCM: Experimental debug mode stops working after initial use +https://bugs.webkit.org/show_bug.cgi?id=220336 + + +Reviewed by Brent Fulgham. + +The existing experimental PCM debug mode uses +RuntimeEnabledFeatures::sharedFeatures().privateClickMeasurementDebugModeEnabled() +which is not correct in the network process. This makes the flag to lose its +state after navigations in new tabs. + +This patch moves the flag to be alongside the PCM feature flag in +WebKit::NetworkProcess. + +* NetworkProcess/NetworkProcess.cpp: +(WebKit::NetworkProcess::setPrivateClickMeasurementDebugMode): +(WebKit::NetworkProcess::privateClickMeasurementDebugModeEnabled const): +* NetworkProcess/NetworkProcess.h: +* NetworkProcess/PrivateClickMeasurementManager.cpp: +(WebKit::PrivateClickMeasurementManager::debugModeEnabled const): + 2021-01-05 Kimmo Kinnunen WebKit IPC generator tests have duplicate receiver names, limiting the implementation Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp (271183 => 271184) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2021-01-06 00:44:51 UTC (rev 271183) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2021-01-06 01:08:52 UTC (rev 271184) @@ -1324,14 +1324,14 @@ return m_privateClickMeasurementEnabled; } -void NetworkProcess::setPrivateClickMeasurementDebugMode(bool debugMode) +void NetworkProcess::setPrivateClickMeasurementDebugMode(bool enabled) { -if (RuntimeEnabledFeatures::sharedFeatures().privateClickMeasurementDebugModeEnabled() == debugMode) +if (m_privateClickMeasurementDebugModeEnabled == enabled) return; -RuntimeEnabledFeatures::sharedFeatures().setPrivateClickMeasurementDebugModeEnabled(debugMode); +m_privateClickMeasurementDebugModeEnabled = enabled; -String message = debugMode ? "[Private Click Measurement] Turned Debug Mode on."_s : "[Private Click Measurement] Turned Debug Mode off."_s; +String message = enabled ? "[Private Click Measurement] Turned Debug Mode on."_s : "[Private Click Measurement] Turned Debug Mode off."_s; for (auto& networkConnectionToWebProcess : m_webProcessConnections.values()) { if (networkConnectionToWebProcess->sessionID().isEphemeral()) continue; @@ -1339,6 +1339,11 @@ } } +bool NetworkProcess::privateClickMeasurementDebugModeEnabled() const +{ +return m_privateClickMeasurementDebugModeEnabled; +} + void NetworkProcess::preconnectTo(PAL::SessionID sessionID, WebPageProxyIdentifier webPageProxyID, WebCore::PageIdentifier webPageID, const URL& url, const String& userAgent, WebCore::StoredCredentialsPolicy storedCredentialsPolicy, Optional isNavigatingToAppBoundDomain) { LOG(Network, "(NetworkProcess) Preconnecting to URL %s (storedCredentialsPolicy %i)", url.string().utf8().data(), (int)storedCredentialsPolicy); Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.h (271183 => 271184) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.h 2021-01-06 00:44:51 UTC (rev 271183) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.h 2021-01-06 01:08:52 UTC (rev 271184) @@ -279,6 +279,7 @@ void setPrivateClickMeasurementEnabled(bool); bool privateClickMeasurementEnabled() const; void setPrivateClickMeasurementDebugMode(bool); +bool privateClickMeasurementDebugModeEnabled() const
[webkit-changes] [270726] trunk/Source/WebKit
Title: [270726] trunk/Source/WebKit Revision 270726 Author wilan...@apple.com Date 2020-12-11 18:31:53 -0800 (Fri, 11 Dec 2020) Log Message PCM: Change debugModeSecondsUntilSend from 60 seconds to 10 seconds https://bugs.webkit.org/show_bug.cgi?id=219816 Unreviewed change to a constant, only used for debugging. * NetworkProcess/PrivateClickMeasurementManager.cpp: debugModeSecondsUntilSend changed to 10 seconds. (WebKit::PrivateClickMeasurementManager::attribute): Fixed bad indentation. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (270725 => 270726) --- trunk/Source/WebKit/ChangeLog 2020-12-12 02:12:50 UTC (rev 270725) +++ trunk/Source/WebKit/ChangeLog 2020-12-12 02:31:53 UTC (rev 270726) @@ -1,3 +1,16 @@ +2020-12-11 John Wilander + +PCM: Change debugModeSecondsUntilSend from 60 seconds to 10 seconds +https://bugs.webkit.org/show_bug.cgi?id=219816 + + +Unreviewed change to a constant, only used for debugging. + +* NetworkProcess/PrivateClickMeasurementManager.cpp: +debugModeSecondsUntilSend changed to 10 seconds. +(WebKit::PrivateClickMeasurementManager::attribute): +Fixed bad indentation. + 2020-12-11 Ryosuke Niwa [GPU Process] Cache Font objects Modified: trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp (270725 => 270726) --- trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp 2020-12-12 02:12:50 UTC (rev 270725) +++ trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp 2020-12-12 02:31:53 UTC (rev 270726) @@ -47,7 +47,7 @@ using AttributeOnSite = PrivateClickMeasurement::AttributeOnSite; using AttributionTriggerData = PrivateClickMeasurement::AttributionTriggerData; -constexpr Seconds debugModeSecondsUntilSend { 60_s }; +constexpr Seconds debugModeSecondsUntilSend { 10_s }; PrivateClickMeasurementManager::PrivateClickMeasurementManager(NetworkSession& networkSession, NetworkProcess& networkProcess, PAL::SessionID sessionID) : m_firePendingAttributionRequestsTimer(*this, &PrivateClickMeasurementManager::firePendingAttributionRequests) @@ -128,7 +128,7 @@ if (UNLIKELY(debugModeEnabled())) { RELEASE_LOG_INFO(PrivateClickMeasurement, "Setting timer for firing attribution request to the debug mode timeout of %{public}f seconds where the regular timeout would have been %{public}f seconds.", debugModeSecondsUntilSend.seconds(), secondsUntilSend.seconds()); m_networkProcess->broadcastConsoleMessage(m_sessionID, MessageSource::PrivateClickMeasurement, MessageLevel::Log, makeString("[Private Click Measurement] Setting timer for firing attribution request to the debug mode timeout of "_s, debugModeSecondsUntilSend.seconds(), " seconds where the regular timeout would have been "_s, secondsUntilSend.seconds(), " seconds."_s)); -secondsUntilSend = debugModeSecondsUntilSend; +secondsUntilSend = debugModeSecondsUntilSend; } startTimer(secondsUntilSend); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [270723] trunk/Source/WebKit
Title: [270723] trunk/Source/WebKit Revision 270723 Author wilan...@apple.com Date 2020-12-11 17:34:33 -0800 (Fri, 11 Dec 2020) Log Message PCM: Add feature flag support in the network process https://bugs.webkit.org/show_bug.cgi?id=219811 Reviewed by Alex Christensen. No new tests. This just forwards a preference to the network process. * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess): Stores the incoming enablePrivateClickMeasurement from WebKit::NetworkProcessCreationParameters. (WebKit::NetworkProcess::setPrivateClickMeasurementEnabled): (WebKit::NetworkProcess::privateClickMeasurementEnabled const): * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkProcessCreationParameters.cpp: New field enablePrivateClickMeasurement. (WebKit::NetworkProcessCreationParameters::encode const): (WebKit::NetworkProcessCreationParameters::decode): * NetworkProcess/NetworkProcessCreationParameters.h: * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::storeUnattributed): Early return if the feature is not enabled. (WebKit::PrivateClickMeasurementManager::handleAttribution): Early return if the feature is not enabled. (WebKit::PrivateClickMeasurementManager::fireConversionRequest): Early return if the feature is not enabled. (WebKit::PrivateClickMeasurementManager::featureEnabled const): New convenience function. * NetworkProcess/PrivateClickMeasurementManager.h: * UIProcess/Cocoa/WebProcessPoolCocoa.mm: (WebKit::WebProcessPool::platformInitializeNetworkProcess): Sets the new enablePrivateClickMeasurement in WebKit::NetworkProcessCreationParameters. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.h trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm Diff Modified: trunk/Source/WebKit/ChangeLog (270722 => 270723) --- trunk/Source/WebKit/ChangeLog 2020-12-12 01:18:17 UTC (rev 270722) +++ trunk/Source/WebKit/ChangeLog 2020-12-12 01:34:33 UTC (rev 270723) @@ -1,3 +1,40 @@ +2020-12-11 John Wilander + +PCM: Add feature flag support in the network process +https://bugs.webkit.org/show_bug.cgi?id=219811 + + +Reviewed by Alex Christensen. + +No new tests. This just forwards a preference to the network process. + +* NetworkProcess/NetworkProcess.cpp: +(WebKit::NetworkProcess::initializeNetworkProcess): +Stores the incoming enablePrivateClickMeasurement from +WebKit::NetworkProcessCreationParameters. +(WebKit::NetworkProcess::setPrivateClickMeasurementEnabled): +(WebKit::NetworkProcess::privateClickMeasurementEnabled const): +* NetworkProcess/NetworkProcess.h: +* NetworkProcess/NetworkProcessCreationParameters.cpp: +New field enablePrivateClickMeasurement. +(WebKit::NetworkProcessCreationParameters::encode const): +(WebKit::NetworkProcessCreationParameters::decode): +* NetworkProcess/NetworkProcessCreationParameters.h: +* NetworkProcess/PrivateClickMeasurementManager.cpp: +(WebKit::PrivateClickMeasurementManager::storeUnattributed): +Early return if the feature is not enabled. +(WebKit::PrivateClickMeasurementManager::handleAttribution): +Early return if the feature is not enabled. +(WebKit::PrivateClickMeasurementManager::fireConversionRequest): +Early return if the feature is not enabled. +(WebKit::PrivateClickMeasurementManager::featureEnabled const): +New convenience function. +* NetworkProcess/PrivateClickMeasurementManager.h: +* UIProcess/Cocoa/WebProcessPoolCocoa.mm: +(WebKit::WebProcessPool::platformInitializeNetworkProcess): +Sets the new enablePrivateClickMeasurement in +WebKit::NetworkProcessCreationParameters. + 2020-12-11 Jiewen Tan Unreviewed, build fix after r270694 Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp (270722 => 270723) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2020-12-12 01:18:17 UTC (rev 270722) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2020-12-12 01:34:33 UTC (rev 270723) @@ -330,6 +330,7 @@ setCacheModel(parameters.cacheModel); +setPrivateClickMeasurementEnabled(parameters.enablePrivateClickMeasurement); setPrivateClickMeasurementDebugMode(parameters.enablePrivateClickMeasurementDebugMode); for (auto& supplement : m_supplements.values()) @@ -1313,6 +1314,16 @@ } #endif // ENABLE(RESOURCE_LOAD_
[webkit-changes] [270667] trunk
Title: [270667] trunk Revision 270667 Author wilan...@apple.com Date 2020-12-10 21:32:04 -0800 (Thu, 10 Dec 2020) Log Message PCM: Turn feature on by default https://bugs.webkit.org/show_bug.cgi?id=219762 Reviewed by Brent Fulgham. This patch turns on Private Click Measurement (PCM) by default. Source/WTF: * Scripts/Preferences/WebPreferencesExperimental.yaml: LayoutTests: Test cases no longer need to enable it. * http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html: * http/tests/privateClickMeasurement/attribution-conversion-through-cross-site-image-redirect.html: * http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html: * http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html: * http/tests/privateClickMeasurement/clear-through-website-data-removal.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-cross-site-image-redirect.html trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html trunk/LayoutTests/http/tests/privateClickMeasurement/clear-through-website-data-removal.html trunk/Source/WTF/ChangeLog trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml Diff Modified: trunk/LayoutTests/ChangeLog (270666 => 270667) --- trunk/LayoutTests/ChangeLog 2020-12-11 05:21:26 UTC (rev 270666) +++ trunk/LayoutTests/ChangeLog 2020-12-11 05:32:04 UTC (rev 270667) @@ -1,3 +1,20 @@ +2020-12-10 John Wilander + +PCM: Turn feature on by default +https://bugs.webkit.org/show_bug.cgi?id=219762 + + +Reviewed by Brent Fulgham. + +This patch turns on Private Click Measurement (PCM) by default. +Test cases no longer need to enable it. + +* http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html: +* http/tests/privateClickMeasurement/attribution-conversion-through-cross-site-image-redirect.html: +* http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html: +* http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html: +* http/tests/privateClickMeasurement/clear-through-website-data-removal.html: + 2020-12-10 Youenn Fablet Add a SFrame VP8 experimental compatibility mode Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html (270666 => 270667) --- trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html 2020-12-11 05:21:26 UTC (rev 270666) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html 2020-12-11 05:32:04 UTC (rev 270667) @@ -1,4 +1,4 @@ - + Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-cross-site-image-redirect.html (270666 => 270667) --- trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-cross-site-image-redirect.html 2020-12-11 05:21:26 UTC (rev 270666) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-cross-site-image-redirect.html 2020-12-11 05:32:04 UTC (rev 270667) @@ -1,4 +1,4 @@ - + Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html (270666 => 270667) --- trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html 2020-12-11 05:21:26 UTC (rev 270666) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html 2020-12-11 05:32:04 UTC (rev 270667) @@ -1,4 +1,4 @@ - + Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html (270666 => 270667) --- trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html 2020-12-11 05:21:26 UTC (rev 270666) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html 2020-12-11 05:32:04 UTC (rev 270667) @@ -1,4 +1,4 @@ - + Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/clear-through-website-data-removal.html (270666 => 270667) --- trunk/LayoutTests/http/tests/privateClickMeasurement/clear-through-website-data-removal.html 2020-12-11 05:21:26 UTC (rev 270666) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/clear-through-website-data-removal.html 2020-12-11 05:32:04 UTC (rev 27
[webkit-changes] [270598] trunk
Title: [270598] trunk Revision 270598 Author wilan...@apple.com Date 2020-12-09 13:24:40 -0800 (Wed, 09 Dec 2020) Log Message PCM: Make JSON key names use underscores according to the W3C conversation https://bugs.webkit.org/show_bug.cgi?id=219696 Reviewed by Brent Fulgham. Further discussion in https://github.com/privacycg/private-click-measurement/issues/30 concluded that the JSON report should use underscores in its keys instead of dashes. This patch makes that change and shortens the "report_version" key to just "version". Source/WebCore: Existing tests updated. * loader/PrivateClickMeasurement.cpp: (WebCore::PrivateClickMeasurement::json const): Tools: * TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp: (TestWebKitAPI::TEST): LayoutTests: * http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start-expected.txt: * http/tests/privateClickMeasurement/send-attribution-conversion-request-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/send-attribution-conversion-request-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp Diff Modified: trunk/LayoutTests/ChangeLog (270597 => 270598) --- trunk/LayoutTests/ChangeLog 2020-12-09 20:55:17 UTC (rev 270597) +++ trunk/LayoutTests/ChangeLog 2020-12-09 21:24:40 UTC (rev 270598) @@ -1,3 +1,18 @@ +2020-12-09 John Wilander + +PCM: Make JSON key names use underscores according to the W3C conversation +https://bugs.webkit.org/show_bug.cgi?id=219696 + + +Reviewed by Brent Fulgham. + +Further discussion in https://github.com/privacycg/private-click-measurement/issues/30 +concluded that the JSON report should use underscores in its keys instead of dashes. +This patch makes that change and shortens the "report_version" key to just "version". + +* http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start-expected.txt: +* http/tests/privateClickMeasurement/send-attribution-conversion-request-expected.txt: + 2020-12-09 Antti Koivisto Font loads are triggered too late Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start-expected.txt (270597 => 270598) --- trunk/LayoutTests/http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start-expected.txt 2020-12-09 20:55:17 UTC (rev 270597) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/expired-attribution-report-gets-sent-on-session-start-expected.txt 2020-12-09 21:24:40 UTC (rev 270598) @@ -11,7 +11,7 @@ REQUEST_URI: /privateClickMeasurement/resources/conversionReport.php No cookies in attribution request. Request body: -{"source-engagement-type":"click","source-site":"127.0.0.1","source-id":3,"attributed-on-site":"localhost","trigger-data":12,"report-version":1} +{"source_engagement_type":"click","source_site":"127.0.0.1","source_id":3,"attributed_on_site":"localhost","trigger_data":12,"version":1} No stored Private Click Measurement data. Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/send-attribution-conversion-request-expected.txt (270597 => 270598) --- trunk/LayoutTests/http/tests/privateClickMeasurement/send-attribution-conversion-request-expected.txt 2020-12-09 20:55:17 UTC (rev 270597) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/send-attribution-conversion-request-expected.txt 2020-12-09 21:24:40 UTC (rev 270598) @@ -16,7 +16,7 @@ REQUEST_URI: /privateClickMeasurement/resources/conversionReport.php No cookies in attribution request. Request body: -{"source-engagement-type":"click","source-site":"127.0.0.1","source-id":3,"attributed-on-site":"localhost","trigger-data":12,"report-version":1} +{"source_engagement_type":"click","source_site":"127.0.0.1","source_id":3,"attributed_on_site":"localhost","trigger_data":12,"version":1} Modified: trunk/Source/WebCore/ChangeLog (270597 => 270598) --- trunk/Source/WebCore/ChangeLog 2020-12-09 20:55:17 UTC (rev 270597) +++ trunk/Source/WebCore/ChangeLog 2020-12-09 21:24:40 UTC (rev 270598) @@ -1,3 +1,20 @@ +2020-12-09 John Wilander + +PCM: Make JSON key names use underscores according to the W3C conversation +
[webkit-changes] [270456] trunk
Title: [270456] trunk Revision 270456 Author wilan...@apple.com Date 2020-12-04 14:18:51 -0800 (Fri, 04 Dec 2020) Log Message PCM: Switch to 8+4 bits for source IDs and trigger values respectively https://bugs.webkit.org/show_bug.cgi?id=219519 Reviewed by Brent Fulgham. We've received a lot of feedback saying increased entropy on the click side is more important than the current 6 bits on the conversion side. Some of that conversation is captured in https://github.com/privacycg/private-click-measurement/issues/28. Source/WebCore: This patch switches from 6+6 bits to 8+4 bits. It also fixes some minor logging issues. Existing layout tests and API tests were updated. * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::parsePrivateClickMeasurement const): * loader/PrivateClickMeasurement.cpp: (WebCore::PrivateClickMeasurement::parseAttributionRequest): Removed the check that would log "Conversion was not accepted because the URL path did not start with ..." on every redirect in PCM Debug Mode. It was wrong and annoying. (WebCore::PrivateClickMeasurement::json const): Added a call to isValid(). Other checks made sure this wasn't an issue but I'd rather have it in this public function too. * loader/PrivateClickMeasurement.h: (WebCore::PrivateClickMeasurement::AttributionTriggerData::isValid const): Source/WebKit: This patch switches from 6+6 bits to 8+4 bits. It also makes sure PCM Debug Mode consistently logs on the LOG level except for real errors. Existing layout tests and API tests were updated. * NetworkProcess/PrivateClickMeasurementManager.cpp: (WebKit::PrivateClickMeasurementManager::storeUnattributed): (WebKit::PrivateClickMeasurementManager::attribute): (WebKit::PrivateClickMeasurementManager::fireConversionRequest): Tools: This patch switches from 6+6 bits to 8+4 bits. * TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp: (TestWebKitAPI::TEST): LayoutTests: This patch switches from 6+6 bits to 8+4 bits. * http/tests/privateClickMeasurement/anchor-tag-attributes-validation-expected.txt: * http/tests/privateClickMeasurement/anchor-tag-attributes-validation.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-validation-expected.txt trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-validation.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLAnchorElement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.cpp trunk/Source/WebCore/loader/PrivateClickMeasurement.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/PrivateClickMeasurementManager.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp Diff Modified: trunk/LayoutTests/ChangeLog (270455 => 270456) --- trunk/LayoutTests/ChangeLog 2020-12-04 22:14:21 UTC (rev 270455) +++ trunk/LayoutTests/ChangeLog 2020-12-04 22:18:51 UTC (rev 270456) @@ -1,3 +1,20 @@ +2020-12-04 John Wilander + +PCM: Switch to 8+4 bits for source IDs and trigger values respectively +https://bugs.webkit.org/show_bug.cgi?id=219519 + + +Reviewed by Brent Fulgham. + +We've received a lot of feedback saying increased entropy on the click side is more +important than the current 6 bits on the conversion side. Some of that conversation +is captured in https://github.com/privacycg/private-click-measurement/issues/28. + +This patch switches from 6+6 bits to 8+4 bits. + +* http/tests/privateClickMeasurement/anchor-tag-attributes-validation-expected.txt: +* http/tests/privateClickMeasurement/anchor-tag-attributes-validation.html: + 2020-12-04 Commit Queue Unreviewed, reverting r270422. Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-validation-expected.txt (270455 => 270456) --- trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-validation-expected.txt 2020-12-04 22:14:21 UTC (rev 270455) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-validation-expected.txt 2020-12-04 22:18:51 UTC (rev 270456) @@ -1,5 +1,5 @@ -CONSOLE MESSAGE: attributionsourceid must have a non-negative value less than or equal to 63 for Private Click Measurement. -CONSOLE MESSAGE: attributionsourceid must have a non-negative value less than or equal to 63 for Private Click Measurement. +CONSOLE MESSAGE: attributionsourceid must have a non-negative value less than or equal to 255 for Private Click Measurement. +CONSOLE MESSAGE: attributionsourceid must have a non-negative value less than or equal to 255 for Private Click Measurement. CONSOLE MESSAGE: attributionsourceid can not be converted to a non-negative integer which is required for Private Click Measurement. CONSOLE MESSAGE: attributionsourceid can not be converted to a non-negative integer which is re
[webkit-changes] [269886] trunk
itAPI/Tests/WebCore/PrivateClickMeasurement.cpp Diff Modified: trunk/LayoutTests/ChangeLog (269885 => 269886) --- trunk/LayoutTests/ChangeLog 2020-11-16 23:51:48 UTC (rev 269885) +++ trunk/LayoutTests/ChangeLog 2020-11-17 00:00:32 UTC (rev 269886) @@ -1,3 +1,38 @@ +2020-11-16 John Wilander + +PCM: Change attribute and JSON key names according to the W3C conversation +https://bugs.webkit.org/show_bug.cgi?id=218967 + +Reviewed by Brent Fulgham. + +We've discussed extensively with Google and others on naming for the link +attributes and JSON key names in these issues: +https://github.com/privacycg/private-click-measurement/issues/30 +https://github.com/privacycg/private-click-measurement/issues/56 + +This patch changes PCM accordingly. + +* http/tests/contentextensions/block-private-click-measurement.html: +* http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt: +* http/tests/privateClickMeasurement/anchor-tag-attributes-reflect.html: +* http/tests/privateClickMeasurement/anchor-tag-attributes-validation-expected.txt: +* http/tests/privateClickMeasurement/anchor-tag-attributes-validation.html: +* http/tests/privateClickMeasurement/attribution-conversion-through-cross-site-image-redirect.html: +* http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-in-new-window.html: +* http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-with-priority.html: +* http/tests/privateClickMeasurement/attribution-conversion-through-image-redirect-without-priority.html: +* http/tests/privateClickMeasurement/clear-through-website-data-removal.html: +* http/tests/privateClickMeasurement/conversion-disabled-in-ephemeral-session.html: +* http/tests/privateClickMeasurement/expired-attributions-removed.html: +* http/tests/privateClickMeasurement/second-attribution-converted-with-higher-priority.html: +* http/tests/privateClickMeasurement/second-attribution-converted-with-lower-priority.html: +* http/tests/privateClickMeasurement/second-conversion-with-higher-priority.html: +* http/tests/privateClickMeasurement/second-conversion-with-lower-priority.html: +* http/tests/privateClickMeasurement/send-attribution-conversion-request-expected.txt: +* http/tests/privateClickMeasurement/send-attribution-conversion-request.html: +* http/tests/privateClickMeasurement/store-disabled-in-ephemeral-session.html: +* http/tests/privateClickMeasurement/store-private-click-measurement.html: + 2020-11-16 Antoine Quint Add an experimental element Modified: trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html (269885 => 269886) --- trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html 2020-11-16 23:51:48 UTC (rev 269885) +++ trunk/LayoutTests/http/tests/contentextensions/block-private-click-measurement.html 2020-11-17 00:00:32 UTC (rev 269886) @@ -8,7 +8,7 @@ Tests that private click measurement redirects to well-known location don't trigger a conversion if they are blocked by content blockers. -Link +Link </span><span class="cx"> prepareTest(); </span></span></pre></div> <a rel="nofollow" id="trunkLayoutTestshttptestsprivateClickMeasurementanchortagattributesreflectexpectedtxt"></a> <div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt (269885 => 269886)</h4> <pre class="diff"><span> <span class="info">--- trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt 2020-11-16 23:51:48 UTC (rev 269885) +++ trunk/LayoutTests/http/tests/privateClickMeasurement/anchor-tag-attributes-reflect-expected.txt 2020-11-17 00:00:32 UTC (rev 269886) </span><span class="lines">@@ -3,8 +3,8 @@ </span><span class="cx"> On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". </span><span class="cx"> </span><span class="cx"> </span><del>-PASS anchorTag.adcampaignid is "40" -PASS anchorTag.addestination is "destination.example" </del><ins>+PASS anchorTag.attributionsourceid is "40" +PASS anchorTag.attributeon is "destination.example" </ins><span class="cx"> PASS successfullyParsed is true </span><span class="cx"> </span><span class="cx"> TEST COMPLETE </span></span></pre></div> <a rel="nofollow"
[webkit-changes] [269885] trunk/Source/WebKit
Title: [269885] trunk/Source/WebKit Revision 269885 Author wilan...@apple.com Date 2020-11-16 15:51:48 -0800 (Mon, 16 Nov 2020) Log Message NetworkDataTaskCocoa::applyCookiePolicyForThirdPartyCNAMECloaking() redacts the cookie name in log output on customer builds https://bugs.webkit.org/show_bug.cgi?id=218997 Unreviewed minor change to logging. NetworkDataTaskCocoa::applyCookiePolicyForThirdPartyCNAMECloaking() redacts the cookie name in log output on customer builds. This patch changes the format specifier from %s to %{public}s. Note that this logging is just for ITP Debug Mode which is off by default, logs in-memory only, and is disabled again on browser quit. No new tests. This just changes log output on customer builds. * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::applyCookiePolicyForThirdPartyCNAMECloaking): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm Diff Modified: trunk/Source/WebKit/ChangeLog (269884 => 269885) --- trunk/Source/WebKit/ChangeLog 2020-11-16 23:49:30 UTC (rev 269884) +++ trunk/Source/WebKit/ChangeLog 2020-11-16 23:51:48 UTC (rev 269885) @@ -1,3 +1,23 @@ +2020-11-16 John Wilander + +NetworkDataTaskCocoa::applyCookiePolicyForThirdPartyCNAMECloaking() redacts the cookie name in log output on customer builds +https://bugs.webkit.org/show_bug.cgi?id=218997 + + +Unreviewed minor change to logging. + +NetworkDataTaskCocoa::applyCookiePolicyForThirdPartyCNAMECloaking() redacts the +cookie name in log output on customer builds. This patch changes the format +specifier from %s to %{public}s. + +Note that this logging is just for ITP Debug Mode which is off by default, logs +in-memory only, and is disabled again on browser quit. + +No new tests. This just changes log output on customer builds. + +* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: +(WebKit::NetworkDataTaskCocoa::applyCookiePolicyForThirdPartyCNAMECloaking): + 2020-11-16 Chris Dumez [GPUProcess] Update GPUProcess process assertion based on active WebProcesses Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm (269884 => 269885) --- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2020-11-16 23:49:30 UTC (rev 269884) +++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2020-11-16 23:51:48 UTC (rev 269885) @@ -205,7 +205,7 @@ cookie = WebCore::NetworkStorageSession::capExpiryOfPersistentCookie(cookie, ageCapForCNAMECloakedCookies); [cappedCookies addObject:cookie]; if (debugLoggingEnabled) -RELEASE_LOG_INFO(ITPDebug, "Capped the expiry of third-party CNAME cloaked cookie named %s.", [[cookie name] UTF8String]); +RELEASE_LOG_INFO(ITPDebug, "Capped the expiry of third-party CNAME cloaked cookie named %{public}s.", [[cookie name] UTF8String]); } return cappedCookies; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [269489] trunk
Title: [269489] trunk Revision 269489 Author wilan...@apple.com Date 2020-11-05 16:16:56 -0800 (Thu, 05 Nov 2020) Log Message PCM: Switch to JSON report format https://bugs.webkit.org/show_bug.cgi?id=218634 Reviewed by Brent Fulgham. The standards conversation has landed in attribution reports in a JSON format as opposed to the currently implemented URL format. Discussion here: https://github.com/privacycg/private-click-measurement/issues/30 Source/WebCore: No new tests. Existing layout and API tests were updated. * Headers.cmake: Added platform/network/HTTPHeaderValues.h to be able to expose it to WebKit. * WebCore.xcodeproj/project.pbxproj: Now exporting platform/network/HTTPHeaderValues.h. * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::handleClick): Changed a function call from AdClickAttribution::url() to AdClickAttribution::reportURL(). * loader/AdClickAttribution.cpp: (WebCore::AdClickAttribution::reportURL const): The URL no longer carries the report values. Renamed from AdClickAttribution::url(). (WebCore::AdClickAttribution::json const): New function to generate and return the report JSON. (WebCore::AdClickAttribution::url const): Deleted. Renamed to AdClickAttribution::reportURL(). (WebCore::AdClickAttribution::referrer const): Deleted. The referrer is now part of the report JSON. (WebCore::AdClickAttribution::urlForTesting const): Deleted. This class no longer needs to help generate test URLs since report values are now in JSON. * loader/AdClickAttribution.h: * platform/network/FormData.h: Added export of create(const CString&). * platform/network/HTTPHeaderValues.cpp: (WebCore::HTTPHeaderValues::applicationJSONContentType): Used create the new JSON report request. * platform/network/HTTPHeaderValues.h: Added export of maxAge0(). Source/WebKit: * NetworkProcess/AdClickAttributionManager.cpp: (WebKit::AdClickAttributionManager::fireConversionRequest): Tools: * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp: (TestWebKitAPI::TEST): LayoutTests: * http/tests/adClickAttribution/resources/conversionReport.php: * http/tests/adClickAttribution/send-attribution-conversion-request-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionReport.php trunk/LayoutTests/http/tests/adClickAttribution/send-attribution-conversion-request-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Headers.cmake trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/html/HTMLAnchorElement.cpp trunk/Source/WebCore/loader/AdClickAttribution.cpp trunk/Source/WebCore/loader/AdClickAttribution.h trunk/Source/WebCore/platform/network/FormData.h trunk/Source/WebCore/platform/network/HTTPHeaderValues.cpp trunk/Source/WebCore/platform/network/HTTPHeaderValues.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/AdClickAttributionManager.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp Diff Modified: trunk/LayoutTests/ChangeLog (269488 => 269489) --- trunk/LayoutTests/ChangeLog 2020-11-06 00:16:18 UTC (rev 269488) +++ trunk/LayoutTests/ChangeLog 2020-11-06 00:16:56 UTC (rev 269489) @@ -1,3 +1,18 @@ +2020-11-05 John Wilander + +PCM: Switch to JSON report format +https://bugs.webkit.org/show_bug.cgi?id=218634 + + +Reviewed by Brent Fulgham. + +The standards conversation has landed in attribution reports in a JSON +format as opposed to the currently implemented URL format. Discussion +here: https://github.com/privacycg/private-click-measurement/issues/30 + +* http/tests/adClickAttribution/resources/conversionReport.php: +* http/tests/adClickAttribution/send-attribution-conversion-request-expected.txt: + 2020-11-05 Chris Dumez Expose referrerPolicy attribute on HTMLLinkElement and HTMLAreaElement Modified: trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionReport.php (269488 => 269489) --- trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionReport.php 2020-11-06 00:16:18 UTC (rev 269488) +++ trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionReport.php 2020-11-06 00:16:56 UTC (rev 269489) @@ -8,7 +8,7 @@ if ($name === "HTTP_HOST") { fwrite($conversionFile, "$name: $value\n"); } else if ($name === "REQUEST_URI") { -$positionOfNonce = strpos($value, "&nonce="); +$positionOfNonce = strpos($value, "?nonce="); if ($positionOfNonce === false) $outputURL = $value; else @@ -17,11 +17,17 @@ } else if ($name === "HTTP_COOKIE") { fwrite($conversionFile, "Cookies in conversion request: $value\n"); $cookiesFound = true; +} else if ($name === "CONTENT_TYPE"
[webkit-changes] [269129] trunk
Title: [269129] trunk Revision 269129 Author wilan...@apple.com Date 2020-10-28 17:00:17 -0700 (Wed, 28 Oct 2020) Log Message PCM: Accept ad click data when the link opens a new window https://bugs.webkit.org/show_bug.cgi?id=214176 Reviewed by Brent Fulgham. A link with the attribute target="_blank" takes another code path for navigation which involves the creation of a new window and webpage. That code path needs to transfer ad click attribution data to the new webpage Source/WebKit: where it can be picked up in WebPageProxy::didCommitLoadForFrame(). The ad click attribution data sits in the NavigationAction which is not available in the completion handler WebPageProxy::createNewPage(). The client, which differs between TestRunner and e.g. Safari, consumes the NavigationAction. I don't want to risk a regression in e.g. Safari while still passing the test because TestRunner hasn't regressed. Test: http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window.html * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didCommitLoadForFrame): Now also checks for pending ad click attribution data in its new member variable m_newPageNavigationAdClickAttribution. (WebKit::WebPageProxy::createNewPage): Now forwards optional ad click attribution data to the completion handler where it can be stored on the newly created webpage in the new member variable m_newPageNavigationAdClickAttribution. * UIProcess/WebPageProxy.h: Added m_newPageNavigationAdClickAttribution. * WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::createWindow): Added missing navigationAction.adClickAttribution() copy. * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Added missing navigationAction.adClickAttribution() copy. LayoutTests: where it can be picked up. * http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window-expected.txt: Added. * http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window.html: Added. * http/tests/adClickAttribution/resources/convertAndPostMessageBack.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp Added Paths trunk/LayoutTests/http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window-expected.txt trunk/LayoutTests/http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window.html trunk/LayoutTests/http/tests/adClickAttribution/resources/convertAndPostMessageBack.html Diff Modified: trunk/LayoutTests/ChangeLog (269128 => 269129) --- trunk/LayoutTests/ChangeLog 2020-10-28 23:51:45 UTC (rev 269128) +++ trunk/LayoutTests/ChangeLog 2020-10-29 00:00:17 UTC (rev 269129) @@ -1,3 +1,20 @@ +2020-10-28 John Wilander + +PCM: Accept ad click data when the link opens a new window +https://bugs.webkit.org/show_bug.cgi?id=214176 + + +Reviewed by Brent Fulgham. + +A link with the attribute target="_blank" takes another code path for +navigation which involves the creation of a new window and webpage. That +code path needs to transfer ad click attribution data to the new webpage +where it can be picked up. + +* http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window-expected.txt: Added. +* http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window.html: Added. +* http/tests/adClickAttribution/resources/convertAndPostMessageBack.html: Added. + 2020-10-28 Truitt Savell Rebase for fast/forms/input-appearance-spinbutton.html on Catalina after changes in r269036 Added: trunk/LayoutTests/http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window-expected.txt (0 => 269129) --- trunk/LayoutTests/http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-window-expected.txt 2020-10-29 00:00:17 UTC (rev 269129) @@ -0,0 +1,12 @@ +Tests triggering of ad click attribution conversions in a new window. + + +Converted Ad Click Attributions: +WebCore::AdClickAttribution 1 +Source: 127.0.0.1 +Destination: localhost +Campaign ID: 3 +Conversion data: 12 +Conversion priority: 3 +Conversion earliest time to send: Within 24-48 hours +Conversion request sent: false Added: trunk/LayoutTests/http/tests/adClickAttribution/attribution-conversion-through-image-redirect-in-new-
[webkit-changes] [267973] trunk
Title: [267973] trunk Revision 267973 Author wilan...@apple.com Date 2020-10-05 09:42:08 -0700 (Mon, 05 Oct 2020) Log Message Storage Access API: Enable per-page storage access scope and align test cases https://bugs.webkit.org/show_bug.cgi?id=217077 Reviewed by Brent Fulgham. It was decided in https://github.com/privacycg/storage-access/issues/3 that browsers should grant storage access for all same-site resources on the whole page, not just the requesting iframe. Source/WebCore: No new tests. Existing tests aligned, including LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html which no longer calls internals.settings.setStorageAccessAPIPerPageScopeEnabled(true) to opt in to the setting that is now the default. * dom/DocumentStorageAccess.cpp: (WebCore::DocumentStorageAccess::requestStorageAccess): Changed the settings check to do the reverse, i.e. assume per-page access by default and per-frame access as the exception. * dom/DocumentStorageAccess.h: Changed the default setting for m_storageAccessScope to per-page. * page/Settings.yaml: Changed the default to true for storageAccessAPIPerPageScopeEnabled. Source/WebKit: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::hasStorageAccess): Added a call to WebPage::hasPageLevelStorageAccess() and an early return if it returns true. (WebKit::WebPage::clearPageLevelStorageAccess): New function to clear the webpage's m_domainsWithPageLevelStorageAccess map. * WebProcess/WebPage/WebPage.h: * WebProcess/WebProcess.cpp: (WebKit::WebProcess::clearResourceLoadStatistics): Now clears all webpages' page level storage access maps. LayoutTests: * http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-and-access-from-right-frame.html: * http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-but-access-from-wrong-frame.html: * http/tests/storageAccess/request-and-grant-access-then-detach-should-not-have-access.html: * http/tests/storageAccess/request-and-grant-access-then-navigate-cross-site-should-not-have-access.html: All of the above now explicitly call internals.settings.setStorageAccessAPIPerPageScopeEnabled(false) to opt out of the new default setting. * http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html: Changed to assume per-page is the default. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-and-access-from-right-frame.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-but-access-from-wrong-frame.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-then-detach-should-not-have-access.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-then-navigate-cross-site-should-not-have-access.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/DocumentStorageAccess.cpp trunk/Source/WebCore/dom/DocumentStorageAccess.h trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKit/WebProcess/WebProcess.cpp Diff Modified: trunk/LayoutTests/ChangeLog (267972 => 267973) --- trunk/LayoutTests/ChangeLog 2020-10-05 16:38:05 UTC (rev 267972) +++ trunk/LayoutTests/ChangeLog 2020-10-05 16:42:08 UTC (rev 267973) @@ -1,3 +1,25 @@ +2020-10-05 John Wilander + +Storage Access API: Enable per-page storage access scope and align test cases +https://bugs.webkit.org/show_bug.cgi?id=217077 + + +Reviewed by Brent Fulgham. + +It was decided in https://github.com/privacycg/storage-access/issues/3 that +browsers should grant storage access for all same-site resources on the whole +page, not just the requesting iframe. + +* http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-and-access-from-right-frame.html: +* http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-but-access-from-wrong-frame.html: +* http/tests/storageAccess/request-and-grant-access-then-detach-should-not-have-access.html: +* http/tests/storageAccess/request-and-grant-access-then-navigate-cross-site-should-not-have-access.html: +All of the above now explicitly call +internals.settings.setStorageAccessAPIPerPageScope
[webkit-changes] [267817] trunk
Title: [267817] trunk Revision 267817 Author wilan...@apple.com Date 2020-09-30 20:21:06 -0700 (Wed, 30 Sep 2020) Log Message Storage Access API: Enable per-page storage access scope and align test cases https://bugs.webkit.org/show_bug.cgi?id=217077 Reviewed by Brent Fulgham. It was decided in https://github.com/privacycg/storage-access/issues/3 that browsers should grant storage access for all same-site resources on the whole page, not just the requesting iframe. Source/WebCore: No new tests. Existing tests aligned, including LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html which no longer calls internals.settings.setStorageAccessAPIPerPageScopeEnabled(true) to opt in to the setting that is now the default. * dom/DocumentStorageAccess.cpp: (WebCore::DocumentStorageAccess::requestStorageAccess): Changed the settings check to do the reverse, i.e. assume per-page access by default and per-frame access as the exception. * dom/DocumentStorageAccess.h: Changed the default setting for m_storageAccessScope to per-page. * page/Settings.yaml: Changed the default to true for storageAccessAPIPerPageScopeEnabled. Source/WebKit: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::hasStorageAccess): Added a call to WebPage::hasPageLevelStorageAccess() and an early return if it returns true. LayoutTests: * http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-and-access-from-right-frame.html: * http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-but-access-from-wrong-frame.html: * http/tests/storageAccess/request-and-grant-access-then-detach-should-not-have-access.html: * http/tests/storageAccess/request-and-grant-access-then-navigate-cross-site-should-not-have-access.html: All of the above now explicitly call internals.settings.setStorageAccessAPIPerPageScopeEnabled(false) to opt out of the new default setting. * http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html: Changed to assume per-page is the default. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-and-access-from-right-frame.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-but-access-from-wrong-frame.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-then-detach-should-not-have-access.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-then-navigate-cross-site-should-not-have-access.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/DocumentStorageAccess.cpp trunk/Source/WebCore/dom/DocumentStorageAccess.h trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp Diff Modified: trunk/LayoutTests/ChangeLog (267816 => 267817) --- trunk/LayoutTests/ChangeLog 2020-10-01 03:06:11 UTC (rev 267816) +++ trunk/LayoutTests/ChangeLog 2020-10-01 03:21:06 UTC (rev 267817) @@ -1,3 +1,25 @@ +2020-09-30 John Wilander + +Storage Access API: Enable per-page storage access scope and align test cases +https://bugs.webkit.org/show_bug.cgi?id=217077 + + +Reviewed by Brent Fulgham. + +It was decided in https://github.com/privacycg/storage-access/issues/3 that +browsers should grant storage access for all same-site resources on the whole +page, not just the requesting iframe. + +* http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-and-access-from-right-frame.html: +* http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-user-interaction-but-access-from-wrong-frame.html: +* http/tests/storageAccess/request-and-grant-access-then-detach-should-not-have-access.html: +* http/tests/storageAccess/request-and-grant-access-then-navigate-cross-site-should-not-have-access.html: +All of the above now explicitly call +internals.settings.setStorageAccessAPIPerPageScopeEnabled(false) +to opt out of the new default setting. +* http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html: +Changed to assume per-page is the default. + 2020-09-30 Lauro Moura [GLIB] Gardening some failures Modified: trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-ifr
[webkit-changes] [266493] trunk/Source/WebKit
Title: [266493] trunk/Source/WebKit Revision 266493 Author wilan...@apple.com Date 2020-09-02 15:44:52 -0700 (Wed, 02 Sep 2020) Log Message Remove custom domain from SameSite=strict jail protection https://bugs.webkit.org/show_bug.cgi?id=216083 Reviewed by Alex Christensen. No new tests. This was a site-specific opt-in rule. The feature itself has tests. * NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: (WebKit::ResourceLoadStatisticsStore::shouldEnforceSameSiteStrictForSpecificDomain const): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (266492 => 266493) --- trunk/Source/WebKit/ChangeLog 2020-09-02 22:11:59 UTC (rev 266492) +++ trunk/Source/WebKit/ChangeLog 2020-09-02 22:44:52 UTC (rev 266493) @@ -1,3 +1,17 @@ +2020-09-02 John Wilander + +Remove custom domain from SameSite=strict jail protection +https://bugs.webkit.org/show_bug.cgi?id=216083 + + +Reviewed by Alex Christensen. + +No new tests. This was a site-specific opt-in rule. The feature +itself has tests. + +* NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: +(WebKit::ResourceLoadStatisticsStore::shouldEnforceSameSiteStrictForSpecificDomain const): + 2020-09-01 Darin Adler Remove comparePositions and make VisiblePosition improvements Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp (266492 => 266493) --- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp 2020-09-02 22:11:59 UTC (rev 266492) +++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp 2020-09-02 22:44:52 UTC (rev 266493) @@ -449,13 +449,9 @@ bool ResourceLoadStatisticsStore::shouldEnforceSameSiteStrictForSpecificDomain(const RegistrableDomain& domain) const { -static NeverDestroyed> domains = [] { -HashSet set; -set.add(RegistrableDomain::uncheckedCreateFromRegistrableDomainString("yahoo.co.jp"_s)); -return set; -}(); - -return domains.get().contains(domain); +// We currently know of no domains that need this protection. +UNUSED_PARAM(domain); +return false; } void ResourceLoadStatisticsStore::setMaxStatisticsEntries(size_t maximumEntryCount) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [266479] trunk
Title: [266479] trunk Revision 266479 Author wilan...@apple.com Date 2020-09-02 12:19:54 -0700 (Wed, 02 Sep 2020) Log Message Storage Access API: Allow requests for storage access from nested iframes https://bugs.webkit.org/show_bug.cgi?id=216019 Reviewed by Alex Christensen. It was decided browsers should support requests for storage access from nested iframes as part of the standardization of the Storage Access API. The issue is discussed here: https://github.com/privacycg/storage-access/issues/10. Source/WebCore: No new tests. Existing tests were changed. * dom/DocumentStorageAccess.cpp: (WebCore::DocumentStorageAccess::requestStorageAccessQuickCheck): LayoutTests: * http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database-expected.txt: * http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database.html: Now sets a cookie for the third party so that the test checks granted access. * http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-expected.txt: * http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe.html: Now sets a cookie for the third party so that the test checks granted access. * http/tests/storageAccess/resources/nesting-iframe.html: Changed to now expect to be granted storage access. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database-expected.txt trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database.html trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-expected.txt trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe.html trunk/LayoutTests/http/tests/storageAccess/resources/nesting-iframe.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/DocumentStorageAccess.cpp Diff Modified: trunk/LayoutTests/ChangeLog (266478 => 266479) --- trunk/LayoutTests/ChangeLog 2020-09-02 19:15:43 UTC (rev 266478) +++ trunk/LayoutTests/ChangeLog 2020-09-02 19:19:54 UTC (rev 266479) @@ -1,3 +1,24 @@ +2020-09-02 John Wilander + +Storage Access API: Allow requests for storage access from nested iframes +https://bugs.webkit.org/show_bug.cgi?id=216019 + + +Reviewed by Alex Christensen. + +It was decided browsers should support requests for storage access from nested +iframes as part of the standardization of the Storage Access API. The issue is +discussed here: https://github.com/privacycg/storage-access/issues/10. + +* http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database-expected.txt: +* http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database.html: +Now sets a cookie for the third party so that the test checks granted access. +* http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-expected.txt: +* http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe.html: +Now sets a cookie for the third party so that the test checks granted access. +* http/tests/storageAccess/resources/nesting-iframe.html: +Changed to now expect to be granted storage access. + 2020-09-02 Devin Rousso REGRESSION: [ macOS ] media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-rtl.html is a flaky timeout Modified: trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database-expected.txt (266478 => 266479) --- trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database-expected.txt 2020-09-02 19:15:43 UTC (rev 266478) +++ trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-cross-origin-sandboxed-nested-iframe-database-expected.txt 2020-09-02 19:19:54 UTC (rev 266479) @@ -1,10 +1,27 @@ -Tests that cross-origin iframe storage access is denied if the iframe is sandboxed, has the allow token, but is nested. +Tests that cross-origin iframe storage access is granted if the iframe is sandboxed, has the allow token, and is nested. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". -PASS Storage access was denied. document.cookie == , cookies seen server-side == "No cookies" +PASS Storage access was granted. document.cookie == firstPartyCookie=value, cookies seen server-side == {"firstPartyCookie":"value"} PASS successfullyParsed is true TEST COMPLETE + + +Frame: '' + +Should not receive cookies. +Did not receive cookie named
[webkit-changes] [266268] trunk/Source
Title: [266268] trunk/Source Revision 266268 Author wilan...@apple.com Date 2020-08-27 19:32:55 -0700 (Thu, 27 Aug 2020) Log Message Remove the feature flag for capped cookies set in 3rd-party CNAME cloaked HTTP responses and add ITP debug logging https://bugs.webkit.org/show_bug.cgi?id=215902 Reviewed by Brent Fulgham. This change removes the feature flag, effectively turning the feature on. It also adds log output of cookie names that have been capped when ITP Debug Mode is enabled. Source/WebCore: WebCore::NetworkStorageSession now has a member flag for ITP debug logging. No new tests. This feature already has tests. * page/Settings.yaml: * platform/network/NetworkStorageSession.cpp: (WebCore::NetworkStorageSession::setResourceLoadStatisticsDebugLoggingEnabled): (WebCore::NetworkStorageSession::resourceLoadStatisticsDebugLoggingEnabled const): New function to be able to conditionalize log output in the new feature. * platform/network/NetworkStorageSession.h: Source/WebKit: * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: (WebKit::WebResourceLoadStatisticsStore::setResourceLoadStatisticsDebugMode): Now sets the flag in WebCore::NetworkStorageSession through the new function WebCore::NetworkStorageSession::setResourceLoadStatisticsDebugLoggingEnabled(). * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::resetParametersToDefaultValues): (WebKit::NetworkProcess::setIsRunningResourceLoadStatisticsTest): * NetworkProcess/NetworkSession.cpp: (WebKit::NetworkSession::NetworkSession): (WebKit::NetworkSession::setFirstPartyHostCNAMEDomain): (WebKit::NetworkSession::firstPartyHostCNAMEDomain): * NetworkProcess/NetworkSession.h: (WebKit::NetworkSession::setCNAMECloakingMitigationEnabled): Deleted. (WebKit::NetworkSession::cnameCloakingMitigationEnabled const): Deleted. * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::updateFirstPartyInfoForSession): (WebKit::NetworkDataTaskCocoa::applyCookiePolicyForThirdPartyCNAMECloaking): * Shared/ResourceLoadStatisticsParameters.h: (WebKit::ResourceLoadStatisticsParameters::encode const): (WebKit::ResourceLoadStatisticsParameters::decode): * Shared/WebPreferences.yaml: * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::ensureNetworkProcess): * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::platformSetNetworkParameters): * UIProcess/WebsiteData/WebsiteDataStore.cpp: (WebKit::WebsiteDataStore::parameters): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp trunk/Source/WebCore/platform/network/NetworkStorageSession.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm trunk/Source/WebKit/Shared/ResourceLoadStatisticsParameters.h trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (266267 => 266268) --- trunk/Source/WebCore/ChangeLog 2020-08-28 02:00:34 UTC (rev 266267) +++ trunk/Source/WebCore/ChangeLog 2020-08-28 02:32:55 UTC (rev 266268) @@ -1,3 +1,26 @@ +2020-08-27 John Wilander + +Remove the feature flag for capped cookies set in 3rd-party CNAME cloaked HTTP responses and add ITP debug logging +https://bugs.webkit.org/show_bug.cgi?id=215902 + + +Reviewed by Brent Fulgham. + +This change removes the feature flag, effectively turning the feature on. +It also adds log output of cookie names that have been capped when ITP +Debug Mode is enabled. + +WebCore::NetworkStorageSession now has a member flag for ITP debug logging. + +No new tests. This feature already has tests. + +* page/Settings.yaml: +* platform/network/NetworkStorageSession.cpp: +(WebCore::NetworkStorageSession::setResourceLoadStatisticsDebugLoggingEnabled): +(WebCore::NetworkStorageSession::resourceLoadStatisticsDebugLoggingEnabled const): +New function to be able to conditionalize log output in the new feature. +* platform/network/NetworkStorageSession.h: + 2020-08-27 Frank Yang CSS Filter invert() and opacity() Implementation Should Use Linear Transfer Function for Clarity and Simplicity Modified: trunk/Source/WebCore/page/Settings.yaml (266267 => 266268) --- trunk/Source/WebCore/page/Settings.yaml 2020-08-28 02:00:34 UTC (rev 266267) +++ trunk/Source/WebCore/page/Settings.yaml 2020-08-28 02:32:55 UTC (rev 266268) @@ -933,9
[webkit-changes] [264001] trunk/Source/WebCore
Title: [264001] trunk/Source/WebCore Revision 264001 Author wilan...@apple.com Date 2020-07-06 17:15:28 -0700 (Mon, 06 Jul 2020) Log Message Follow-up to r263992: Make isKinjaLoginAvatarElement() a free function https://bugs.webkit.org/show_bug.cgi?id=214015 Unreviewed follow-up to a quirk. Just changing isKinjaLoginAvatarElement() from member to free function. As requested in https://bugs.webkit.org/show_bug.cgi?id=213910#c10. * page/Quirks.cpp: (WebCore::isKinjaLoginAvatarElement): (WebCore::Quirks::isKinjaLoginAvatarElement const): Deleted. * page/Quirks.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Quirks.cpp trunk/Source/WebCore/page/Quirks.h Diff Modified: trunk/Source/WebCore/ChangeLog (264000 => 264001) --- trunk/Source/WebCore/ChangeLog 2020-07-07 00:09:17 UTC (rev 264000) +++ trunk/Source/WebCore/ChangeLog 2020-07-07 00:15:28 UTC (rev 264001) @@ -1,3 +1,19 @@ +2020-07-06 John Wilander + +Follow-up to r263992: Make isKinjaLoginAvatarElement() a free function +https://bugs.webkit.org/show_bug.cgi?id=214015 + + +Unreviewed follow-up to a quirk. Just changing +isKinjaLoginAvatarElement() from member to free function. + +As requested in https://bugs.webkit.org/show_bug.cgi?id=213910#c10. + +* page/Quirks.cpp: +(WebCore::isKinjaLoginAvatarElement): +(WebCore::Quirks::isKinjaLoginAvatarElement const): Deleted. +* page/Quirks.h: + 2020-07-06 Chris Fleizach AX: Implement user action spec for Escape action Modified: trunk/Source/WebCore/page/Quirks.cpp (264000 => 264001) --- trunk/Source/WebCore/page/Quirks.cpp 2020-07-07 00:09:17 UTC (rev 264000) +++ trunk/Source/WebCore/page/Quirks.cpp 2020-07-07 00:15:28 UTC (rev 264001) @@ -852,7 +852,7 @@ } #if ENABLE(RESOURCE_LOAD_STATISTICS) -bool Quirks::isKinjaLoginAvatarElement(const Element& element) const +static bool isKinjaLoginAvatarElement(const Element& element) { // The click event handler has been found to trigger on a div or // span with these class names, or the svg, or the svg's path. Modified: trunk/Source/WebCore/page/Quirks.h (264000 => 264001) --- trunk/Source/WebCore/page/Quirks.h 2020-07-07 00:09:17 UTC (rev 264000) +++ trunk/Source/WebCore/page/Quirks.h 2020-07-07 00:15:28 UTC (rev 264001) @@ -116,10 +116,6 @@ bool isGoogleMaps() const; #endif -#if ENABLE(RESOURCE_LOAD_STATISTICS) -bool isKinjaLoginAvatarElement(const Element&) const; -#endif - WeakPtr m_document; mutable Optional m_hasBrokenEncryptedMediaAPISupportQuirk; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [263992] trunk/Source/WebCore
Title: [263992] trunk/Source/WebCore Revision 263992 Author wilan...@apple.com Date 2020-07-06 16:01:18 -0700 (Mon, 06 Jul 2020) Log Message Storage Access API: Add the capability to open a popup and get user interaction so we can call the Storage Access API as a quirk, on behalf of websites that should be doing it themselves https://bugs.webkit.org/show_bug.cgi?id=213910 Reviewed by Darin Adler. This patch not only adds the capability but also adds a site-specific quirk for the family of Kinja sites so that no previous user interaction with kinja.com results in a login popup for kinja.com. No new tests. This is for site-specific quirks. * dom/Element.cpp: (WebCore::Element::dispatchMouseEvent): Just a change in the call into the quirk function. * page/Quirks.cpp: (WebCore::Quirks::isKinjaLoginAvatarElement const): Convenience function for telling if the given element is the Kinja login avatar. (WebCore::Quirks::triggerOptionalStorageAccessQuirk const): Now takes the whole Element to be able to look at both classes and attributes. * page/Quirks.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Element.cpp trunk/Source/WebCore/page/Quirks.cpp trunk/Source/WebCore/page/Quirks.h Diff Modified: trunk/Source/WebCore/ChangeLog (263991 => 263992) --- trunk/Source/WebCore/ChangeLog 2020-07-06 22:25:04 UTC (rev 263991) +++ trunk/Source/WebCore/ChangeLog 2020-07-06 23:01:18 UTC (rev 263992) @@ -1,3 +1,27 @@ +2020-07-06 John Wilander + +Storage Access API: Add the capability to open a popup and get user interaction so we can call the Storage Access API as a quirk, on behalf of websites that should be doing it themselves +https://bugs.webkit.org/show_bug.cgi?id=213910 + + +Reviewed by Darin Adler. + +This patch not only adds the capability but also adds a site-specific quirk for +the family of Kinja sites so that no previous user interaction with kinja.com +results in a login popup for kinja.com. + +No new tests. This is for site-specific quirks. + +* dom/Element.cpp: +(WebCore::Element::dispatchMouseEvent): +Just a change in the call into the quirk function. +* page/Quirks.cpp: +(WebCore::Quirks::isKinjaLoginAvatarElement const): +Convenience function for telling if the given element is the Kinja login avatar. +(WebCore::Quirks::triggerOptionalStorageAccessQuirk const): +Now takes the whole Element to be able to look at both classes and attributes. +* page/Quirks.h: + 2020-07-06 Peng Liu Cleanup WebVideoFullscreenControllerAVKit.mm and PlaybackSessionInterfaceAVKit.mm Modified: trunk/Source/WebCore/dom/Element.cpp (263991 => 263992) --- trunk/Source/WebCore/dom/Element.cpp 2020-07-06 22:25:04 UTC (rev 263991) +++ trunk/Source/WebCore/dom/Element.cpp 2020-07-06 23:01:18 UTC (rev 263992) @@ -362,7 +362,7 @@ if (dispatchPointerEventIfNeeded(*this, mouseEvent.get(), platformEvent, didNotSwallowEvent) == ShouldIgnoreMouseEvent::Yes) return false; -if (hasClass() && Quirks::StorageAccessResult::ShouldCancelEvent == document().quirks().triggerOptionalStorageAccessQuirk(eventType, classNames())) +if (Quirks::StorageAccessResult::ShouldCancelEvent == document().quirks().triggerOptionalStorageAccessQuirk(*this, eventType)) return false; ASSERT(!mouseEvent->target() || mouseEvent->target() != relatedTarget); Modified: trunk/Source/WebCore/page/Quirks.cpp (263991 => 263992) --- trunk/Source/WebCore/page/Quirks.cpp 2020-07-06 22:25:04 UTC (rev 263991) +++ trunk/Source/WebCore/page/Quirks.cpp 2020-07-06 23:01:18 UTC (rev 263992) @@ -26,6 +26,7 @@ #include "config.h" #include "Quirks.h" +#include "Attr.h" #include "DOMTokenList.h" #include "DOMWindow.h" #include "Document.h" @@ -39,11 +40,19 @@ #include "HTMLObjectElement.h" #include "JSEventListener.h" #include "LayoutUnit.h" +#include "NamedNodeMap.h" #include "ResourceLoadObserver.h" #include "RuntimeEnabledFeatures.h" +#include "SVGPathElement.h" +#include "SVGSVGElement.h" +#include "ScriptController.h" +#include "ScriptSourceCode.h" #include "Settings.h" #include "SpaceSplitString.h" #include "UserAgent.h" +#include "UserContentTypes.h" +#include "UserScript.h" +#include "UserScriptTypes.h" namespace WebCore { @@ -842,8 +851,38 @@ #endif } -Quirks::StorageAccessResult Quirks::triggerOptionalStorageAccessQuirk(const AtomString& eventType, const SpaceSplitString& classNames) const +#if ENABLE(RESOURCE_LOAD_STATISTICS) +bool Quirks::isKinjaLoginAvatarElement(const Element& element) const { +// The click event
[webkit-changes] [263383] trunk/Source
ess.messages.in Diff Modified: trunk/Source/WebCore/ChangeLog (263382 => 263383) --- trunk/Source/WebCore/ChangeLog 2020-06-23 04:00:42 UTC (rev 263382) +++ trunk/Source/WebCore/ChangeLog 2020-06-23 04:13:24 UTC (rev 263383) @@ -1,3 +1,53 @@ +2020-06-22 John Wilander + +Storage Access API: Add the capability to call the Storage Access API as a quirk, on behalf of websites that should be doing it themselves +https://bugs.webkit.org/show_bug.cgi?id=213418 + + +Reviewed by Alex Christensen. + +No new tests. This patch adds quirks for specific websites. +The general functionality that's touched has tests under +LayoutTests/http/tests/storageAccess/. + +* dom/Document.h: +(WebCore::Document::isTopDocument const): +New convenience function. +(WebCore::Document::setUserDidInteractWithPage): +Use of the new convenience function. +(WebCore::Document::userDidInteractWithPage const): +Use of the new convenience function. +* dom/DocumentStorageAccess.cpp: +(WebCore::DocumentStorageAccess::hasStorageAccessQuickCheck): +(WebCore::DocumentStorageAccess::hasStorageAccess): +(WebCore::DocumentStorageAccess::hasStorageAccessForDocumentQuirk): +(WebCore::DocumentStorageAccess::requestStorageAccess): +(WebCore::DocumentStorageAccess::requestStorageAccessQuickCheck): +(WebCore::DocumentStorageAccess::requestStorageAccessForDocumentQuirk): +(WebCore::DocumentStorageAccess::requestStorageAccessForNonDocumentQuirk): +(WebCore::DocumentStorageAccess::requestStorageAccessQuirk): +These functions are split up to allow quirks to call directly into the +implementation of the Storage Access API without the _javascript_ +promise that goes with the web API. It also allows for quirks to call +the API without an iframe document. +* dom/DocumentStorageAccess.h: +* dom/Element.cpp: +(WebCore::Element::dispatchMouseEvent): +The two existing quirks are for click events. +* loader/ResourceLoadObserver.h: +(WebCore::ResourceLoadObserver::setDomainsWithUserInteraction): +(WebCore::ResourceLoadObserver::hasHadUserInteraction const): +These two new functions allow the Storage Access API quirks +to synchronously check if it's worth calling the API or not. +If there has been no user interaction for the requesting +domain, there is no need to call the API. +* page/Quirks.cpp: +(WebCore::Quirks::triggerOptionalStorageAccessQuirk const): +This is the new quirks function, hiding the specifics of +certain elements clicked and for which websites. It also +calls the Storage Access API. +* page/Quirks.h: + 2020-06-22 Chris Dumez Introduce BaseAudioContext interface Modified: trunk/Source/WebCore/dom/Document.h (263382 => 263383) --- trunk/Source/WebCore/dom/Document.h 2020-06-23 04:00:42 UTC (rev 263382) +++ trunk/Source/WebCore/dom/Document.h 2020-06-23 04:13:24 UTC (rev 263383) @@ -3,7 +3,7 @@ * (C) 1999 Antti Koivisto (koivi...@kde.org) * (C) 2001 Dirk Mueller (muel...@kde.org) * (C) 2006 Alexey Proskuryakov (a...@webkit.org) - * Copyright (C) 2004-2019 Apple Inc. All rights reserved. + * Copyright (C) 2004-2020 Apple Inc. All rights reserved. * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/) * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) * Copyright (C) 2011 Google Inc. All rights reserved. @@ -1033,6 +1033,7 @@ Document* parentDocument() const; WEBCORE_EXPORT Document& topDocument() const; +bool isTopDocument() const { return &topDocument() == this; } ScriptRunner& scriptRunner() { return *m_scriptRunner; } ScriptModuleLoader& moduleLoader() { return *m_moduleLoader; } @@ -1243,8 +1244,8 @@ bool processingUserGestureForMedia() const; void userActivatedMediaFinishedPlaying() { m_userActivatedMediaFinishedPlayingTimestamp = MonotonicTime::now(); } -void setUserDidInteractWithPage(bool userDidInteractWithPage) { ASSERT(&topDocument() == this); m_userDidInteractWithPage = userDidInteractWithPage; } -bool userDidInteractWithPage() const { ASSERT(&topDocument() == this); return m_userDidInteractWithPage; } +void setUserDidInteractWithPage(bool userDidInteractWithPage) { ASSERT(isTopDocument()); m_userDidInteractWithPage = userDidInteractWithPage; } +bool userDidInteractWithPage() const { ASSERT(isTopDocument()); return m_userDidInteractWithPage; } // Used for testing. Count handlers in the main document, and one per frame which contains handlers. WEBCORE_EXPORT unsigned wheelEventHandlerCount() const; Modified: tru
[webkit-changes] [262495] trunk
Title: [262495] trunk Revision 262495 Author wilan...@apple.com Date 2020-06-03 11:07:49 -0700 (Wed, 03 Jun 2020) Log Message Storage Access API: Add setting for per-page storage access scope https://bugs.webkit.org/show_bug.cgi?id=212682 Reviewed by Brent Fulgham. Source/WebCore: This is a follow-up patch to https://bugs.webkit.org/show_bug.cgi?id=212114, adding an off-by-default setting and a test case for per-page storage access. Test: http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html * dom/DocumentStorageAccess.cpp: (WebCore::DocumentStorageAccess::requestStorageAccess): * page/Settings.yaml: * testing/InternalSettings.cpp: (WebCore::InternalSettings::setStorageAccessAPIPerPageScopeEnabled): * testing/InternalSettings.h: * testing/InternalSettings.idl: LayoutTests: * http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame-expected.txt: Added. * http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/DocumentStorageAccess.cpp trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebCore/testing/InternalSettings.cpp trunk/Source/WebCore/testing/InternalSettings.h trunk/Source/WebCore/testing/InternalSettings.idl Added Paths trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame-expected.txt trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html Diff Modified: trunk/LayoutTests/ChangeLog (262494 => 262495) --- trunk/LayoutTests/ChangeLog 2020-06-03 17:46:51 UTC (rev 262494) +++ trunk/LayoutTests/ChangeLog 2020-06-03 18:07:49 UTC (rev 262495) @@ -1,3 +1,14 @@ +2020-06-03 John Wilander + +Storage Access API: Add setting for per-page storage access scope +https://bugs.webkit.org/show_bug.cgi?id=212682 + + +Reviewed by Brent Fulgham. + +* http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame-expected.txt: Added. +* http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html: Added. + 2020-06-03 Diego Pino Garcia [WPE] Gardening, lint WPE test expectations Added: trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame-expected.txt (0 => 262495) --- trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame-expected.txt 2020-06-03 18:07:49 UTC (rev 262495) @@ -0,0 +1,36 @@ +Tests that storage access is granted for all frames under per-page storage scope. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS Storage access was granted. document.cookie == firstPartyCookie=value, cookies seen server-side == {"firstPartyCookie":"value"} +PASS successfullyParsed is true + +TEST COMPLETE + + + +Frame: '' + +Should not receive cookies without user interaction. +Did not receive cookie named 'firstPartyCookie'. +Client-side document.cookie: + + +Frame: '' + +Should not receive cookies with user interaction. +Did not receive cookie named 'firstPartyCookie'. +Client-side document.cookie: + + +Frame: '' + + + + +Frame: '' + +Should receive cookies even though it's not the requesting frame. +Received cookie named 'firstPartyCookie'. +Client-side document.cookie: firstPartyCookie=value Added: trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html (0 => 262495) --- trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html (rev 0) +++ trunk/LayoutTests/http/tests/storageAccess/request-and-grant-access-with-per-page-scope-access-from-another-frame.html 2020-06-03 18:07:49 UTC (rev 262495) @@ -0,0 +1,122 @@ + + + + +<body> +<script> +description("Tests that storage access is granted for all frames under per-page storage scope."); +jsTestIsAsync = true; + +const hostUnderTest = "localhost:8000"; +const statisticsUrl = "http://" + hostUnderTest + "/temp"; + +const partitionHost = "127.0.0.1:8000"; +const thirdPartyOrigin = "http://localhost:8000"; +const resourcePath = "/storageAccess/reso
[webkit-changes] [262024] trunk/Source
Title: [262024] trunk/Source Revision 262024 Author wilan...@apple.com Date 2020-05-21 13:22:39 -0700 (Thu, 21 May 2020) Log Message Storage Access API: Allow configurable storage access scope https://bugs.webkit.org/show_bug.cgi?id=212114 Reviewed by Alex Christensen. The scope of storage access as per-frame or per-page was discussed in the standards process here: https://github.com/privacycg/storage-access/issues/3 The decision was to have per-page storage access by default. Recent feedback from Google and conversation with Mozilla suggest that we might want to support the caller choosing the scope. This patch adds support for different scope configurations while keeping the existing default as per-frame. A later patch will switch the default and add test cases for per-page scope. Source/WebCore: A new struct is added WebCore::RequestStorageAccessResult which carries full information about the storage access request result. A new enum is added WebCore::StorageAccessScope to encode per-frame and per-page access. No new tests. No changed functionality. Tests already exist. * dom/DocumentStorageAccess.cpp: (WebCore::DocumentStorageAccess::requestStorageAccess): * dom/DocumentStorageAccess.h: (WebCore::RequestStorageAccessResult::encode const): (WebCore::RequestStorageAccessResult::decode): * page/ChromeClient.h: (WebCore::ChromeClient::requestStorageAccess): Source/WebKit: Most of the changes is piping through the new enum WebCore::StorageAccessScope from the call side to encode per-frame and per-page access, and piping through the new struct WebCore::RequestStorageAccessResult on the return side which carries full information about the storage access request result. * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: (WebKit::CompletionHandler Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/DocumentStorageAccess.cpp trunk/Source/WebCore/dom/DocumentStorageAccess.h trunk/Source/WebCore/page/ChromeClient.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in trunk/Source/WebKit/Scripts/webkit/messages.py trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h Diff Modified: trunk/Source/WebCore/ChangeLog (262023 => 262024) --- trunk/Source/WebCore/ChangeLog 2020-05-21 20:14:36 UTC (rev 262023) +++ trunk/Source/WebCore/ChangeLog 2020-05-21 20:22:39 UTC (rev 262024) @@ -1,3 +1,38 @@ +2020-05-21 John Wilander + +Storage Access API: Allow configurable storage access scope +https://bugs.webkit.org/show_bug.cgi?id=212114 + + +Reviewed by Alex Christensen. + +The scope of storage access as per-frame or per-page was discussed in the +standards process here: https://github.com/privacycg/storage-access/issues/3 + +The decision was to have per-page storage access by default. Recent feedback +from Google and conversation with Mozilla suggest that we might want to +support the caller choosing the scope. + +This patch adds support for different scope configurations while keeping the +existing default as per-frame. A later patch will switch the default and add +test cases for per-page scope. + +A new struct is added WebCore::RequestStorageAccessResult which carries full +information about the storage access request result. + +A new enum is added WebCore::StorageAccessScope to encode per-frame and +per-page access. + +No new tests. No changed functionality. Tests already exist. + +* dom/DocumentStorageAccess.cpp: +(WebCore::DocumentStorageAccess::requestStorageAccess): +* dom/DocumentStorageAccess.h: +(WebCore::RequestStorageAccessResult::encode const): +(WebCore::RequestStorageAccessResult::decode): +* page/ChromeClient.h: +(WebCore::ChromeClient::requestStorageAccess): + 2020-05-21 Yoshiaki Jitsukawa [PlayStation] Add minimal WKView API to enable TestWebKitAPI Modified: trunk/Source/WebCore/dom/DocumentStorageAccess.
[webkit-changes] [261724] trunk/Source/WebKit
Title: [261724] trunk/Source/WebKit Revision 261724 Author wilan...@apple.com Date 2020-05-14 17:02:17 -0700 (Thu, 14 May 2020) Log Message Add quirk for cookie blocking latch mode aolmail.com redirecting to aol.com under aol.com https://bugs.webkit.org/show_bug.cgi?id=211925 Reviewed by Brent Fulgham. No new tests. Just a new quirk for a pair of domains added by request. * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::needsFirstPartyCookieBlockingLatchModeQuirk const): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm Diff Modified: trunk/Source/WebKit/ChangeLog (261723 => 261724) --- trunk/Source/WebKit/ChangeLog 2020-05-14 23:49:04 UTC (rev 261723) +++ trunk/Source/WebKit/ChangeLog 2020-05-15 00:02:17 UTC (rev 261724) @@ -1,3 +1,16 @@ +2020-05-14 John Wilander + +Add quirk for cookie blocking latch mode aolmail.com redirecting to aol.com under aol.com +https://bugs.webkit.org/show_bug.cgi?id=211925 + + +Reviewed by Brent Fulgham. + +No new tests. Just a new quirk for a pair of domains added by request. + +* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: +(WebKit::NetworkDataTaskCocoa::needsFirstPartyCookieBlockingLatchModeQuirk const): + 2020-05-14 Chris Dumez Regression(r261163) Causes crashes on builds without libwebrtc.dylib Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm (261723 => 261724) --- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2020-05-14 23:49:04 UTC (rev 261723) +++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2020-05-15 00:02:17 UTC (rev 261724) @@ -160,6 +160,7 @@ static NeverDestroyed> quirkPairs = [] { HashMap map; map.add(RegistrableDomain::uncheckedCreateFromRegistrableDomainString("ymail.com"_s), RegistrableDomain::uncheckedCreateFromRegistrableDomainString("yahoo.com"_s)); +map.add(RegistrableDomain::uncheckedCreateFromRegistrableDomainString("aolmail.com"_s), RegistrableDomain::uncheckedCreateFromRegistrableDomainString("aol.com"_s)); return map; }(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [261242] trunk
youtTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other.html trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion.html Diff Modified: trunk/LayoutTests/ChangeLog (261241 => 261242) --- trunk/LayoutTests/ChangeLog 2020-05-06 18:43:19 UTC (rev 261241) +++ trunk/LayoutTests/ChangeLog 2020-05-06 18:44:26 UTC (rev 261242) @@ -1,3 +1,18 @@ +2020-05-06 John Wilander + +Exempt app-bound domains from ITP's website data deletion and third-party cookie blocking between themselves +https://bugs.webkit.org/show_bug.cgi?id=210674 + + +Reviewed by Chris Dumez. + +* http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other-expected.txt: Added. +* http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other.html: Added. +* http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-database.html: Added. +* http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-expected.txt: Added. +* http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion.html: Added. + 2020-05-06 Daniel Bates [iOS] ASSERTION FAILED: !(_keyboardFlags & WebEventKeyboardInputModifierFlagsChanged) in -[WebEvent charactersIgnoringModifiers] when pressing modifier on PDF Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other-expected.txt (0 => 261242) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other-expected.txt 2020-05-06 18:44:26 UTC (rev 261242) @@ -0,0 +1,33 @@ +Tests that app-bound domains are exempt from third-party cookie blocking between themselves. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS successfullyParsed is true + +TEST COMPLETE + + + +Frame: '' + +Should not receive cookie. +Did not receive cookie named 'firstPartyCookie'. +Did not receive cookie named 'partitionedCookie'. +Client-side document.cookie: + + +Frame: '' + +Should not receive cookie. +Did not receive cookie named 'firstPartyCookie'. +Did not receive cookie named 'partitionedCookie'. +Client-side document.cookie: + + +Frame: '' + +Should receive cookie. +Received cookie named 'firstPartyCookie'. +Did not receive cookie named 'partitionedCookie'. +Client-side document.cookie: firstPartyCookie=value Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other.html (0 => 261242) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other.html (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other.html 2020-05-06 18:44:26 UTC (rev 261242) @@ -0,0 +1,83 @@ + + + + + +<body> +<script> +description("Tests that app-bound domains are exempt from third-party cookie blocking between themselves."); +jsTestIsAsync = true; + +const firstPartyOrigin = "http://127.0.0.1:8000"; +const thirdPartyOrigin = "http://localhost:8000"; +const thirdPartyResourceUrl = thirdPartyOrigin + "/resourceLoadStatistics/resources"; +const firstPartyCookieName = "firstPartyCookie"; +const subPathToSetFirstPartyCookie = "/set-cookie.php?name=" + firstPartyCookieName + "&value=value"; +const partitionedCookieName = "partitionedCookie"; +
[webkit-changes] [260169] trunk
Data/Cocoa/WebsiteDataStoreCocoa.mm trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestOptions.h trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion.html Diff Modified: trunk/LayoutTests/ChangeLog (260168 => 260169) --- trunk/LayoutTests/ChangeLog 2020-04-16 02:19:13 UTC (rev 260168) +++ trunk/LayoutTests/ChangeLog 2020-04-16 03:38:09 UTC (rev 260169) @@ -1,3 +1,16 @@ +2020-04-15 John Wilander + +Add SPI to configure WebsiteDataStores with a URL for standalone web applications and use it to disable first-party website data removal in ITP +https://bugs.webkit.org/show_bug.cgi?id=209634 + + +Reviewed by Alex Christensen. + +* http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html: Added. +* http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-expected.txt: Added. +* http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion.html: Added. + 2020-04-15 Diego Pino Garcia [GTK] Gardening, emit baselines after r260139 Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt (0 => 260169) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt 2020-04-16 03:38:09 UTC (rev 260169) @@ -0,0 +1,15 @@ +Check that non-cookie website data does not get removed after a period of no user interaction if the website is a standalone web application. + +Before deletion: Client-side cookie exists. +Before deletion: HttpOnly cookie exists. +Before deletion: Regular server-side cookie exists. +Before deletion: LocalStorage entry does exist. +Before deletion: IDB entry does exist. + +After deletion: HttpOnly cookie exists. +After deletion: Client-side cookie exists. +After deletion: Regular server-side cookie exists. +After deletion: LocalStorage entry does exist. +After deletion: IDB entry does exist. + + Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html (0 => 260169) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html 2020-04-16 03:38:09 UTC (rev 260169) @@ -0,0 +1,255 @@ + + + + + +<body _onload_="setTimeout('runTest()', 0)"> +<div id="description">Check that non-cookie website data does not get removed after a period of no user interaction if the website is a standalone web application.</div> +<br> +<div id="output"></div> +<br> +<script> +testRunner.waitUntilDone(); +testRunner.dumpAsText(); +testRunner.setUseITPDatabase(true); + +const httpOnlyCookieName = "http-only-cookie"; +const serverSideCookieName = "server-side-cookie"; +const clientSideCookieName = "client-side-cookie"; + +function sortStringArray(a, b) { +a = a.toLowerCase(); +b = b.toLowerCase(); + +return a > b ? 1 : b > a ? -1 : 0; +} + +function addLinebreakToOutput() { +let element = document.createElement("br"); +output.appendChild(element); +} + +function addOutput(message) { +let element = document.createElement("div"); +element.innerText = message; +output.appendChild(element); +} + +function checkCookies(isAfterDeletion) { +let unsortedTestPassedMessages = []; +let cookies = internals.getCookies(); +if (!coo
[webkit-changes] [259906] trunk/Source/WebKit
Title: [259906] trunk/Source/WebKit Revision 259906 Author wilan...@apple.com Date 2020-04-10 14:57:14 -0700 (Fri, 10 Apr 2020) Log Message Add capability to opt in specific domains into SameSite=strict bounce tracking protection https://bugs.webkit.org/show_bug.cgi?id=210347 Reviewed by Brent Fulgham. This change adds an additional opt-in condition to the shouldEnforceSameSiteStrictFor() functions in both ResourceLoadStatisticsMemoryStore and ResourceLoadStatisticsDatabaseStore. No new tests. This adds domain specific logic, quirk-style. The logFrameNavigation() changes are covered by existing tests. * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: (WebKit::ResourceLoadStatisticsDatabaseStore::logFrameNavigation): Now only captures real redirects for the purposes of the SameSite=strict rule. (WebKit::ResourceLoadStatisticsDatabaseStore::shouldEnforceSameSiteStrictFor): * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::logFrameNavigation): Now only captures real redirects for the purposes of the SameSite=strict rule. (WebKit::ResourceLoadStatisticsMemoryStore::shouldEnforceSameSiteStrictFor): (WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor): Removed stray newline. * NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: (WebKit::ResourceLoadStatisticsStore::shouldEnforceSameSiteStrictForSpecificDomain const): The new function with domains to subject to the new rule. * NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h Diff Modified: trunk/Source/WebKit/ChangeLog (259905 => 259906) --- trunk/Source/WebKit/ChangeLog 2020-04-10 21:50:10 UTC (rev 259905) +++ trunk/Source/WebKit/ChangeLog 2020-04-10 21:57:14 UTC (rev 259906) @@ -1,3 +1,32 @@ +2020-04-10 John Wilander + +Add capability to opt in specific domains into SameSite=strict bounce tracking protection +https://bugs.webkit.org/show_bug.cgi?id=210347 + + +Reviewed by Brent Fulgham. + +This change adds an additional opt-in condition to the shouldEnforceSameSiteStrictFor() +functions in both ResourceLoadStatisticsMemoryStore and ResourceLoadStatisticsDatabaseStore. + +No new tests. This adds domain specific logic, quirk-style. The logFrameNavigation() +changes are covered by existing tests. + +* NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: +(WebKit::ResourceLoadStatisticsDatabaseStore::logFrameNavigation): +Now only captures real redirects for the purposes of the SameSite=strict rule. +(WebKit::ResourceLoadStatisticsDatabaseStore::shouldEnforceSameSiteStrictFor): +* NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: +(WebKit::ResourceLoadStatisticsMemoryStore::logFrameNavigation): +Now only captures real redirects for the purposes of the SameSite=strict rule. +(WebKit::ResourceLoadStatisticsMemoryStore::shouldEnforceSameSiteStrictFor): +(WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor): +Removed stray newline. +* NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: +(WebKit::ResourceLoadStatisticsStore::shouldEnforceSameSiteStrictForSpecificDomain const): + The new function with domains to subject to the new rule. +* NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: + 2020-04-10 Chris Dumez First render after a process swap does not use accelerated rendering Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp (259905 => 259906) --- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp 2020-04-10 21:50:10 UTC (rev 259905) +++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp 2020-04-10 21:57:14 UTC (rev 259906) @@ -1627,8 +1627,10 @@ return; } insertDomainRelationshipList(topFrameUniqueRedirectsToQuery, HashSet({ targetDomain }), *redirectingDomainResult.second); -insertDomainRelationshipList(topFrameUniqueRedirectsToSinceSameSiteStrictEnforcementQuery, HashSet({ targetDomain }), *redirectingDomainResult.second); -RELEASE_LOG_INFO_IF(debugLoggingEnabled(), ITPDebug, "Did set %" PUBLIC_LOG_STRING " as making a top frame redirect to %" PUBLIC_LOG_STRING ".", sourceDomain.string().utf8().data(
[webkit-changes] [259693] trunk/Source/WebKit
Title: [259693] trunk/Source/WebKit Revision 259693 Author wilan...@apple.com Date 2020-04-07 17:34:20 -0700 (Tue, 07 Apr 2020) Log Message ITP Debug Mode logs should be more generic now that it blocks all third-party cookies by default https://bugs.webkit.org/show_bug.cgi?id=210133 Reviewed by Brent Fulgham. No new tests. Just a change of logging. * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking): Now logs if either vector has entries and uses more generic language. * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking): Now logs if either vector has entries and uses more generic language. * NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: (WebKit::ResourceLoadStatisticsStore::debugLogDomainsInBatches): Removed hard-coded references to third-party cookie blocking and parameterized it instead. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (259692 => 259693) --- trunk/Source/WebKit/ChangeLog 2020-04-08 00:32:39 UTC (rev 259692) +++ trunk/Source/WebKit/ChangeLog 2020-04-08 00:34:20 UTC (rev 259693) @@ -1,3 +1,23 @@ +2020-04-07 John Wilander + +ITP Debug Mode logs should be more generic now that it blocks all third-party cookies by default +https://bugs.webkit.org/show_bug.cgi?id=210133 + + +Reviewed by Brent Fulgham. + +No new tests. Just a change of logging. + +* NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: +(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking): +Now logs if either vector has entries and uses more generic language. +* NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: +(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking): +Now logs if either vector has entries and uses more generic language. +* NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: +(WebKit::ResourceLoadStatisticsStore::debugLogDomainsInBatches): +Removed hard-coded references to third-party cookie blocking and parameterized it instead. + 2020-04-07 Joonghun Park Move the misplaced statement to the proper place where in Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp (259692 => 259693) --- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp 2020-04-08 00:32:39 UTC (rev 259692) +++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp 2020-04-08 00:34:20 UTC (rev 259693) @@ -2272,8 +2272,8 @@ RegistrableDomainsToBlockCookiesFor domainsToBlock { domainsToBlockAndDeleteCookiesFor, domainsToBlockButKeepCookiesFor, domainsWithUserInteractionAsFirstParty }; -if (debugLoggingEnabled() && !domainsToBlockAndDeleteCookiesFor.isEmpty() && !domainsToBlockButKeepCookiesFor.isEmpty()) -debugLogDomainsInBatches("block", domainsToBlock); +if (debugLoggingEnabled() && (!domainsToBlockAndDeleteCookiesFor.isEmpty() || !domainsToBlockButKeepCookiesFor.isEmpty())) +debugLogDomainsInBatches("Applying cross-site tracking restrictions", domainsToBlock); RunLoop::main().dispatch([weakThis = makeWeakPtr(*this), store = makeRef(store()), domainsToBlock = crossThreadCopy(domainsToBlock), completionHandler = WTFMove(completionHandler)] () mutable { store->callUpdatePrevalentDomainsToBlockCookiesForHandler(domainsToBlock, [weakThis = WTFMove(weakThis), store = store.copyRef(), completionHandler = WTFMove(completionHandler)]() mutable { @@ -2284,8 +2284,8 @@ return; if (UNLIKELY(weakThis->debugLoggingEnabled())) { -RELEASE_LOG_INFO(ITPDebug, "Done updating cookie blocking."); -weakThis->debugBroadcastConsoleMessage(MessageSource::ITPDebug, MessageLevel::Info, "[ITP] Done updating cookie blocking."_s); +RELEASE_LOG_INFO(ITPDebug, "Done applying cross-site tracking restrictions."); +weakThis->debugBroadcastConsoleMessage(MessageSource::ITPDebug, MessageLevel::Info, "[ITP] Done applying cross-site tracking restrictions."_s); } }); }); Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp (259692 => 259693) --- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatist
[webkit-changes] [259440] trunk
runk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestOptions.h trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion.html Diff Modified: trunk/LayoutTests/ChangeLog (259439 => 259440) --- trunk/LayoutTests/ChangeLog 2020-04-03 02:49:39 UTC (rev 259439) +++ trunk/LayoutTests/ChangeLog 2020-04-03 03:56:43 UTC (rev 259440) @@ -1,5 +1,18 @@ 2020-04-02 John Wilander +Add SPI to configure WebsiteDataStores with a URL for standalone web applications and use it to disable first-party website data removal in ITP +https://bugs.webkit.org/show_bug.cgi?id=209634 + + +Reviewed by Alex Christensen. + +* http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html: Added. +* http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-expected.txt: Added. +* http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion.html: Added. + +2020-04-02 John Wilander + Rebase expectation files for anchor tag tests with line number output https://bugs.webkit.org/show_bug.cgi?id=209945 Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt (0 => 259440) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database-expected.txt 2020-04-03 03:56:43 UTC (rev 259440) @@ -0,0 +1,15 @@ +Check that non-cookie website data does not get removed after a period of no user interaction if the website is a standalone web application. + +Before deletion: Client-side cookie exists. +Before deletion: HttpOnly cookie exists. +Before deletion: Regular server-side cookie exists. +Before deletion: LocalStorage entry does exist. +Before deletion: IDB entry does exist. + +After deletion: HttpOnly cookie exists. +After deletion: Client-side cookie exists. +After deletion: Regular server-side cookie exists. +After deletion: LocalStorage entry does exist. +After deletion: IDB entry does exist. + + Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html (0 => 259440) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html 2020-04-03 03:56:43 UTC (rev 259440) @@ -0,0 +1,255 @@ + + + + + +<body _onload_="setTimeout('runTest()', 0)"> +<div id="description">Check that non-cookie website data does not get removed after a period of no user interaction if the website is a standalone web application.</div> +<br> +<div id="output"></div> +<br> +<script> +testRunner.waitUntilDone(); +testRunner.dumpAsText(); +testRunner.setUseITPDatabase(true); + +const httpOnlyCookieName = "http-only-cookie"; +const serverSideCookieName = "server-side-cookie"; +const clientSideCookieName = "client-side-cookie"; + +function sortStringArray(a, b) { +a = a.toLowerCase(); +b = b.toLowerCase(); + +return a > b ? 1 : b > a ? -1 : 0; +} + +function addLinebreakToOutput() { +let element = document.createElement("br"); +output.appendChild(element); +} + +function addOutput(message) { +let element = document.createElement("div"); +element.innerText = message; +output.appendChild(element); +} + +function checkCookies(isAfterDeletion) { +let unsortedTestPassedMessages = []; +let cookies = internals.getCookies(); +if (!cookies.length) +addOutput((isAfterDeletion ? "After" : "Before") + " script-accessible deletion: No cookies found."); +for (let cookie of
[webkit-changes] [259439] trunk/LayoutTests
Title: [259439] trunk/LayoutTests Revision 259439 Author wilan...@apple.com Date 2020-04-02 19:49:39 -0700 (Thu, 02 Apr 2020) Log Message Rebase expectation files for anchor tag tests with line number output https://bugs.webkit.org/show_bug.cgi?id=209945 Unreviewed test gardening. * http/tests/adClickAttribution/anchor-tag-attributes-validation-expected.txt: Rebased since the lines of the console output have changed. * http/tests/security/anchor-download-block-crossorigin-expected.txt: Rebased since the lines of the console output have changed. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/adClickAttribution/anchor-tag-attributes-validation-expected.txt trunk/LayoutTests/http/tests/security/anchor-download-block-crossorigin-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (259438 => 259439) --- trunk/LayoutTests/ChangeLog 2020-04-03 01:51:16 UTC (rev 259438) +++ trunk/LayoutTests/ChangeLog 2020-04-03 02:49:39 UTC (rev 259439) @@ -1,3 +1,16 @@ +2020-04-02 John Wilander + +Rebase expectation files for anchor tag tests with line number output +https://bugs.webkit.org/show_bug.cgi?id=209945 + + +Unreviewed test gardening. + +* http/tests/adClickAttribution/anchor-tag-attributes-validation-expected.txt: +Rebased since the lines of the console output have changed. +* http/tests/security/anchor-download-block-crossorigin-expected.txt: +Rebased since the lines of the console output have changed. + 2020-04-02 Andres Gonzalez Crash in RenderMenuList::didUpdateActiveOption. Modified: trunk/LayoutTests/http/tests/adClickAttribution/anchor-tag-attributes-validation-expected.txt (259438 => 259439) --- trunk/LayoutTests/http/tests/adClickAttribution/anchor-tag-attributes-validation-expected.txt 2020-04-03 01:51:16 UTC (rev 259438) +++ trunk/LayoutTests/http/tests/adClickAttribution/anchor-tag-attributes-validation-expected.txt 2020-04-03 02:49:39 UTC (rev 259439) @@ -1,14 +1,14 @@ -CONSOLE MESSAGE: line 188: adcampaignid must have a non-negative value less than or equal to 63 for Ad Click Attribution. -CONSOLE MESSAGE: line 188: adcampaignid must have a non-negative value less than or equal to 63 for Ad Click Attribution. -CONSOLE MESSAGE: line 188: adcampaignid can not be converted to a non-negative integer which is required for Ad Click Attribution. -CONSOLE MESSAGE: line 188: adcampaignid can not be converted to a non-negative integer which is required for Ad Click Attribution. -CONSOLE MESSAGE: line 188: adcampaignid can not be converted to a non-negative integer which is required for Ad Click Attribution. -CONSOLE MESSAGE: line 188: addestination could not be converted to a valid HTTP-family URL. -CONSOLE MESSAGE: line 188: addestination could not be converted to a valid HTTP-family URL. -CONSOLE MESSAGE: line 188: addestination could not be converted to a valid HTTP-family URL. -CONSOLE MESSAGE: line 188: Both adcampaignid and addestination need to be set for Ad Click Attribution to work. -CONSOLE MESSAGE: line 188: Both adcampaignid and addestination need to be set for Ad Click Attribution to work. -CONSOLE MESSAGE: line 188: addestination can not be the same site as the current website. +CONSOLE MESSAGE: line 197: adcampaignid must have a non-negative value less than or equal to 63 for Ad Click Attribution. +CONSOLE MESSAGE: line 197: adcampaignid must have a non-negative value less than or equal to 63 for Ad Click Attribution. +CONSOLE MESSAGE: line 197: adcampaignid can not be converted to a non-negative integer which is required for Ad Click Attribution. +CONSOLE MESSAGE: line 197: adcampaignid can not be converted to a non-negative integer which is required for Ad Click Attribution. +CONSOLE MESSAGE: line 197: adcampaignid can not be converted to a non-negative integer which is required for Ad Click Attribution. +CONSOLE MESSAGE: line 197: addestination could not be converted to a valid HTTP-family URL. +CONSOLE MESSAGE: line 197: addestination could not be converted to a valid HTTP-family URL. +CONSOLE MESSAGE: line 197: addestination could not be converted to a valid HTTP-family URL. +CONSOLE MESSAGE: line 197: Both adcampaignid and addestination need to be set for Ad Click Attribution to work. +CONSOLE MESSAGE: line 197: Both adcampaignid and addestination need to be set for Ad Click Attribution to work. +CONSOLE MESSAGE: line 197: addestination can not be the same site as the current website. Test for validity of ad click attribution attributes on anchor tags. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". Modified: trunk/LayoutTests/http/tests/security/anchor-download-block-crossorigin-expected.txt (259438 => 259439) --- trunk/LayoutTests/http/tests/security/anchor-download-block-crossorigin-expected.txt 2020-04-03 01:51:16 UTC (rev 259438) +++ trunk/LayoutTests/http/tests/s
[webkit-changes] [259275] trunk
275) --- trunk/LayoutTests/ChangeLog 2020-03-31 02:41:13 UTC (rev 259274) +++ trunk/LayoutTests/ChangeLog 2020-03-31 02:45:38 UTC (rev 259275) @@ -1,3 +1,22 @@ +2020-03-30 John Wilander + +Experimental: Enforce SameSite=strict for domains classified as bounce trackers +https://bugs.webkit.org/show_bug.cgi?id=209761 + + +Reviewed by Brent Fulgham and Kate Cheney (informal). + +* http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-database.html: Added. +* http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-expected.txt: Added. +* http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to.html: Added. +* platform/ios/TestExpectations: +New test cases marked as pass for Catalina+ based on CFNetwork API availability. +* platform/mac-wk2/TestExpectations: +New test cases marked as pass for Catalina+ based on CFNetwork API availability. +* platform/wk2/TestExpectations: +New test cases marked as skip due to CFNetwork API availability. + 2020-03-30 Alexey Shvayka Add support in named capture group identifiers for direct surrogate pairs Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-database-expected.txt (0 => 259275) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-database-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-database-expected.txt 2020-03-31 02:45:38 UTC (rev 259275) @@ -0,0 +1,12 @@ +Tests for SameSite=strict enforcement based on top frame unique redirects to. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS Cookie was not SameSite=strict before test. +PASS Cookie was SameSite=strict after first test. +PASS Cookie was not SameSite=strict after second test. +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-database.html (0 => 259275) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-database.html (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/enforce-samesite-strict-based-on-top-frame-unique-redirects-to-database.html 2020-03-31 02:45:38 UTC (rev 259275) @@ -0,0 +1,98 @@ + + + + + +<body> +<script> +description("Tests for SameSite=strict enforcement based on top frame unique redirects to."); +jsTestIsAsync = true; + +const hostUnderTest = "127.0.0.1:8000"; +const statisticsUrl = "http://" + hostUnderTest + "/temp"; +function setMultipleTopFrameUniqueRedirectTo(redirectingParty) { +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.2:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.3:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.4:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.5:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.6:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.7:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.8:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.9:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.10:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.11:8000/temp"); +testRunner.setStatisticsTopFrameUniqueRedirectTo(redirectingParty, "http://127.0.0.12:8000/temp"); +} + +function completeTest() { +let cookies = internals.getCookies(); +if (cookies.length !== 1) { +testFailed("Should have exactly one cookie before test but found " + cookies.length + " cookies."); +setEnableFeature(false, finishJSTest); +return; +} + +if (cookies[0].isSameSiteStrict) +testFailed("Cookie w
[webkit-changes] [258970] trunk/Source/WebCore
Title: [258970] trunk/Source/WebCore Revision 258970 Author wilan...@apple.com Date 2020-03-24 20:31:27 -0700 (Tue, 24 Mar 2020) Log Message Build fix for deprecated DDHighlightCreateWithRectsInVisibleRectWithStyleAndDirection https://bugs.webkit.org/show_bug.cgi?id=209530 Unreviewed build fix. Solution suggested by Darin Adler. * page/mac/ServicesOverlayController.mm: (WebCore::ServicesOverlayController::buildPhoneNumberHighlights): Use of DDHighlightCreateWithRectsInVisibleRectWithStyleAndDirection put between ALLOW_DEPRECATED_DECLARATIONS_BEGIN and ALLOW_DEPRECATED_DECLARATIONS_END. (WebCore::ServicesOverlayController::buildSelectionHighlight): Use of DDHighlightCreateWithRectsInVisibleRectWithStyleAndDirection put between ALLOW_DEPRECATED_DECLARATIONS_BEGIN and ALLOW_DEPRECATED_DECLARATIONS_END. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/mac/ServicesOverlayController.mm Diff Modified: trunk/Source/WebCore/ChangeLog (258969 => 258970) --- trunk/Source/WebCore/ChangeLog 2020-03-25 03:21:25 UTC (rev 258969) +++ trunk/Source/WebCore/ChangeLog 2020-03-25 03:31:27 UTC (rev 258970) @@ -1,3 +1,19 @@ +2020-03-24 John Wilander + +Build fix for deprecated DDHighlightCreateWithRectsInVisibleRectWithStyleAndDirection +https://bugs.webkit.org/show_bug.cgi?id=209530 + + +Unreviewed build fix. Solution suggested by Darin Adler. + +* page/mac/ServicesOverlayController.mm: +(WebCore::ServicesOverlayController::buildPhoneNumberHighlights): +Use of DDHighlightCreateWithRectsInVisibleRectWithStyleAndDirection put between +ALLOW_DEPRECATED_DECLARATIONS_BEGIN and ALLOW_DEPRECATED_DECLARATIONS_END. +(WebCore::ServicesOverlayController::buildSelectionHighlight): +Use of DDHighlightCreateWithRectsInVisibleRectWithStyleAndDirection put between +ALLOW_DEPRECATED_DECLARATIONS_BEGIN and ALLOW_DEPRECATED_DECLARATIONS_END. + 2020-03-24 Zalan Bujtas [MultiColumn] Infinite recursion in RenderBlockFlow::relayoutToAvoidWidows Modified: trunk/Source/WebCore/page/mac/ServicesOverlayController.mm (258969 => 258970) --- trunk/Source/WebCore/page/mac/ServicesOverlayController.mm 2020-03-25 03:21:25 UTC (rev 258969) +++ trunk/Source/WebCore/page/mac/ServicesOverlayController.mm 2020-03-25 03:31:27 UTC (rev 258970) @@ -515,7 +515,9 @@ rect.setLocation(mainFrameView.windowToContents(viewForRange->contentsToWindow(rect.location(; CGRect cgRect = rect; +ALLOW_DEPRECATED_DECLARATIONS_BEGIN RetainPtr ddHighlight = adoptCF(DDHighlightCreateWithRectsInVisibleRectWithStyleAndDirection(nullptr, &cgRect, 1, mainFrameView.visibleContentRect(), DDHighlightStyleBubbleStandard | DDHighlightStyleStandardIconArrow, YES, NSWritingDirectionNatural, NO, YES)); +ALLOW_DEPRECATED_DECLARATIONS_END newPotentialHighlights.add(Highlight::createForTelephoneNumber(*this, ddHighlight, range.releaseNonNull())); } @@ -556,8 +558,10 @@ if (!cgRects.isEmpty()) { CGRect visibleRect = mainFrameView->visibleContentRect(); +ALLOW_DEPRECATED_DECLARATIONS_BEGIN RetainPtr ddHighlight = adoptCF(DDHighlightCreateWithRectsInVisibleRectWithStyleAndDirection(nullptr, cgRects.begin(), cgRects.size(), visibleRect, DDHighlightStyleBubbleNone | DDHighlightStyleStandardIconArrow | DDHighlightStyleButtonShowAlways, YES, NSWritingDirectionNatural, NO, YES)); - +ALLOW_DEPRECATED_DECLARATIONS_END + newPotentialHighlights.add(Highlight::createForSelection(*this, ddHighlight, selectionRange.releaseNonNull())); } } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258969] trunk/Source/WebKit
Title: [258969] trunk/Source/WebKit Revision 258969 Author wilan...@apple.com Date 2020-03-24 20:21:25 -0700 (Tue, 24 Mar 2020) Log Message Refactor ResourceLoadStatisticsStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor() to return a struct instead of a Vector of pairs https://bugs.webkit.org/show_bug.cgi?id=209463 Reviewed by Alex Christensen. This change does three things: 1. Replaces the Vector> with a new struct called RegistrableDomainsToDeleteOrRestrictWebsiteDataFor for sending around which domains to delete website data for. 2. Removes the enum WebsiteDataToRemove, replacing its structure with the members of the above mentioned struct: - domainsToDeleteAllCookiesFor - domainsToDeleteAllButHttpOnlyCookiesFor - domainsToDeleteAllNonCookieWebsiteDataFor 3. Consistently renames "domainsToDeleteFor" to "domainsToDeleteOrRestrictFor" in preparation for website data policies that are not about deletion, see for instance recently landed https://trac.webkit.org/changeset/258884. No new tests. No changed functionality. This code is covered by several existing tests. * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h: * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor): (WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToRemoveWebsiteDataFor): Deleted. * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h: * NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: (WebKit::domainsToString): (WebKit::ResourceLoadStatisticsStore::removeDataRecords): * NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: (WebKit::WebResourceLoadStatisticsStore::deleteAndRestrictWebsiteDataForRegistrableDomains): (WebKit::WebResourceLoadStatisticsStore::deleteWebsiteDataForRegistrableDomains): Deleted. * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h: (WebKit::RegistrableDomainsToDeleteOrRestrictWebsiteDataFor::isolatedCopy const): (WebKit::RegistrableDomainsToDeleteOrRestrictWebsiteDataFor::isEmpty const): * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::deleteAndRestrictWebsiteDataForRegistrableDomains): (WebKit::NetworkProcess::deleteCookiesForTesting): (WebKit::NetworkProcess::deleteWebsiteDataForRegistrableDomains): Deleted. * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkSession.cpp: (WebKit::NetworkSession::deleteAndRestrictWebsiteDataForRegistrableDomains): (WebKit::NetworkSession::deleteWebsiteDataForRegistrableDomains): Deleted. * NetworkProcess/NetworkSession.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp trunk/Source/WebKit/NetworkProcess/NetworkSession.h Diff Modified: trunk/Source/WebKit/ChangeLog (258968 => 258969) --- trunk/Source/WebKit/ChangeLog 2020-03-25 02:07:38 UTC (rev 258968) +++ trunk/Source/WebKit/ChangeLog 2020-03-25 03:21:25 UTC (rev 258969) @@ -1,3 +1,52 @@ +2020-03-24 John Wilander + +Refactor ResourceLoadStatisticsStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor() to return a struct instead of a Vector of pairs +https://bugs.webkit.org/show_bug.cgi?id=209463 + + +Reviewed by Alex Christensen. + +This change does three things: + +1. Replaces the Vector> with a new struct called +RegistrableDomainsToDeleteOrRestrictWebsiteDataFor for sending around which domains to delete website data for. + +2. Removes the enum WebsiteDataToRemove, replacing its structure with the members of the above mentioned struct: +- domainsToDeleteAllCookiesFor +- domainsToDeleteAllButHttpOnlyCookiesFor +- domainsToDeleteAllNonCookieWebsiteDataFor + +3. Consistently renames "domainsToDeleteFor" to "domainsToDeleteOrRestrictFor" in preparation for website data +policies that are not about deletion, see for instance recently landed https://trac.webkit.org/changeset/258884. + +No new tests. No changed functionalit
[webkit-changes] [258928] trunk/Source/WebKit
Title: [258928] trunk/Source/WebKit Revision 258928 Author wilan...@apple.com Date 2020-03-24 12:29:44 -0700 (Tue, 24 Mar 2020) Log Message Refactor ResourceLoadStatisticsStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor() to return a struct instead of a Vector of pairs https://bugs.webkit.org/show_bug.cgi?id=209463 Reviewed by Alex Christensen. This change does three things: 1. Replaces the Vector> with a new struct called RegistrableDomainsToDeleteOrRestrictWebsiteDataFor for sending around which domains to delete website data for. 2. Removes the enum WebsiteDataToRemove, replacing its structure with the members of the above mentioned struct: - domainsToDeleteAllCookiesFor - domainsToDeleteAllButHttpOnlyCookiesFor - domainsToDeleteAllNonCookieWebsiteDataFor 3. Consistently renames "domainsToDeleteFor" to "domainsToDeleteOrRestrictFor" in preparation for website data policies that are not about deletion, see for instance recently landed https://trac.webkit.org/changeset/258884. No new tests. No changed functionality. This code is covered by several existing tests. * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h: * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor): (WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToRemoveWebsiteDataFor): Deleted. * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h: * NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: (WebKit::domainsToString): (WebKit::ResourceLoadStatisticsStore::removeDataRecords): * NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: (WebKit::WebResourceLoadStatisticsStore::deleteAndRestrictWebsiteDataForRegistrableDomains): (WebKit::WebResourceLoadStatisticsStore::deleteWebsiteDataForRegistrableDomains): Deleted. * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h: (WebKit::RegistrableDomainsToDeleteOrRestrictWebsiteDataFor::isolatedCopy const): (WebKit::RegistrableDomainsToDeleteOrRestrictWebsiteDataFor::isEmpty const): * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::deleteAndRestrictWebsiteDataForRegistrableDomains): (WebKit::NetworkProcess::deleteCookiesForTesting): (WebKit::NetworkProcess::deleteWebsiteDataForRegistrableDomains): Deleted. * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkSession.cpp: (WebKit::NetworkSession::deleteAndRestrictWebsiteDataForRegistrableDomains): (WebKit::NetworkSession::deleteWebsiteDataForRegistrableDomains): Deleted. * NetworkProcess/NetworkSession.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp trunk/Source/WebKit/NetworkProcess/NetworkSession.h Diff Modified: trunk/Source/WebKit/ChangeLog (258927 => 258928) --- trunk/Source/WebKit/ChangeLog 2020-03-24 19:19:30 UTC (rev 258927) +++ trunk/Source/WebKit/ChangeLog 2020-03-24 19:29:44 UTC (rev 258928) @@ -1,3 +1,52 @@ +2020-03-24 John Wilander + +Refactor ResourceLoadStatisticsStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor() to return a struct instead of a Vector of pairs +https://bugs.webkit.org/show_bug.cgi?id=209463 + + +Reviewed by Alex Christensen. + +This change does three things: + +1. Replaces the Vector> with a new struct called +RegistrableDomainsToDeleteOrRestrictWebsiteDataFor for sending around which domains to delete website data for. + +2. Removes the enum WebsiteDataToRemove, replacing its structure with the members of the above mentioned struct: +- domainsToDeleteAllCookiesFor +- domainsToDeleteAllButHttpOnlyCookiesFor +- domainsToDeleteAllNonCookieWebsiteDataFor + +3. Consistently renames "domainsToDeleteFor" to "domainsToDeleteOrRestrictFor" in preparation for website data +policies that are not about deletion, see for instance recently landed https://trac.webkit.org/changeset/258884. + +No new tests. No changed functionalit
[webkit-changes] [258884] trunk
roller.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp trunk/Tools/WebKitTestRunner/TestInvocation.h Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/set-all-kinds-of-cookies.php trunk/LayoutTests/http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict.html Diff Modified: trunk/LayoutTests/ChangeLog (258883 => 258884) --- trunk/LayoutTests/ChangeLog 2020-03-23 22:59:32 UTC (rev 258883) +++ trunk/LayoutTests/ChangeLog 2020-03-23 23:00:50 UTC (rev 258884) @@ -1,3 +1,25 @@ +2020-03-23 John Wilander + +Add the capability to change all of a website's cookies to SameSite=Strict +https://bugs.webkit.org/show_bug.cgi?id=209369 + + +Reviewed by Alex Christensen and David Kilzer. + +* http/tests/resourceLoadStatistics/resources/set-all-kinds-of-cookies.php: Added. +* http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict-expected.txt: Added. +* http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict.html: Added. +* platform/ios/TestExpectations: +Marked http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict.html +as Pass. +* platform/mac-wk2/TestExpectations: +Marked http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict.html +as Pass for Catalina+. +* platform/wk2/TestExpectations: +Skipped http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict.html +since it's only available on macOS Catalina and up and the functionality is not +implemented on non-Cocoa platforms. + 2020-03-23 Jason Lawrence [ Mac wk1 Debug ] http/tests/css/shared-stylesheet-mutation-preconstruct.html is flaky failing. Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/set-all-kinds-of-cookies.php (0 => 258884) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/set-all-kinds-of-cookies.php (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/set-all-kinds-of-cookies.php 2020-03-23 23:00:50 UTC (rev 258884) @@ -0,0 +1,15 @@ + time() + 300, "path" => "/", "samesite" => "Lax"]); +setcookie("persistentSameSiteStrictCookie", "1", ["expires" => time() + 300, "path" => "/", "samesite" => "Strict"]); + +setcookie("sessionCookie", "1", "", "/"); +setcookie("sessionSecureCookie", "1", "", "/", "", TRUE); +setcookie("sessionHttpOnlyCookie", "1", "", "/", "", FALSE, TRUE); +setcookie("sessionSameSiteLaxCookie", "1", ["path" => "/", "samesite" => "Lax"]); +setcookie("sessionSameSiteStrictCookie", "1", ["path" => "/", "samesite" => "Strict"]); +?> Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict-expected.txt (0 => 258884) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/set-all-cookies-to-same-site-strict-expected.txt 2020-03-23 23:00:50 UTC (rev 258884) @@ -0,0 +1,31 @@ +Tests setting all of a site's cookies to SameSite=strict. + +'clientSideCookie' 1 Before Change -- domain: '127.0.0.1' isSession: 'true' +'clientSideCookie' 2 After Change --- domain: '127.0.0.1' isSession: 'true' isSameSiteStrict: 'true' + +'persistentCookie' 1 Before Change -- domain: '127.0.0.1' expiry set +'persistentCookie' 2 After Change --- domain: '127.0.0.1' expiry set isSameSiteStrict: 'true' + +'persistentHttpOnlyCookie' 1 Before Change -- domain: '127.0.0.1' expiry set isHttpOnly: 'true' +'persistentHttpOnlyCookie' 2 After Change --- domain: '127.0.0.1' expiry set isHttpOnly: 'true' isSameSiteStrict: 'true' + +'persistentSameSiteLaxCookie' 1 Before Change -- domain: '127.0.0.1' expiry set isSameSiteLax: 'true' +'persistentSameSiteLaxCookie' 2 After Change --- domain: '127.0.0.1' expiry set isSameSiteStrict: 'true' + +'persistentSameSiteStrictCookie' 1 Before Change -- domain: '127.0.0.1' expiry set isSameSiteStrict: 'true' +'persistentSameSiteStrictCookie' 2 After Change --- domain: '127.0.0.1' exp
[webkit-changes] [258672] trunk
ssion-on-navigation-to-prevalent-without-interaction-database.php trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.php trunk/LayoutTests/http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script.html trunk/LayoutTests/http/tests/resourceLoadStatistics/grandfathering-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/grandfathering.html trunk/LayoutTests/http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction-database.php trunk/LayoutTests/http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction.php trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestInvocation.cpp trunk/Tools/WebKitTestRunner/TestInvocation.h Added Paths trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-ephemeral-expected.txt trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-ephemeral.html trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-ephemeral-expected.txt trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-ephemeral.html trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-at-popup-user-gesture-ephemeral-expected.txt trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-at-popup-user-gesture-ephemeral.html Diff Modified: trunk/LayoutTests/ChangeLog (258671 => 258672) --- trunk/LayoutTests/ChangeLog 2020-03-19 00:41:36 UTC (rev 258671) +++ trunk/LayoutTests/ChangeLog 2020-03-19 01:26:16 UTC (rev 258672) @@ -1,3 +1,39 @@ +2020-03-18 John Wilander + +WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener() should call its ephemeral counterpart when appropriate +https://bugs.webkit.org/show_bug.cgi?id=209245 + + +Reviewed by Chris Dumez. + +There are new tests added for the code change. The rest of these change are to better +align test cases with asynchronous TestRunner functions that landed in +https://trac.webkit.org/changeset/258566 and https://trac.webkit.org/changeset/258598. + +While working on the new tests, I found a crasher which Chris Dumez fixed in +https://trac.webkit.org/changeset/258562, so there's a dependency on that change. + +* http/tests/resourceLoadStatistics/cookies-with-and-without-user-interaction-database.html: +* http/tests/resourceLoadStatistics/cookies-with-and-without-user-interaction.html: +* http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-database.html: +* http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker.html: +* http/tests/resourceLoadStatistics/count-third-party-script-loads-database.html: +* http/tests/resourceLoadStatistics/count-third-party-script-loads.html: +* http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction-database.php: +* http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.php: +* http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-database.html: +* http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script.html: +* http/tests/resourceLoadStatistics/grandfathering-database.html: +* http/tests/resourceLoadStatistics/grandfathering.html: +* http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction-database.php: +* http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction.php: +* http/tests/storageAccess/deny-storage-access-under-opener-ephemeral-expected.txt: Added. +* http/tests/storageAccess/deny-storage-access-under-opener-ephemeral.html: Added. +* http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-ephemeral-expected.txt: Added. +* http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-ephemeral.html: Added. +* http/tests/storageAccess/grant-storage-access-under-opener-at-popup-user-gesture-ephemeral-expected.txt: Added. +* http/tests/storageAccess/grant-storage-access-under-opener-at-popup-user-gesture-ephemeral.html: Added. + 2020-03-18 Ryan Haddad svg/as-object/object-box-sizing-no-width-h
[webkit-changes] [258599] trunk/Source/WebKit
Title: [258599] trunk/Source/WebKit Revision 258599 Author wilan...@apple.com Date 2020-03-17 14:35:28 -0700 (Tue, 17 Mar 2020) Log Message Add quirk for cookie blocking latch mode ymail.com redirecting to yahoo.com under yahoo.com https://bugs.webkit.org/show_bug.cgi?id=209193 Reviewed by Brent Fulgham. No new tests. Site-specific quirk tested manually on the site in question. * NetworkProcess/cocoa/NetworkDataTaskCocoa.h: * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::unblockCookies): (WebKit::NetworkDataTaskCocoa::needsFirstPartyCookieBlockingLatchModeQuirk const): (WebKit::NetworkDataTaskCocoa::willPerformHTTPRedirection): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm Diff Modified: trunk/Source/WebKit/ChangeLog (258598 => 258599) --- trunk/Source/WebKit/ChangeLog 2020-03-17 21:25:06 UTC (rev 258598) +++ trunk/Source/WebKit/ChangeLog 2020-03-17 21:35:28 UTC (rev 258599) @@ -1,3 +1,19 @@ +2020-03-17 John Wilander + +Add quirk for cookie blocking latch mode ymail.com redirecting to yahoo.com under yahoo.com +https://bugs.webkit.org/show_bug.cgi?id=209193 + + +Reviewed by Brent Fulgham. + +No new tests. Site-specific quirk tested manually on the site in question. + +* NetworkProcess/cocoa/NetworkDataTaskCocoa.h: +* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: +(WebKit::NetworkDataTaskCocoa::unblockCookies): +(WebKit::NetworkDataTaskCocoa::needsFirstPartyCookieBlockingLatchModeQuirk const): +(WebKit::NetworkDataTaskCocoa::willPerformHTTPRedirection): + 2020-03-17 Brian Burg REGRESSION(r256882): WebDriver commands that run before initial navigation do not complete Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.h (258598 => 258599) --- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.h 2020-03-17 21:25:06 UTC (rev 258598) +++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.h 2020-03-17 21:35:28 UTC (rev 258599) @@ -86,6 +86,8 @@ #if ENABLE(RESOURCE_LOAD_STATISTICS) static NSHTTPCookieStorage *statelessCookieStorage(); void blockCookies(); +void unblockCookies(); +bool needsFirstPartyCookieBlockingLatchModeQuirk(const URL& firstPartyURL, const URL& requestURL, const URL& redirectingURL) const; #endif bool isThirdPartyRequest(const WebCore::ResourceRequest&) const; bool isAlwaysOnLoggingAllowed() const; Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm (258598 => 258599) --- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2020-03-17 21:25:06 UTC (rev 258598) +++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2020-03-17 21:35:28 UTC (rev 258599) @@ -151,6 +151,42 @@ [m_task _setExplicitCookieStorage:statelessCookieStorage()._cookieStorage]; m_hasBeenSetToUseStatelessCookieStorage = true; } + +void NetworkDataTaskCocoa::unblockCookies() +{ +ASSERT(hasProcessPrivilege(ProcessPrivilege::CanAccessRawCookies)); + +if (!m_hasBeenSetToUseStatelessCookieStorage) +return; + +if (auto* storageSession = m_session->networkStorageSession()) { +[m_task _setExplicitCookieStorage:storageSession->nsCookieStorage()._cookieStorage]; +m_hasBeenSetToUseStatelessCookieStorage = false; +} +} + +// FIXME: Temporary fix for until content can be updated. +bool NetworkDataTaskCocoa::needsFirstPartyCookieBlockingLatchModeQuirk(const URL& firstPartyURL, const URL& requestURL, const URL& redirectingURL) const +{ +using RegistrableDomain = WebCore::RegistrableDomain; +static NeverDestroyed> quirkPairs = [] { +HashMap map; +map.add(RegistrableDomain::uncheckedCreateFromRegistrableDomainString("ymail.com"_s), RegistrableDomain::uncheckedCreateFromRegistrableDomainString("yahoo.com"_s)); +return map; +}(); + +RegistrableDomain firstPartyDomain { firstPartyURL }; +RegistrableDomain requestDomain { requestURL }; +if (firstPartyDomain != requestDomain) +return false; + +RegistrableDomain redirectingDomain { redirectingURL }; +auto quirk = quirkPairs.get().find(redirectingDomain); +if (quirk == quirkPairs.get().end()) +return false; + +return quirk->value == requestDomain; +} #endif bool NetworkDataTaskCocoa::isThirdPartyRequest(const WebCore::ResourceRequest& request) const @@ -387,7 +423,8 @@ if (m_storedCredentialsPolicy == WebCore::StoredCredentialsPolicy::EphemeralStateless || (m_session->networkStorageSession() && m_session->networkStorageSession()->shouldBlockCookies(request, m_frameID, m_pageID))) blockCookies(); -} +}
[webkit-changes] [258448] trunk/Source
Title: [258448] trunk/Source Revision 258448 Author wilan...@apple.com Date 2020-03-13 16:35:40 -0700 (Fri, 13 Mar 2020) Log Message Remove unused code related to removePrevalentDomains() https://bugs.webkit.org/show_bug.cgi?id=209078 Reviewed by Brent Fulgham. The various removePrevalentDomains() functions and its IPC endpoint are unused and should be removed. Source/WebCore: No new tests. Just dead code removal. * platform/network/NetworkStorageSession.cpp: (WebCore::NetworkStorageSession::removePrevalentDomains): Deleted. * platform/network/NetworkStorageSession.h: Source/WebKit: * NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: (WebKit::ResourceLoadStatisticsStore::clearBlockingStateForDomains): Deleted. * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: (WebKit::WebResourceLoadStatisticsStore::removePrevalentDomains): Deleted. (WebKit::WebResourceLoadStatisticsStore::callRemoveDomainsHandler): Deleted. * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h: * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::removePrevalentDomains): Deleted. * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkProcess.messages.in: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp trunk/Source/WebCore/platform/network/NetworkStorageSession.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in Diff Modified: trunk/Source/WebCore/ChangeLog (258447 => 258448) --- trunk/Source/WebCore/ChangeLog 2020-03-13 23:33:33 UTC (rev 258447) +++ trunk/Source/WebCore/ChangeLog 2020-03-13 23:35:40 UTC (rev 258448) @@ -1,3 +1,19 @@ +2020-03-13 John Wilander + +Remove unused code related to removePrevalentDomains() +https://bugs.webkit.org/show_bug.cgi?id=209078 + + +Reviewed by Brent Fulgham. + +The various removePrevalentDomains() functions and its IPC endpoint are unused and should be removed. + +No new tests. Just dead code removal. + +* platform/network/NetworkStorageSession.cpp: +(WebCore::NetworkStorageSession::removePrevalentDomains): Deleted. +* platform/network/NetworkStorageSession.h: + 2020-03-13 Myles C. Maxfield [Cocoa] Push applicationSDKVersion() down from WebCore into WTF Modified: trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp (258447 => 258448) --- trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp 2020-03-13 23:33:33 UTC (rev 258447) +++ trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp 2020-03-13 23:35:40 UTC (rev 258448) @@ -168,14 +168,6 @@ m_registrableDomainsWithUserInteractionAsFirstParty.add(domains.begin(), domains.end()); } -void NetworkStorageSession::removePrevalentDomains(const Vector& domains) -{ -for (auto& domain : domains) { -m_registrableDomainsToBlockAndDeleteCookiesFor.remove(domain); -m_registrableDomainsToBlockButKeepCookiesFor.remove(domain); -} -} - bool NetworkStorageSession::hasStorageAccess(const RegistrableDomain& resourceDomain, const RegistrableDomain& firstPartyDomain, Optional frameID, PageIdentifier pageID) const { if (frameID) { Modified: trunk/Source/WebCore/platform/network/NetworkStorageSession.h (258447 => 258448) --- trunk/Source/WebCore/platform/network/NetworkStorageSession.h 2020-03-13 23:33:33 UTC (rev 258447) +++ trunk/Source/WebCore/platform/network/NetworkStorageSession.h 2020-03-13 23:35:40 UTC (rev 258448) @@ -182,7 +182,6 @@ WEBCORE_EXPORT void setPrevalentDomainsToBlockButKeepCookiesFor(const Vector&); WEBCORE_EXPORT void setDomainsWithUserInteractionAsFirstParty(const Vector&); WEBCORE_EXPORT void setAgeCapForClientSideCookies(Optional); -WEBCORE_EXPORT void removePrevalentDomains(const Vector& domains); WEBCORE_EXPORT bool hasStorageAccess(const RegistrableDomain& resourceDomain, const RegistrableDomain& firstPartyDomain, Optional, PageIdentifier) const; WEBCORE_EXPORT Vector getAllStorageAccessEntries() const; WEBCORE_EXPORT void grantStorageAccess(const RegistrableDomain& resourceDomain, const RegistrableDomain& firstPartyDomain, Optional, PageIdentifier); Modified: trunk/Source/WebKit/ChangeLog (258447 => 258448) --- trunk/Source/WebKit/ChangeLog 2020-03-13 23:33:33 UTC (rev 258447) +++ trunk/Source/WebKit/ChangeLog 2020-03-13 23:35:40 UTC (rev 258448) @@ -1,3 +1,24 @@ +2020-03-13 John Wilander + +Remove unused code related to removePrevalentDomains() +https://bugs.webkit.
[webkit-changes] [258431] trunk/LayoutTests
Title: [258431] trunk/LayoutTests Revision 258431 Author wilan...@apple.com Date 2020-03-13 14:32:45 -0700 (Fri, 13 Mar 2020) Log Message Add mixed content block test for imported scripts in worker global scope https://bugs.webkit.org/show_bug.cgi?id=209075 Reviewed by Brent Fulgham. * http/tests/security/mixedContent/insecure-worker-global-scope-expected.txt: Added. * http/tests/security/mixedContent/insecure-worker-global-scope.html: Added. * http/tests/security/mixedContent/resources/worker-importing-insecure-script.js: Added. * http/tests/security/mixedContent/resources/worker-importing-secure-script.js: Added. * http/tests/security/mixedContent/resources/worker-sending-message.js: Added. * platform/mac-wk1/TestExpectations: Test for some reason fails on Mojave Debug WK1 but not on Mojave Release WK1 or other bots. Therefore skipped. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac-wk1/TestExpectations Added Paths trunk/LayoutTests/http/tests/security/mixedContent/insecure-worker-global-scope-expected.txt trunk/LayoutTests/http/tests/security/mixedContent/insecure-worker-global-scope.html trunk/LayoutTests/http/tests/security/mixedContent/resources/worker-importing-insecure-script.js trunk/LayoutTests/http/tests/security/mixedContent/resources/worker-importing-secure-script.js trunk/LayoutTests/http/tests/security/mixedContent/resources/worker-sending-message.js Diff Modified: trunk/LayoutTests/ChangeLog (258430 => 258431) --- trunk/LayoutTests/ChangeLog 2020-03-13 21:25:03 UTC (rev 258430) +++ trunk/LayoutTests/ChangeLog 2020-03-13 21:32:45 UTC (rev 258431) @@ -1,3 +1,20 @@ +2020-03-13 John Wilander + +Add mixed content block test for imported scripts in worker global scope +https://bugs.webkit.org/show_bug.cgi?id=209075 + + +Reviewed by Brent Fulgham. + +* http/tests/security/mixedContent/insecure-worker-global-scope-expected.txt: Added. +* http/tests/security/mixedContent/insecure-worker-global-scope.html: Added. +* http/tests/security/mixedContent/resources/worker-importing-insecure-script.js: Added. +* http/tests/security/mixedContent/resources/worker-importing-secure-script.js: Added. +* http/tests/security/mixedContent/resources/worker-sending-message.js: Added. +* platform/mac-wk1/TestExpectations: +Test for some reason fails on Mojave Debug WK1 but not on Mojave Release WK1 or other bots. +Therefore skipped. + 2020-03-13 Jacob Uphoff REGRESSION (r257840): [ iOS ] fast/backgrounds/hidpi-bitmap-background-on-subpixel-position.html is flaky failing Added: trunk/LayoutTests/http/tests/security/mixedContent/insecure-worker-global-scope-expected.txt (0 => 258431) --- trunk/LayoutTests/http/tests/security/mixedContent/insecure-worker-global-scope-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/security/mixedContent/insecure-worker-global-scope-expected.txt 2020-03-13 21:32:45 UTC (rev 258431) @@ -0,0 +1,13 @@ +CONSOLE MESSAGE: [blocked] The page at https://127.0.0.1:8443/security/mixedContent/insecure-worker-global-scope.html was not allowed to display insecure content from http://127.0.0.1:8000/security/mixedContent/resources/worker-sending-message.js. + +Tests that mixed content check blocks imported insecure script in a global worker scope. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS Imported, secure worker script is running and sent a message: 'Running.' +PASS Imported, insecure worker script threw an exception. +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/http/tests/security/mixedContent/insecure-worker-global-scope.html (0 => 258431) --- trunk/LayoutTests/http/tests/security/mixedContent/insecure-worker-global-scope.html (rev 0) +++ trunk/LayoutTests/http/tests/security/mixedContent/insecure-worker-global-scope.html 2020-03-13 21:32:45 UTC (rev 258431) @@ -0,0 +1,42 @@ + + + +<body _onload_="runTest()"> +<script> +description("Tests that mixed content check blocks imported insecure script in a global worker scope."); +jsTestIsAsync = true; + +if (document.location.protocol !== "https:") +document.location.href = "" + +if (window.testRunner) +testRunner.dumpAsText(); + +const numberOfTestsToRun = 2; +let numberOfTestsDone = 0; +let interval = setInterval(function () { +if (numberOfTestsDone === numberOfTestsToRun) { +clearInterval(interval); +finishJSTest(); +} +}, 50); +function runTest() { +let worker = new Worker("https://127.0.0.1:8443/security/mixedContent/resources/worker-importing-secure-script.js"); +worker.addEventListener('message', function (mess
[webkit-changes] [257106] trunk/Source/WebKit
Title: [257106] trunk/Source/WebKit Revision 257106 Author wilan...@apple.com Date 2020-02-20 17:25:32 -0800 (Thu, 20 Feb 2020) Log Message Add fidelity.com to the desktop class quirks list https://bugs.webkit.org/show_bug.cgi?id=208037 Reviewed by Brent Fulgham. No new tests. This patch just adds a domain name to a quirks function. * UIProcess/ios/WebPageProxyIOS.mm: (WebKit::desktopClassBrowsingRecommendedForRequest): fidelity.com and its subdomains now return false. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm Diff Modified: trunk/Source/WebKit/ChangeLog (257105 => 257106) --- trunk/Source/WebKit/ChangeLog 2020-02-21 00:41:58 UTC (rev 257105) +++ trunk/Source/WebKit/ChangeLog 2020-02-21 01:25:32 UTC (rev 257106) @@ -1,3 +1,17 @@ +2020-02-20 John Wilander + +Add fidelity.com to the desktop class quirks list +https://bugs.webkit.org/show_bug.cgi?id=208037 + + +Reviewed by Brent Fulgham. + +No new tests. This patch just adds a domain name to a quirks function. + +* UIProcess/ios/WebPageProxyIOS.mm: +(WebKit::desktopClassBrowsingRecommendedForRequest): +fidelity.com and its subdomains now return false. + 2020-02-20 Sihui Liu WebIDBServer resume should return early if suspend does not happen Modified: trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm (257105 => 257106) --- trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm 2020-02-21 00:41:58 UTC (rev 257105) +++ trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm 2020-02-21 01:25:32 UTC (rev 257106) @@ -1407,6 +1407,10 @@ return false; } +// FIXME: Remove this quirk when is complete. +if (equalLettersIgnoringASCIICase(host, "fidelity.com") || host.endsWithIgnoringASCIICase(".fidelity.com")) +return false; + return true; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [256090] trunk/Source/WebKit
Title: [256090] trunk/Source/WebKit Revision 256090 Author wilan...@apple.com Date 2020-02-08 07:48:54 -0800 (Sat, 08 Feb 2020) Log Message Resource Load Statistics: Hold off non-cookie website data deletion until an hour after user interaction https://bugs.webkit.org/show_bug.cgi?id=207418 Reviewed by Chris Dumez. This change makes sure there is at least a one-hour or older timestamp for user interaction for some website before activating deletion of non-cookie website data for sites the user has not interacted with. This ensures that a fresh start such as after a reset or on a new device doesn't interpret the lack of data as lack of user interaction. No new tests. Existing tests make sure we don't regress the functionality. * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: (WebKit::ResourceLoadStatisticsDatabaseStore::registrableDomainsToRemoveWebsiteDataFor): * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToRemoveWebsiteDataFor): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (256089 => 256090) --- trunk/Source/WebKit/ChangeLog 2020-02-08 14:10:25 UTC (rev 256089) +++ trunk/Source/WebKit/ChangeLog 2020-02-08 15:48:54 UTC (rev 256090) @@ -1,3 +1,24 @@ +2020-02-08 John Wilander + +Resource Load Statistics: Hold off non-cookie website data deletion until an hour after user interaction +https://bugs.webkit.org/show_bug.cgi?id=207418 + + +Reviewed by Chris Dumez. + +This change makes sure there is at least a one-hour or older timestamp +for user interaction for some website before activating deletion of +non-cookie website data for sites the user has not interacted with. +This ensures that a fresh start such as after a reset or on a new +device doesn't interpret the lack of data as lack of user interaction. + +No new tests. Existing tests make sure we don't regress the functionality. + +* NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: +(WebKit::ResourceLoadStatisticsDatabaseStore::registrableDomainsToRemoveWebsiteDataFor): +* NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: +(WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToRemoveWebsiteDataFor): + 2020-02-07 Jon Lee Web Inspector: Revert slim toolbar Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp (256089 => 256090) --- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp 2020-02-08 14:10:25 UTC (rev 256089) +++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp 2020-02-08 15:48:54 UTC (rev 256090) @@ -2266,12 +2266,15 @@ clearEndOfGrandfatheringTimeStamp(); clearExpiredUserInteractions(); - + +auto now = WallTime::now(); +auto oldestUserInteraction = now; Vector> domainsToRemoveWebsiteDataFor; Vector domains = this->domains(); Vector domainIDsToClearGrandfathering; for (auto& statistic : domains) { +oldestUserInteraction = std::min(oldestUserInteraction, statistic.mostRecentUserInteractionTime); if (shouldRemoveAllWebsiteDataFor(statistic, shouldCheckForGrandfathering)) domainsToRemoveWebsiteDataFor.append(std::make_pair(statistic.registrableDomain, WebsiteDataToRemove::All)); else if (shouldRemoveAllButCookiesFor(statistic, shouldCheckForGrandfathering)) { @@ -2282,6 +2285,13 @@ domainIDsToClearGrandfathering.append(statistic.domainID); } +// Give the user enough time to interact with websites until we remove non-cookie website data. +if (!parameters().isRunningTest && now - oldestUserInteraction > parameters().minimumTimeBetweenDataRecordsRemoval) { +domainsToRemoveWebsiteDataFor.removeAllMatching([&] (auto& pair) { +return pair.second == WebsiteDataToRemove::AllButCookies; +}); +} + clearGrandfathering(WTFMove(domainIDsToClearGrandfathering)); return domainsToRemoveWebsiteDataFor; Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp (256089 => 256090) --- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp 2020-02-08 14:10:25 UTC (rev 256089) +++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp 2020-02-08 15:48:54 UTC (rev 256090) @@ -924,8 +924,11 @@ if (shouldClearGrandfathering) clearEndOfGrandfatheringTimeStamp(); +auto now = WallTime::now(); +auto oldestUserInteraction =
[webkit-changes] [254482] trunk/LayoutTests
Title: [254482] trunk/LayoutTests Revision 254482 Author wilan...@apple.com Date 2020-01-13 19:15:36 -0800 (Mon, 13 Jan 2020) Log Message Remove calls to testRunner.installStatisticsDidModifyDataRecordsCallback() in http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins* https://bugs.webkit.org/show_bug.cgi?id=206188 Unreviewed test gardening. Removed the calls to testRunner.installStatisticsDidModifyDataRecordsCallback() to address flakiness. * http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html: * http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html Diff Modified: trunk/LayoutTests/ChangeLog (254481 => 254482) --- trunk/LayoutTests/ChangeLog 2020-01-14 02:34:34 UTC (rev 254481) +++ trunk/LayoutTests/ChangeLog 2020-01-14 03:15:36 UTC (rev 254482) @@ -1,3 +1,17 @@ +2020-01-13 John Wilander + +Remove calls to testRunner.installStatisticsDidModifyDataRecordsCallback() in http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins* +https://bugs.webkit.org/show_bug.cgi?id=206188 + + +Unreviewed test gardening. + +Removed the calls to testRunner.installStatisticsDidModifyDataRecordsCallback() +to address flakiness. + +* http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html: +* http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html: + 2020-01-13 Justin Fan [WebGL 2] Implement transform feedback and pass transform feedback conformance tests Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html (254481 => 254482) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html 2020-01-14 02:34:34 UTC (rev 254481) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html 2020-01-14 03:15:36 UTC (rev 254482) @@ -35,7 +35,6 @@ testRunner.setStatisticsSubframeUnderTopFrameOrigin(statisticsUrl, topFrameOrigin3); testRunner.installStatisticsDidScanDataRecordsCallback(completeTest); -testRunner.installStatisticsDidModifyDataRecordsCallback(completeTest); testRunner.statisticsProcessStatisticsAndDataRecords(); }); Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html (254481 => 254482) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html 2020-01-14 02:34:34 UTC (rev 254481) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html 2020-01-14 03:15:36 UTC (rev 254482) @@ -35,7 +35,6 @@ testRunner.setStatisticsSubframeUnderTopFrameOrigin(statisticsUrl, topFrameOrigin3); testRunner.installStatisticsDidScanDataRecordsCallback(completeTest); -testRunner.installStatisticsDidModifyDataRecordsCallback(completeTest); testRunner.statisticsProcessStatisticsAndDataRecords(); }); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [254386] trunk/LayoutTests
Title: [254386] trunk/LayoutTests Revision 254386 Author wilan...@apple.com Date 2020-01-10 17:52:56 -0800 (Fri, 10 Jan 2020) Log Message Make http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins* use resource/util.js https://bugs.webkit.org/show_bug.cgi?id=206100 Unreviewed test gardening. * http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html: * http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html: These two tests now use setEnableFeature() in resources/util.js which makes sure testRunner.setStatisticsNotifyPagesWhenDataRecordsWereScanned() is called with false before ending the test. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html Diff Modified: trunk/LayoutTests/ChangeLog (254385 => 254386) --- trunk/LayoutTests/ChangeLog 2020-01-11 01:29:02 UTC (rev 254385) +++ trunk/LayoutTests/ChangeLog 2020-01-11 01:52:56 UTC (rev 254386) @@ -1,3 +1,17 @@ +2020-01-10 John Wilander + +Make http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins* use resource/util.js +https://bugs.webkit.org/show_bug.cgi?id=206100 + + +Unreviewed test gardening. + +* http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html: +* http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins.html: +These two tests now use setEnableFeature() in resources/util.js which makes sure +testRunner.setStatisticsNotifyPagesWhenDataRecordsWereScanned() is called with +false before ending the test. + 2020-01-10 Ryan Haddad 3 editing/spelling test failures on Mojave Release WK1 Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html (254385 => 254386) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html 2020-01-11 01:29:02 UTC (rev 254385) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/classify-as-non-prevalent-based-on-sub-frame-under-top-frame-origins-database.html 2020-01-11 01:52:56 UTC (rev 254386) @@ -4,8 +4,9 @@ Tests for Classification Based on Sub Frame Under Top Frame Origins <ins>+<script src="" </ins><span class="cx"> </head> </span><del>-<body> </del><ins>+<body _onload_="run()"> </ins><span class="cx"> <script> </span><span class="cx"> const hostUnderTest = "127.0.0.1:8000"; </span><span class="cx"> const statisticsUrl = "http://" + hostUnderTest + "/temp"; </span><span class="lines">@@ -19,14 +20,12 @@ </span><span class="cx"> else </span><span class="cx"> testPassed("Host did not get classified as prevalent resource."); </span><span class="cx"> </span><del>-testRunner.statisticsResetToConsistentState(function() { </del><ins>+setEnableFeature(false, function() { </ins><span class="cx"> testRunner.notifyDone(); </span><span class="cx"> }); </span><span class="cx"> } </span><span class="cx"> </span><span class="cx"> function runTestRunnerTest() { </span><del>-testRunner.setStatisticsNotifyPagesWhenDataRecordsWereScanned(true); - </del><span class="cx"> testRunner.setStatisticsPrevalentResource(statisticsUrl, false, function() { </span><span class="cx"> if (testRunner.isStatisticsPrevalentResource(statisticsUrl)) </span><span class="cx"> testFailed("Host did not get set as non-prevalent resource."); </span><span class="lines">@@ -42,11 +41,12 @@ </span><span class="cx"> }); </span><span class="cx"> } </span><span class="cx"> </span><del>-if (document.location.host === hostUnderTest && window.testRunner && window.internals) { -testRunner.setUseITPDatabase(true); -
[webkit-changes] [254374] trunk/Source/WebCore
Title: [254374] trunk/Source/WebCore Revision 254374 Author wilan...@apple.com Date 2020-01-10 15:48:24 -0800 (Fri, 10 Jan 2020) Log Message Resource Load Statistics: Align WebCore::NetworkStorageSession's m_thirdPartyCookieBlockingMode init value with r254239 https://bugs.webkit.org/show_bug.cgi?id=206082 Unreviewed minor, follow-up fix. * platform/network/NetworkStorageSession.h: The init value of m_thirdPartyCookieBlockingMode was changed to ThirdPartyCookieBlockingMode::All to align it with r254239. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/network/NetworkStorageSession.h Diff Modified: trunk/Source/WebCore/ChangeLog (254373 => 254374) --- trunk/Source/WebCore/ChangeLog 2020-01-10 23:39:54 UTC (rev 254373) +++ trunk/Source/WebCore/ChangeLog 2020-01-10 23:48:24 UTC (rev 254374) @@ -1,3 +1,15 @@ +2020-01-10 John Wilander + +Resource Load Statistics: Align WebCore::NetworkStorageSession's m_thirdPartyCookieBlockingMode init value with r254239 +https://bugs.webkit.org/show_bug.cgi?id=206082 + + +Unreviewed minor, follow-up fix. + +* platform/network/NetworkStorageSession.h: +The init value of m_thirdPartyCookieBlockingMode was changed to +ThirdPartyCookieBlockingMode::All to align it with r254239. + 2020-01-09 Per Arne Vollan Map CSS value ID to system color in the UI process Modified: trunk/Source/WebCore/platform/network/NetworkStorageSession.h (254373 => 254374) --- trunk/Source/WebCore/platform/network/NetworkStorageSession.h 2020-01-10 23:39:54 UTC (rev 254373) +++ trunk/Source/WebCore/platform/network/NetworkStorageSession.h 2020-01-10 23:48:24 UTC (rev 254374) @@ -203,7 +203,7 @@ Optional m_ageCapForClientSideCookiesShort { }; HashMap m_navigatedToWithLinkDecorationByPrevalentResource; bool m_navigationWithLinkDecorationTestMode = false; -ThirdPartyCookieBlockingMode m_thirdPartyCookieBlockingMode { ThirdPartyCookieBlockingMode::AllOnSitesWithoutUserInteraction }; +ThirdPartyCookieBlockingMode m_thirdPartyCookieBlockingMode { ThirdPartyCookieBlockingMode::All }; #endif #if PLATFORM(COCOA) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [254310] trunk/Source/WebKit
Title: [254310] trunk/Source/WebKit Revision 254310 Author wilan...@apple.com Date 2020-01-09 15:47:34 -0800 (Thu, 09 Jan 2020) Log Message Check the existence of the optional m_sessionID before using it in WebProcess::setResourceLoadStatisticsEnabled() https://bugs.webkit.org/show_bug.cgi?id=206035 Reviewed by Brent Fulgham. No new tests. * WebProcess/WebProcess.cpp: (WebKit::WebProcess::setResourceLoadStatisticsEnabled): Added a check that m_sessionID exists. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebProcess.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (254309 => 254310) --- trunk/Source/WebKit/ChangeLog 2020-01-09 23:47:02 UTC (rev 254309) +++ trunk/Source/WebKit/ChangeLog 2020-01-09 23:47:34 UTC (rev 254310) @@ -1,3 +1,17 @@ +2020-01-09 John Wilander + +Check the existence of the optional m_sessionID before using it in WebProcess::setResourceLoadStatisticsEnabled() +https://bugs.webkit.org/show_bug.cgi?id=206035 + + +Reviewed by Brent Fulgham. + +No new tests. + +* WebProcess/WebProcess.cpp: +(WebKit::WebProcess::setResourceLoadStatisticsEnabled): +Added a check that m_sessionID exists. + 2020-01-09 Tim Horton Install WebKit framework symlink for more iOS-derived platforms Modified: trunk/Source/WebKit/WebProcess/WebProcess.cpp (254309 => 254310) --- trunk/Source/WebKit/WebProcess/WebProcess.cpp 2020-01-09 23:47:02 UTC (rev 254309) +++ trunk/Source/WebKit/WebProcess/WebProcess.cpp 2020-01-09 23:47:34 UTC (rev 254310) @@ -1630,7 +1630,7 @@ void WebProcess::setResourceLoadStatisticsEnabled(bool enabled) { -if (WebCore::DeprecatedGlobalSettings::resourceLoadStatisticsEnabled() == enabled || m_sessionID->isEphemeral()) +if (WebCore::DeprecatedGlobalSettings::resourceLoadStatisticsEnabled() == enabled || (m_sessionID && m_sessionID->isEphemeral())) return; WebCore::DeprecatedGlobalSettings::setResourceLoadStatisticsEnabled(enabled); #if ENABLE(RESOURCE_LOAD_STATISTICS) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [254296] trunk
/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/log-delayed-client-side-redirects-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/log-delayed-client-side-redirects-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/log-delayed-client-side-redirects-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/log-delayed-client-side-redirects.html Diff Modified: trunk/LayoutTests/ChangeLog (254295 => 254296) --- trunk/LayoutTests/ChangeLog 2020-01-09 21:56:02 UTC (rev 254295) +++ trunk/LayoutTests/ChangeLog 2020-01-09 22:01:46 UTC (rev 254296) @@ -1,3 +1,22 @@ +2020-01-09 John Wilander + +Resource Load Statistics: Add timing information to WebPageProxy::logFrameNavigation() to detect delayed client-side redirects +https://bugs.webkit.org/show_bug.cgi?id=205522 + + +Reviewed by Chris Dumez. + +Results updated with additional data now that delayed redirects are captured. + +* http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-database-expected.txt: +* http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-expected.txt: +* http/tests/resourceLoadStatistics/log-delayed-client-side-redirects-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/log-delayed-client-side-redirects-database.html: Added. +* http/tests/resourceLoadStatistics/log-delayed-client-side-redirects-expected.txt: Added. +* http/tests/resourceLoadStatistics/log-delayed-client-side-redirects.html: Added. +* http/tests/storageAccess/aggregate-sorted-data-with-storage-access-database-expected.txt: +* http/tests/storageAccess/aggregate-sorted-data-with-storage-access-expected.txt: + 2020-01-09 Pablo Saavedra Bad baseline for Catalina on xhr web-platform-tests imported in r254154 Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-database-expected.txt (254295 => 254296) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-database-expected.txt 2020-01-09 21:56:02 UTC (rev 254295) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-database-expected.txt 2020-01-09 22:01:46 UTC (rev 254296) @@ -6,6 +6,8 @@ hadUserInteraction: No mostRecentUserInteraction: -1 grandfathered: No +TopFrameUniqueRedirectsTo: +localhost IsScheduledForAllButCookieDataRemoval: No isPrevalentResource: Yes isVeryPrevalentResource: No @@ -22,6 +24,8 @@ hadUserInteraction: No mostRecentUserInteraction: -1 grandfathered: No +TopFrameUniqueRedirectsFrom: +127.0.0.1 TopFrameLinkDecorationsFrom: 127.0.0.1 127.0.0.2 Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-expected.txt (254295 => 254296) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-expected.txt 2020-01-09 21:56:02 UTC (rev 254295) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-expected.txt 2020-01-09 22:01:46 UTC (rev 254296) @@ -6,6 +6,8 @@ hadUserInteraction: No mostRecentUserInteraction: -1 grandfathered: No +topFrameUniqueRedirectsFrom: +127.0.0.1 topFrameLinkDecorationsFrom: 127.0.0.1 gotLinkDecorationFromPrevalentResource: Yes @@ -16,6 +18,8 @@ hadUserInteraction: No mostRecentUserInteraction: -1 grandfathered: No +topFrameUniqueRedirectsTo: +localhost gotLinkDecorationFromPrevalentResource: No isPrevalentResource: Yes isVeryPrevalentResource: No Copied: trunk/LayoutTests/http/tests/resourceLoadStatistics/log-delayed-client-side-redirects-database-expected.txt (from rev 254295, trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-database-expected.txt) (0 => 254296) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/log-delayed-client-si
[webkit-changes] [254293] trunk/Source
Title: [254293] trunk/Source Revision 254293 Author wilan...@apple.com Date 2020-01-09 13:32:04 -0800 (Thu, 09 Jan 2020) Log Message Resource Load Statistics: Flip experimental website data removal setting from an enable to a disable https://bugs.webkit.org/show_bug.cgi?id=205966 Reviewed by Brent Fulgham. To get default on behavior, experimental features in the network process need to be turned from enable flags to disable flags. This patch does that for the experimental website data removal flag. Source/WebCore: No new tests. This change just reverses the interpretation of a flag. * page/Settings.yaml: Source/WebKit: This change also aligns the init values of the setting to match the default. * NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: * NetworkProcess/NetworkSession.h: * NetworkProcess/NetworkSessionCreationParameters.h: * Shared/WebPreferences.yaml: * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::ensureNetworkProcess): * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::parameters): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm Diff Modified: trunk/Source/WebCore/ChangeLog (254292 => 254293) --- trunk/Source/WebCore/ChangeLog 2020-01-09 21:10:17 UTC (rev 254292) +++ trunk/Source/WebCore/ChangeLog 2020-01-09 21:32:04 UTC (rev 254293) @@ -1,3 +1,19 @@ +2020-01-09 John Wilander + +Resource Load Statistics: Flip experimental website data removal setting from an enable to a disable +https://bugs.webkit.org/show_bug.cgi?id=205966 + + +Reviewed by Brent Fulgham. + +To get default on behavior, experimental features in the network process need to be +turned from enable flags to disable flags. This patch does that for the experimental +website data removal flag. + +No new tests. This change just reverses the interpretation of a flag. + +* page/Settings.yaml: + 2020-01-09 Chris Lord ImageBitmap can't be created in workers in some cases due to main-thread assert in ImageSource Modified: trunk/Source/WebCore/page/Settings.yaml (254292 => 254293) --- trunk/Source/WebCore/page/Settings.yaml 2020-01-09 21:10:17 UTC (rev 254292) +++ trunk/Source/WebCore/page/Settings.yaml 2020-01-09 21:32:04 UTC (rev 254293) @@ -889,8 +889,8 @@ isThirdPartyCookieBlockingDisabled: initial: false -isFirstPartyWebsiteDataRemovalEnabled: - initial: true +isFirstPartyWebsiteDataRemovalDisabled: + initial: false isFirstPartyWebsiteDataRemovalLiveOnTestingEnabled: initial: false Modified: trunk/Source/WebKit/ChangeLog (254292 => 254293) --- trunk/Source/WebKit/ChangeLog 2020-01-09 21:10:17 UTC (rev 254292) +++ trunk/Source/WebKit/ChangeLog 2020-01-09 21:32:04 UTC (rev 254293) @@ -1,3 +1,26 @@ +2020-01-09 John Wilander + +Resource Load Statistics: Flip experimental website data removal setting from an enable to a disable +https://bugs.webkit.org/show_bug.cgi?id=205966 + + +Reviewed by Brent Fulgham. + +To get default on behavior, experimental features in the network process need to be +turned from enable flags to disable flags. This patch does that for the experimental +website data removal flag. + +This change also aligns the init values of the setting to match the default. + +* NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: +* NetworkProcess/NetworkSession.h: +* NetworkProcess/NetworkSessionCreationParameters.h: +* Shared/WebPreferences.yaml: +* UIProcess/WebProcessPool.cpp: +(WebKit::WebProcessPool::ensureNetworkProcess): +* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: +(WebKit::WebsiteDataStore::parameters): + 2020-01-09 Megan Gardner Set the title for images so it will be correctly displayed in UIContextMenus Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h (254292 => 254293) --- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h 2020-01-09 21:10:17 UTC (rev 254292) +++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h 2020-01-09 21:32:04 UTC (rev 254293) @@ -277,7 +277,7 @@ WebCore::ThirdPartyCookieBlockingMode m_thirdPartyCookieBlockingMode { WebCore::ThirdPartyCookieBlockingMode::All }; bool m_dataRecordsBeingRemoved { false }; ShouldIncludeLocalhost m_shouldIncludeLocalhost { ShouldIncludeLocalhost::Ye
[webkit-changes] [254239] trunk/Source
Title: [254239] trunk/Source Revision 254239 Author wilan...@apple.com Date 2020-01-08 17:21:01 -0800 (Wed, 08 Jan 2020) Log Message Resource Load Statistics: Flip experimental cookie blocking setting from an enable to a disable https://bugs.webkit.org/show_bug.cgi?id=205963 Reviewed by Brent Fulgham. To get default on behavior, experimental features in the network process need to be turned from enable flags to disable flags. This patch does that for the experimental cookie blocking flag. Source/WebCore: No new tests. This change just reverses the interpretation of a flag. * page/Settings.yaml: Source/WebKit: This change also aligns the init values of the setting to match the default. * NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: * NetworkProcess/NetworkSession.h: * NetworkProcess/NetworkSessionCreationParameters.h: * Shared/WebPreferences.yaml: * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::ensureNetworkProcess): * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::parameters): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm Diff Modified: trunk/Source/WebCore/ChangeLog (254238 => 254239) --- trunk/Source/WebCore/ChangeLog 2020-01-09 01:18:46 UTC (rev 254238) +++ trunk/Source/WebCore/ChangeLog 2020-01-09 01:21:01 UTC (rev 254239) @@ -1,3 +1,19 @@ +2020-01-08 John Wilander + +Resource Load Statistics: Flip experimental cookie blocking setting from an enable to a disable +https://bugs.webkit.org/show_bug.cgi?id=205963 + + +Reviewed by Brent Fulgham. + +To get default on behavior, experimental features in the network process need to be +turned from enable flags to disable flags. This patch does that for the experimental +cookie blocking flag. + +No new tests. This change just reverses the interpretation of a flag. + +* page/Settings.yaml: + 2020-01-08 Devin Rousso Move logic for parsing image-orientation to CSSParserFastPaths Modified: trunk/Source/WebCore/page/Settings.yaml (254238 => 254239) --- trunk/Source/WebCore/page/Settings.yaml 2020-01-09 01:18:46 UTC (rev 254238) +++ trunk/Source/WebCore/page/Settings.yaml 2020-01-09 01:21:01 UTC (rev 254239) @@ -886,8 +886,8 @@ initial: true inspectorOverride: true -isThirdPartyCookieBlockingEnabled: - initial: true +isThirdPartyCookieBlockingDisabled: + initial: false isFirstPartyWebsiteDataRemovalEnabled: initial: true Modified: trunk/Source/WebKit/ChangeLog (254238 => 254239) --- trunk/Source/WebKit/ChangeLog 2020-01-09 01:18:46 UTC (rev 254238) +++ trunk/Source/WebKit/ChangeLog 2020-01-09 01:21:01 UTC (rev 254239) @@ -1,3 +1,26 @@ +2020-01-08 John Wilander + +Resource Load Statistics: Flip experimental cookie blocking setting from an enable to a disable +https://bugs.webkit.org/show_bug.cgi?id=205963 + + +Reviewed by Brent Fulgham. + +To get default on behavior, experimental features in the network process need to be +turned from enable flags to disable flags. This patch does that for the experimental +cookie blocking flag. + +This change also aligns the init values of the setting to match the default. + +* NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: +* NetworkProcess/NetworkSession.h: +* NetworkProcess/NetworkSessionCreationParameters.h: +* Shared/WebPreferences.yaml: +* UIProcess/WebProcessPool.cpp: +(WebKit::WebProcessPool::ensureNetworkProcess): +* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: +(WebKit::WebsiteDataStore::parameters): + 2020-01-08 Brent Fulgham Allow some sysctl-read calls needed by WebRTC Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h (254238 => 254239) --- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h 2020-01-09 01:18:46 UTC (rev 254238) +++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h 2020-01-09 01:21:01 UTC (rev 254239) @@ -274,7 +274,7 @@ const RegistrableDomain m_debugStaticPrevalentResource { URL { URL(), "https://3rdpartytestwebkit.org"_s } }; bool m_debugLoggingEnabled { false }; bool m_debugModeEnabled { false }; -WebCore::ThirdPartyCookieBlockingMode m_thirdPartyCookieBlockingMode { WebCore::ThirdPartyCookieBlockingMode::AllOnSitesWithoutUserInteraction }; +WebCore::ThirdPartyCookieBlockingMode m_thirdP
[webkit-changes] [253489] trunk
Title: [253489] trunk Revision 253489 Author wilan...@apple.com Date 2019-12-13 11:18:37 -0800 (Fri, 13 Dec 2019) Log Message IsLoggedIn: Abstract data type for IsLoggedIn state https://bugs.webkit.org/show_bug.cgi?id=205041 Reviewed by Chris Dumez. Source/WebCore: New API tests added. * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * page/LoggedInStatus.cpp: Added. (WebCore::LoggedInStatus::create): (WebCore::LoggedInStatus::LoggedInStatus): (WebCore::LoggedInStatus::setTimeToLive): (WebCore::LoggedInStatus::hasExpired const): (WebCore::LoggedInStatus::expiry const): * page/LoggedInStatus.h: Added. (WebCore::LoggedInStatus::registrableDomain const): (WebCore::LoggedInStatus::username const): (WebCore::LoggedInStatus::credentialTokenType const): (WebCore::LoggedInStatus::authenticationType const): (WebCore::LoggedInStatus::loggedInTime const): Tools: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WebCore/LoggedInStatus.cpp: Added. (TestWebKitAPI::TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Sources.txt trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj Added Paths trunk/Source/WebCore/page/LoggedInStatus.cpp trunk/Source/WebCore/page/LoggedInStatus.h trunk/Tools/TestWebKitAPI/Tests/WebCore/LoggedInStatus.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (253488 => 253489) --- trunk/Source/WebCore/ChangeLog 2019-12-13 19:07:51 UTC (rev 253488) +++ trunk/Source/WebCore/ChangeLog 2019-12-13 19:18:37 UTC (rev 253489) @@ -1,3 +1,28 @@ +2019-12-13 John Wilander + +IsLoggedIn: Abstract data type for IsLoggedIn state +https://bugs.webkit.org/show_bug.cgi?id=205041 + + +Reviewed by Chris Dumez. + +New API tests added. + +* Sources.txt: +* WebCore.xcodeproj/project.pbxproj: +* page/LoggedInStatus.cpp: Added. +(WebCore::LoggedInStatus::create): +(WebCore::LoggedInStatus::LoggedInStatus): +(WebCore::LoggedInStatus::setTimeToLive): +(WebCore::LoggedInStatus::hasExpired const): +(WebCore::LoggedInStatus::expiry const): +* page/LoggedInStatus.h: Added. +(WebCore::LoggedInStatus::registrableDomain const): +(WebCore::LoggedInStatus::username const): +(WebCore::LoggedInStatus::credentialTokenType const): +(WebCore::LoggedInStatus::authenticationType const): +(WebCore::LoggedInStatus::loggedInTime const): + 2019-12-13 Per Arne Vollan [iOS] Deny mach lookup access to "*.apple-extension-service" in the WebContent process Modified: trunk/Source/WebCore/Sources.txt (253488 => 253489) --- trunk/Source/WebCore/Sources.txt 2019-12-13 19:07:51 UTC (rev 253488) +++ trunk/Source/WebCore/Sources.txt 2019-12-13 19:18:37 UTC (rev 253489) @@ -1608,6 +1608,7 @@ page/History.cpp page/IntersectionObserver.cpp page/IntersectionObserverEntry.cpp +page/LoggedInStatus.cpp page/Location.cpp page/MemoryRelease.cpp page/MouseEventWithHitTestResults.cpp Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (253488 => 253489) --- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2019-12-13 19:07:51 UTC (rev 253488) +++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2019-12-13 19:18:37 UTC (rev 253489) @@ -1991,6 +1991,7 @@ 6B0A07F221FA4B5C00D57391 /* AdClickAttribution.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B0A07F021FA4B5C00D57391 /* AdClickAttribution.h */; settings = {ATTRIBUTES = (Private, ); }; }; 6B1F48112298A37E00DE8B82 /* CrossSiteNavigationDataTransfer.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B1F480F22989EC400DE8B82 /* CrossSiteNavigationDataTransfer.h */; settings = {ATTRIBUTES = (Private, ); }; }; 6B3480940EEF50D400AC1B41 /* NativeImage.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B3480920EEF50D400AC1B41 /* NativeImage.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 6B4D412D23983F88002494C2 /* LoggedInStatus.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B4D412B23983F88002494C2 /* LoggedInStatus.h */; settings = {ATTRIBUTES = (Private, ); }; }; 6B4E8613221B713F0022F389 /* RegistrableDomain.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B4E8612221B713F0022F389 /* RegistrableDomain.h */; settings = {ATTRIBUTES = (Private, ); }; }; 6B507A24234BF34100BE7C62 /* NavigatorIsLoggedIn.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B507A21234BF34100BE7C62 /* NavigatorIsLoggedIn.h */; }; 6B693A2E1C51A82E00B03BEF /* ResourceLoadObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B693A2D1C51A82E00B03BEF /* ResourceLoadObserver.h */; settings = {ATTRIBUTES = (Private, ); }; }; @@ -9210,6 +9211,8 @@ 6B0A07F121FA4B5C00D57391 /* AdClickAttribution.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = AdClickAttribution.cpp; sourceTree = ""; }
[webkit-changes] [253185] trunk/Source
Title: [253185] trunk/Source Revision 253185 Author wilan...@apple.com Date 2019-12-05 16:26:09 -0800 (Thu, 05 Dec 2019) Log Message Resource Load Statistics (experimental): Add fast mode for non-cookie website data deletion https://bugs.webkit.org/show_bug.cgi?id=204858 Reviewed by Alex Christensen. Source/WebCore: This change adds two internal flags: - "Live-On Testing" with a one hour timeout instead of seven days. - "Repro Testing" with an instant timeout (bar ITP's regular delays) instead of seven days. These internal flags should be removed once testing is complete: No new tests. This change just adds new opt-in settings for manual testing. * page/Settings.yaml: * platform/network/NetworkStorageSession.h: The FirstPartyWebsiteDataRemovalMode enum now has two new values: - AllButCookiesLiveOnTestingTimeout - AllButCookiesReproTestingTimeout Source/WebKit: The purpose of this change is to allow for dedicated testing of the change in https://trac.webkit.org/changeset/253082/webkit. Waiting seven days just isn't a good starting point. This change adds two internal flags: - "Live-On Testing" with a one hour timeout instead of seven days. - "Repro Testing" with an instant timeout (bar ITP's regular delays) instead of seven days. The change also makes sure that hasHadUnexpiredRecentUserInteraction() in ResourceLoadStatisticsDatabaseStore and ResourceLoadStatisticsMemoryStore only age out the user interaction timestamp if the OperatingDatesWindow is Long so that we don't age out timestamps early with the shorter OperatingDatesWindows. This change changes the default value of IsFirstPartyWebsiteDataRemovalEnabled to true. These internal flags should be removed once testing is complete: * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::hasHadUnexpiredRecentUserInteraction const): (WebKit::ResourceLoadStatisticsMemoryStore::shouldRemoveAllButCookiesFor const): * NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: (WebKit::ResourceLoadStatisticsStore::hasStatisticsExpired const): * NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: (WebKit::WebResourceLoadStatisticsStore::setFirstPartyWebsiteDataRemovalMode): * NetworkProcess/NetworkProcess.messages.in: * Shared/WebPreferences.yaml: * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::parameters): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebCore/platform/network/NetworkStorageSession.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm Diff Modified: trunk/Source/WebCore/ChangeLog (253184 => 253185) --- trunk/Source/WebCore/ChangeLog 2019-12-06 00:01:32 UTC (rev 253184) +++ trunk/Source/WebCore/ChangeLog 2019-12-06 00:26:09 UTC (rev 253185) @@ -1,3 +1,25 @@ +2019-12-05 John Wilander + +Resource Load Statistics (experimental): Add fast mode for non-cookie website data deletion +https://bugs.webkit.org/show_bug.cgi?id=204858 + + +Reviewed by Alex Christensen. + +This change adds two internal flags: +- "Live-On Testing" with a one hour timeout instead of seven days. +- "Repro Testing" with an instant timeout (bar ITP's regular delays) instead of seven days. + +These internal flags should be removed once testing is complete: + +No new tests. This change just adds new opt-in settings for manual testing. + +* page/Settings.yaml: +* platform/network/NetworkStorageSession.h: +The FirstPartyWebsiteDataRemovalMode enum now has two new values: +- AllButCookiesLiveOnTestingTimeout +- AllButCookiesReproTestingTimeout + 2019-12-05 Chris Dumez PageConfiguration::dragClient should use a smart pointer Modified: trunk/Source/WebCore/page/Settings.yaml (253184 => 253185) --- trunk/Source/WebCore/page/Settings.yaml 2019-12-06 00:01:32 UTC (rev 253184) +++ trunk/Source/WebCore/page/Settings.yaml 2019-12-06 00:26:09 UTC (rev 253185) @@ -887,8 +887,14 @@ initial: true isFirstPartyWebsiteDataRemovalEnabled
[webkit-changes] [253082] trunk
: LayoutTests: * http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-database.html: * http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html: Fixed some minor stuff in these two test cases to make any failures more clear. * http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction-database-expected.txt: Added. * http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction-database.html: Added. * http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction-expected.txt: Added. * http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction.html: Added. * http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction-database-expected.txt: Added. * http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction-database.html: Added. * http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction-expected.txt: Added. * http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebCore/platform/network/NetworkStorageSession.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm trunk/Source/WebKit/Scripts/webkit/messages.py trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp trunk/Tools/WebKitTestRunner/TestInvocation.h Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction.html trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-without-user-interaction.html Diff Modified: trunk/LayoutTests/ChangeLog (253081 => 253082) --- trunk/LayoutTests/ChangeLog 2019-12-04 02:36:54 UTC (rev 253081) +++ trunk/LayoutTests/ChangeLog 2019-12-04 02:41:49 UTC (rev 253082) @@ -1,3 +1,23 @@ +2019-12-03 John Wilander + +Resource Load Statistics (experimental): Delete non-cookie website data after 7 days of no user interaction +https://bugs.webkit.org/show_bug.cgi?id=204
[webkit-changes] [252641] trunk
between test runs. * http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-expected.txt: Removed the lastSeen output since it may differ between test runs. * http/tests/resourceLoadStatistics/resources/dummy.js: Added. * http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-database-expected.txt: Removed the lastSeen output since it may differ between test runs. * http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-expected.txt: Removed the lastSeen output since it may differ between test runs. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/log-cross-site-load-with-link-decoration-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/FrameLoader.cpp trunk/Source/WebCore/loader/ResourceLoadObserver.h trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp trunk/Source/WebCore/loader/ResourceLoadStatistics.h trunk/Source/WebCore/loader/SubresourceLoader.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebResourceLoadObserver.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebResourceLoadObserver.h Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker.html trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-loads-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-loads-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-loads-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-loads.html trunk/LayoutTests/http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script.html trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/dummy.js Diff Modified: trunk/LayoutTests/ChangeLog (252640 => 252641) --- trunk/LayoutTests/ChangeLog 2019-11-19 20:00:28 UTC (rev 252640) +++ trunk/LayoutTests/ChangeLog 2019-11-19 20:35:21 UTC (rev 252641) @@ -1,3 +1,33 @@ +2019-11-19 John Wilander + +Resource Load Statistics: Count third-party script loads under top frame +https://bugs.webkit.org/show_bug.cgi?id=204262 + + +Reviewed by Alex Christensen. + +* http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-database.html: Added. +* http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-expected.txt: Added. +* http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker.html: Added. +* http/tests/resourceLoadStatistics/count-third-party-script-loads-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/count-third-party-script-loads-database.html: Added. +* http/tests/resourceLoadStatistics/count-third-party-script-loads-expected.txt: Added. +* http/tests/resourceLoadStatistics/count-third-party-script-loads.html: Added. +* http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-database.html: Added. +* http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-expected.txt: Added. +* http/tests/resourceLoadStatistics/dont-count-third-party-image
[webkit-changes] [252623] trunk
Title: [252623] trunk Revision 252623 Author wilan...@apple.com Date 2019-11-18 22:30:46 -0800 (Mon, 18 Nov 2019) Log Message Check if ITP is on before applying third-party cookie blocking https://bugs.webkit.org/show_bug.cgi?id=204322 Reviewed by Chris Dumez and Alexey Proskuryakov. Source/WebCore: This change makes sure WebCore::NetworkStorageSession knows whether ITP is on or off and checks that first thing in WebCore::NetworkStorageSession::shouldBlockCookies(). This check was never needed before since if ITP was off, there would be no classified domains and thus the function would always return false. However, https://trac.webkit.org/changeset/251353/webkit introduced full third-party cookie blocking for websites without user interaction and that rule is checked before checking domain classification. The effect was unconditional third-party cookie blocking if ITP is off. This changes fixes that bug. Note that this patch already landed as branch-specific in https://trac.webkit.org/changeset/252549/webkit Test: http/tests/resourceLoadStatistics/no-third-party-cookie-blocking-when-itp-is-off.html * platform/network/NetworkStorageSession.cpp: (WebCore::NetworkStorageSession::shouldBlockThirdPartyCookies const): (WebCore::NetworkStorageSession::shouldBlockThirdPartyCookiesButKeepFirstPartyCookiesFor const): (WebCore::NetworkStorageSession::shouldBlockCookies const): Now checks whether ITP is on or off. * platform/network/NetworkStorageSession.h: (WebCore::NetworkStorageSession::setResourceLoadStatisticsEnabled): Source/WebKit: This change makes sure WebCore::NetworkStorageSession knows whether ITP is on or off and checks that first thing in WebCore::NetworkStorageSession::shouldBlockCookies(). This check was never needed before since if ITP was off, there would be no classified domains and thus the function would always return false. However, https://trac.webkit.org/changeset/251353/webkit introduced full third-party cookie blocking for websites without user interaction and that rule is checked before checking domain classification. The effect was unconditional third-party cookie blocking if ITP is off. This changes fixes that bug. Note that this patch already landed as branch-specific in https://trac.webkit.org/changeset/252549/webkit * NetworkProcess/NetworkSession.cpp: (WebKit::NetworkSession::setResourceLoadStatisticsEnabled): Now tells WebCore::NetworkStorageSession the status of ITP. Tools: This is test infrastructure to allow a layout test to disable ITP in the network process. * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: * WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::setStatisticsEnabled): (WTR::TestRunner::setStatisticsDebugMode): * WebKitTestRunner/InjectedBundle/TestRunner.h: * WebKitTestRunner/TestController.cpp: (WTR::TestController::setStatisticsEnabled): * WebKitTestRunner/TestController.h: * WebKitTestRunner/TestInvocation.cpp: (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): LayoutTests: * http/tests/resourceLoadStatistics/no-third-party-cookie-blocking-when-itp-is-off-expected.txt: Added. * http/tests/resourceLoadStatistics/no-third-party-cookie-blocking-when-itp-is-off.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp trunk/Source/WebCore/platform/network/NetworkStorageSession.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/no-third-party-cookie-blocking-when-itp-is-off-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/no-third-party-cookie-blocking-when-itp-is-off.html Diff Modified: trunk/LayoutTests/ChangeLog (252622 => 252623) --- trunk/LayoutTests/ChangeLog 2019-11-19 03:38:09 UTC (rev 252622) +++ trunk/LayoutTests/ChangeLog 2019-11-19 06:30:46 UTC (rev 252623) @@ -1,3 +1,14 @@ +2019-11-18 John Wilander + +Check if ITP is on before applying third-party cookie blocking +https://bugs.webkit.org/show_bug.cgi?id=204322 + + +Reviewed by Chris Dumez and Alexey Proskuryakov. + +* http/tests/resourceLoadStatistics/no-third-party-cookie-blocking-when-itp-is-off-expected.txt: Added. +* http/tests/resourceLoadStatistics/no-third-party-cookie-blocking-when-itp-is-off.html: Added. + 2019-11-18 Simon Fraser -webkit-font-smoothing: none leaves subsequent elements unantialiased Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/no-third-party-cookie-block
[webkit-changes] [252116] trunk
Title: [252116] trunk Revision 252116 Author wilan...@apple.com Date 2019-11-05 17:38:59 -0800 (Tue, 05 Nov 2019) Log Message Temporarily turn off NSURLSession isolation https://bugs.webkit.org/show_bug.cgi?id=201822 Reviewed by Chris Dumez. Source/WebKit: Existing tests skipped. Re-enabling it is tracked in rdar://problem/56921584. * NetworkProcess/cache/NetworkCacheStorage.h: Bumps the version to force a clean cache. * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): Skips setting needsIsolatedSession. LayoutTests: Re-enabling it is tracked in rdar://problem/56921584. * platform/wk2/TestExpectations: Skipped the associated tests. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/wk2/TestExpectations trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheStorage.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm Diff Modified: trunk/LayoutTests/ChangeLog (252115 => 252116) --- trunk/LayoutTests/ChangeLog 2019-11-06 01:30:41 UTC (rev 252115) +++ trunk/LayoutTests/ChangeLog 2019-11-06 01:38:59 UTC (rev 252116) @@ -1,3 +1,15 @@ +2019-11-05 John Wilander + +Temporarily turn off NSURLSession isolation +https://bugs.webkit.org/show_bug.cgi?id=201822 + +Reviewed by Chris Dumez. + +Re-enabling it is tracked in rdar://problem/56921584. + +* platform/wk2/TestExpectations: +Skipped the associated tests. + 2019-11-05 Oriol Brufau [css-lists] Implement list-style-type: Modified: trunk/LayoutTests/platform/wk2/TestExpectations (252115 => 252116) --- trunk/LayoutTests/platform/wk2/TestExpectations 2019-11-06 01:30:41 UTC (rev 252115) +++ trunk/LayoutTests/platform/wk2/TestExpectations 2019-11-06 01:38:59 UTC (rev 252116) @@ -746,6 +746,10 @@ http/tests/resourceLoadStatistics/non-prevalent-resources-can-access-cookies-in-a-third-party-context.html [ Skip ] http/tests/resourceLoadStatistics/cap-cache-max-age-for-prevalent-resource.html [ Skip ] +# rdar://problem/56921584 +http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction.php [ Skip ] +http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction-database.php [ Skip ] + # This feature is currently disabled by default and unfinished . http/tests/navigation/process-swap-window-open.html [ Skip ] Modified: trunk/Source/WebKit/ChangeLog (252115 => 252116) --- trunk/Source/WebKit/ChangeLog 2019-11-06 01:30:41 UTC (rev 252115) +++ trunk/Source/WebKit/ChangeLog 2019-11-06 01:38:59 UTC (rev 252116) @@ -1,3 +1,20 @@ +2019-11-05 John Wilander + +Temporarily turn off NSURLSession isolation +https://bugs.webkit.org/show_bug.cgi?id=201822 + +Reviewed by Chris Dumez. + +Existing tests skipped. + +Re-enabling it is tracked in rdar://problem/56921584. + +* NetworkProcess/cache/NetworkCacheStorage.h: +Bumps the version to force a clean cache. +* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: +(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): +Skips setting needsIsolatedSession. + 2019-11-05 Per Arne Vollan Eliminate mach lookup to cfprefsd on process startup Modified: trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheStorage.h (252115 => 252116) --- trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheStorage.h 2019-11-06 01:30:41 UTC (rev 252115) +++ trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheStorage.h 2019-11-06 01:38:59 UTC (rev 252116) @@ -107,7 +107,7 @@ size_t approximateSize() const; // Incrementing this number will delete all existing cache content for everyone. Do you really need to do it? -static const unsigned version = 14; +static const unsigned version = 15; #if PLATFORM(MAC) /// Allow the last stable version of the cache to co-exist with the latest development one. static const unsigned lastStableVersion = 13; Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm (252115 => 252116) --- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2019-11-06 01:30:41 UTC (rev 252115) +++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2019-11-06 01:38:59 UTC (rev 252116) @@ -213,7 +213,7 @@ if (auto* networkStorageSession = session.networkStorageSession()) { if (!shouldBlockCookies) shouldBlockCookies = networkStorageSession->shouldBlockCookies(request, frameID, pageID); -needsIsolatedSession = networkStorageSession->shouldBlockThirdPartyCookiesButKeepFirstPartyCookiesFor(firstParty); +// FIXME: needsIsolatedSession should be set here. } #endif restrictRequestReferrerToOriginIfNeeded(request); ___ webkit-changes mailing list webkit-changes@l
[webkit-changes] [252014] trunk
Title: [252014] trunk Revision 252014 Author wilan...@apple.com Date 2019-11-04 14:13:40 -0800 (Mon, 04 Nov 2019) Log Message Resource Load Statistics: Flush the shared ResourceLoadObserver when the webpage is closed by _javascript_ https://bugs.webkit.org/show_bug.cgi?id=203623 Reviewed by Alex Christensen. Source/WebCore: New API test added. * loader/ResourceLoadObserver.cpp: (WebCore::ResourceLoadObserver::shared): Now returns its own empty observer if no shared one has been set. * loader/ResourceLoadObserver.h: (WebCore::ResourceLoadObserver::logSubresourceLoadingForTesting): Test function to seed the web process' observer. * page/DOMWindow.cpp: (WebCore::DOMWindow::close): Now flushes the shared observer. Source/WebKit: This patch adds flushing of pending statistics when a window is closed by _javascript_, when a webpage is removed from the web process, and when the web process prepares to suspend. New API test added. * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: (WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated): Now calls logTestingEvent() so that the test infrastructure can wait for updates. * UIProcess/API/Cocoa/WKProcessPool.mm: (-[WKProcessPool _seedResourceLoadStatisticsForTestingWithFirstParty:thirdParty:shouldScheduleNotification:completionHandler:]): Test infrastructure to seed every web process' WebCore::ResourceLoadObserver with test data. * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: * UIProcess/API/Cocoa/WKWebsiteDataStore.mm: (-[WKWebsiteDataStore _clearResourceLoadStatistics:]): (-[WKWebsiteDataStore _isRegisteredAsSubresourceUnderFirstParty:thirdParty:completionHandler:]): Test infrastructure. * UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h: * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::seedResourceLoadStatisticsForTesting): Test infrastructure. * UIProcess/WebProcessPool.h: * UIProcess/WebsiteData/WebsiteDataStore.cpp: (WebKit::WebsiteDataStore::isRegisteredAsSubresourceUnder): Made sure the completion handler is called even if there is no network process. (WebKit::WebsiteDataStore::setResourceLoadStatisticsEnabled): Now tells all web processes to turn ITP on or off. * WebProcess/WebCoreSupport/WebResourceLoadObserver.cpp: (WebKit::WebResourceLoadObserver::~WebResourceLoadObserver): (WebKit::WebResourceLoadObserver::logSubresourceLoadingForTesting): Test infrastructure to seed the observer with test data. * WebProcess/WebCoreSupport/WebResourceLoadObserver.h: * WebProcess/WebProcess.cpp: (WebKit::WebProcess::setWebsiteDataStoreParameters): Now checks whether a shared observer already exists before setting one. (WebKit::WebProcess::removeWebPage): (WebKit::WebProcess::prepareToSuspend): These two functions now call WebProcess::flushResourceLoadStatistics(). (WebKit::WebProcess::setResourceLoadStatisticsEnabled): This function now sets the process' shared WebCore::ResourceLoadObserver if none exists. (WebKit::WebProcess::flushResourceLoadStatistics): This function tells the shared WebCore::ResourceLoadObserver to send any pending statistics to the central ITP store. (WebKit::WebProcess::seedResourceLoadStatisticsForTesting): Test infrastructure to seed the shared observer with test data. * WebProcess/WebProcess.h: * WebProcess/WebProcess.messages.in: Tools: * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm: (TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/ResourceLoadObserver.cpp trunk/Source/WebCore/loader/ResourceLoadObserver.h trunk/Source/WebCore/page/DOMWindow.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp trunk/Source/WebKit/UIProcess/API/Cocoa/WKProcessPool.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKProcessPoolPrivate.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebProcessPool.h trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebResourceLoadObserver.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebResourceLoadObserver.h trunk/Source/WebKit/WebProcess/WebProcess.cpp trunk/Source/WebKit/WebProcess/WebProcess.h trunk/Source/WebKit/WebProcess/WebProcess.messages.in trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm Diff Modified: trunk/Source/WebCore/ChangeLog (252013 => 252014) --- trunk/Source/WebCore/ChangeLog 2019-11-04 21:55:08 UTC (rev 252013) +++ trunk/Source/WebCore/ChangeLog 2019-11-04 22:13:40 UTC (rev 252014) @@ -1,3 +1,23 @@ +2019-11-04 John Wilander + +Resource Load Statistics: Flush the shared ResourceLoadObserver when the webpage is closed by _javascript_ +https://bugs.webkit.org/show
[webkit-changes] [251663] trunk
ests/http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie-database.html trunk/LayoutTests/http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie-expected.txt trunk/LayoutTests/http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie.html trunk/LayoutTests/http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-database-expected.txt trunk/LayoutTests/http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-database.html trunk/LayoutTests/http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-expected.txt trunk/LayoutTests/http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie.html Diff Modified: trunk/LayoutTests/ChangeLog (251662 => 251663) --- trunk/LayoutTests/ChangeLog 2019-10-28 18:56:19 UTC (rev 251662) +++ trunk/LayoutTests/ChangeLog 2019-10-28 19:45:03 UTC (rev 251663) @@ -1,3 +1,29 @@ +2019-10-28 John Wilander + +Storage Access API: Make the API work with the experimental 3rd-party cookie blocking +https://bugs.webkit.org/show_bug.cgi?id=203428 + + +Reviewed by Alex Christensen. + +* http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-database-expected.txt: Added. +* http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-database.html: Added. +* http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-expected.txt: Added. +* http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking.html: Added. +* http/tests/storageAccess/grant-with-prompt-under-general-third-party-cookie-blocking-database-expected.txt: Added. +* http/tests/storageAccess/grant-with-prompt-under-general-third-party-cookie-blocking-database.html: Added. +* http/tests/storageAccess/grant-with-prompt-under-general-third-party-cookie-blocking-expected.txt: Added. +* http/tests/storageAccess/grant-with-prompt-under-general-third-party-cookie-blocking.html: Added. +* http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies.html: +* http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie-database-expected.txt: Added. +* http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie-database.html: Added. +* http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie-expected.txt: Added. +* http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie.html: Added. +* http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-database-expected.txt: Added. +* http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-database.html: Added. +* http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-expected.txt: Added. +* http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie.html: Added. + 2019-10-28 Alex Christensen Remove flaky debug log from WK1 expectations after r251582 Added: trunk/LayoutTests/http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-database-expected.txt (0 => 251663) --- trunk/LayoutTests/http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-database-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-database-expected.txt 2019-10-28 19:45:03 UTC (rev 251663) @@ -0,0 +1,10 @@ +Tests that a cross-site iframe can not request storage access under general third-party cookie blocking if it has not received user interaction as first-party. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS Storage access was denied. document.cookie == , cookies seen server-side == "No cookies" +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-database.html (0 => 251663) --- trunk/LayoutTests/http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-database.html (rev 0) +++ trunk/LayoutTests/http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-database.h
[webkit-changes] [251467] trunk
Title: [251467] trunk Revision 251467 Author wilan...@apple.com Date 2019-10-22 17:54:41 -0700 (Tue, 22 Oct 2019) Log Message Resource Load Statistics (experimental): Block all third-party cookies https://bugs.webkit.org/show_bug.cgi?id=203266 Reviewed by Alex Christensen. This change updates the experimental change in to block all third-party cookies, regardless of user interaction with the first-party website. Source/WebCore: Tests: http/tests/resourceLoadStatistics/third-party-cookie-blocking-database.html http/tests/resourceLoadStatistics/third-party-cookie-blocking.html * page/Settings.yaml: * platform/network/NetworkStorageSession.cpp: (WebCore::NetworkStorageSession::shouldBlockCookies const): * platform/network/NetworkStorageSession.h: (WebCore::NetworkStorageSession::setIsThirdPartyCookieBlockingEnabled): (WebCore::NetworkStorageSession::setIsThirdPartyCookieBlockingOnSitesWithoutUserInteractionEnabled): Deleted. Source/WebKit: * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::setShouldBlockThirdPartyCookiesForTesting): * NetworkProcess/NetworkSessionCreationParameters.cpp: (WebKit::NetworkSessionCreationParameters::encode const): (WebKit::NetworkSessionCreationParameters::decode): * NetworkProcess/NetworkSessionCreationParameters.h: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::NetworkSessionCocoa): * Shared/WebPreferences.yaml: * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::ensureNetworkProcess): * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::parameters): LayoutTests: * http/tests/resourceLoadStatistics/third-party-cookie-blocking-database-expected.txt: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-expected.txt. * http/tests/resourceLoadStatistics/third-party-cookie-blocking-database.html: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html. * http/tests/resourceLoadStatistics/third-party-cookie-blocking-expected.txt: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database-expected.txt. * http/tests/resourceLoadStatistics/third-party-cookie-blocking.html: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebCore/platform/network/NetworkStorageSession.cpp trunk/Source/WebCore/platform/network/NetworkStorageSession.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking.html Removed Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html Diff Modified: trunk/LayoutTests/ChangeLog (251466 => 251467) --- trunk/LayoutTests/ChangeLog 2019-10-23 00:33:37 UTC (rev 251466) +++ trunk/LayoutTests/ChangeLog 2019-10-23 00:54:41 UTC (rev 251467) @@ -1,3 +1,21 @@ +2019-10-22 John Wilander + +Resource Load Statistics (experimental): Block all third-party cookies +https://bugs.webkit.org/show_bug.cgi?id=203266 + + +Reviewed by Alex Christensen. + +This change updates the experimental change in + to block all +third-party cookies, regardless of user interaction with +the first-party website. + +* http/tests/resourceLoadStatistics/third-party-cookie-blocking-database-expected.txt: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-expected.txt. +* http/tests/resourceLoadStatist
[webkit-changes] [251391] trunk
Title: [251391] trunk Revision 251391 Author wilan...@apple.com Date 2019-10-21 15:33:47 -0700 (Mon, 21 Oct 2019) Log Message Resource Load Statistics: Update cookie blocking in NetworkStorageSession after first user interaction https://bugs.webkit.org/show_bug.cgi?id=203195 Reviewed by Alex Christensen and Chris Dumez. Source/WebKit: This change makes sure that the state of cookie blocking in WebCore:: NetworkStorageSession is immediately updated if the logged user interaction was new for this domain. It adds a completion handler to WebResourceLoadStatisticsStore::logUserInteraction() so that the call properly waits for everything to be updated. * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: (WebKit::CompletionHandler Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h trunk/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp Diff Modified: trunk/LayoutTests/ChangeLog (251390 => 251391) --- trunk/LayoutTests/ChangeLog 2019-10-21 22:31:49 UTC (rev 251390) +++ trunk/LayoutTests/ChangeLog 2019-10-21 22:33:47 UTC (rev 251391) @@ -1,3 +1,17 @@ +2019-10-21 John Wilander + +Resource Load Statistics: Update cookie blocking in NetworkStorageSession after first user interaction +https://bugs.webkit.org/show_bug.cgi?id=203195 + + +Reviewed by Alex Christensen and Chris Dumez. + +This patch removes the explicit calls to testRunner.statisticsUpdateCookieBlocking() since +they are no longer needed. This makes sure the changed code is tested. + +* http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html: +* http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html: + 2019-10-21 Wenson Hsieh Unreviewed, re-enable a couple of passing layout tests Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html (251390 => 251391) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html 2019-10-21 22:31:49 UTC (rev 251390) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html 2019-10-21 22:33:47 UTC (rev 251391) @@ -46,10 +46,8 @@ document.location.hash = "step4"; // Produce user interaction for the first-party to allow third-party cookie access. testRunner.setStatisticsHasHadUserInteraction(partitionOrigin, true, function() { -testRunner.statisticsUpdateCookieBlocking(function() { -// Check that the cookie is no longer blocked for localhost under 127.0.0.1. -openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=After user interaction, should receive first-party cookie.", runTest); -}); +// Check that the cookie is no longer blocked for localhost under 127.0.0.1. +openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=After user interaction, should receive first-party cookie.", runTest); }); break; case "#step4": Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html (251390 => 251391) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html 2019-10-21 22:31:49 UTC (rev 251390) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html 2019-10-21 22:33:47 UTC (rev 251391) @@ -46,10 +46,8 @@ document.location.hash = "step4"; // Produce user interaction for the first-party to allow third-party cookie access. testRunner.setStatisticsHasHadUserInteraction(partitionOrigin, true, function() { -testRunner.statisticsUpdateCookieBlocking(function() { -// Check that the cookie is no longer blocked
[webkit-changes] [251213] trunk
/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html Diff Modified: trunk/LayoutTests/ChangeLog (251212 => 251213) --- trunk/LayoutTests/ChangeLog 2019-10-16 22:16:29 UTC (rev 251212) +++ trunk/LayoutTests/ChangeLog 2019-10-16 22:38:55 UTC (rev 251213) @@ -1,3 +1,16 @@ +2019-10-16 John Wilander + +Resource Load Statistics (experimental): Block all third-party cookies on websites without prior user interaction +https://bugs.webkit.org/show_bug.cgi?id=203017 + + +Reviewed by Alex Christensen. + +* http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database-expected.txt: Added. +* http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html: Added. +* http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-expected.txt: Added. +* http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html: Added. + 2019-10-16 Russell Epstein Correct TestExpectations from r251119. Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database-expected.txt (0 => 251213) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database-expected.txt 2019-10-16 22:38:55 UTC (rev 251213) @@ -0,0 +1,25 @@ +Tests that all third-party cookies are blocked under websites that have not received user interaction. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS successfullyParsed is true + +TEST COMPLETE + + + +Frame: '' + +Before user interaction, should receive no cookies. +Did not receive cookie named 'firstPartyCookie'. +Did not receive cookie named 'partitionedCookie'. +Client-side document.cookie: + + +Frame: '' + +After user interaction, should receive first-party cookie. +Received cookie named 'firstPartyCookie'. +Did not receive cookie named 'partitionedCookie'. +Client-side document.cookie: firstPartyCookie=value Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html (0 => 251213) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html 2019-10-16 22:38:55 UTC (rev 251213) @@ -0,0 +1,78 @@ + + + + + +<body> +<script> +description("Tests that all third-party cookies are blocked under websites that have not received user interaction."); +jsTestIsAsync = true; + +const partitionHost = "127.0.0.1:8000"; +const partitionOrigin = "http://" + partitionHost; +const thirdPartyOrigin = "http://localhost:8000"; +const resourcePath = "/resourceLoadStatistics/resources"; +const thirdPartyBaseUrl = thirdPartyOrigin + resourcePath; +const firstPartyCookieName = "firstPartyCookie"; +const subPathToSetFirstPartyCookie = "/set-cookie.php?name=" + firstPartyCookieName + "&value=value"; +const partitionedCookieName = "partitionedCookie"; +const subPathToSetPartitionedCookie = "/set-cookie.php?name=" + partitionedCookieName + "&value=value"; +const returnUrl = partitionOrigin + "/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html"; +const subPathToGetCookies = "/get-cookies.php?name1=" + firstPartyCookieName + "&name2=" + partitionedCookieName; + +function openIframe(url, onLoadHandler) { +const element = document.createElement("iframe"); +element.src = "" +if (onLoadHandler) { +element._onload_ = onLoadHandler; +} +document.body.appendChild(element); +} + +function runTest() { +switch (document.location.hash) { +case "#step1": +// Set first-party cookie for localhost. +document.location.href = "" + subPathToSetFirstPartyCookie + "#" + returnUrl + "#step2"; +break; +case &
[webkit-changes] [250944] trunk
Title: [250944] trunk Revision 250944 Author wilan...@apple.com Date 2019-10-09 17:03:47 -0700 (Wed, 09 Oct 2019) Log Message IsLoggedIn: Add as experimental feature https://bugs.webkit.org/show_bug.cgi?id=202707 Reviewed by Brent Fulgham and Chris Dumez. IsLoggedIn was proposed to the WebAppSec WG at TPAC 2019. So far there is only an explainer posted to the mailing list: https://lists.w3.org/Archives/Public/public-webappsec/2019Sep/0004.html Source/WebCore: This patch adds the three experimental web APIs: - Promise setLoggedIn() - Promise setLoggedOut() - Promise isLoggedIn() It also tests that those APIs are only exposed in secure contexts. The functionality is implemented as a supplement to Navigator. Tests: http/tests/is-logged-in/available-in-secure-contexts.https.html http/tests/is-logged-in/unavailable-in-insecure-contexts.html * DerivedSources-input.xcfilelist: * DerivedSources-output.xcfilelist: * DerivedSources.make: * Headers.cmake: * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * page/NavigatorIsLoggedIn.cpp: Added. (WebCore::NavigatorIsLoggedIn::from): (WebCore::NavigatorIsLoggedIn::supplementName): (WebCore::NavigatorIsLoggedIn::setLoggedIn): (WebCore::NavigatorIsLoggedIn::setLoggedOut): (WebCore::NavigatorIsLoggedIn::isLoggedIn): * page/NavigatorIsLoggedIn.h: Added. * page/NavigatorIsLoggedIn.idl: Added. * page/PointerCaptureController.cpp: * page/PointerCaptureController.h: * page/Settings.yaml: Source/WebKit: * Shared/WebPreferences.yaml: LayoutTests: * http/tests/is-logged-in/available-in-secure-contexts.https-expected.txt: Added. * http/tests/is-logged-in/available-in-secure-contexts.https.html: Added. * http/tests/is-logged-in/unavailable-in-insecure-contexts-expected.txt: Added. * http/tests/is-logged-in/unavailable-in-insecure-contexts.html: Added. * platform/ios-device-wk1/TestExpectations: * platform/ios-simulator-wk1/TestExpectations: * platform/ios-wk1/TestExpectations: * platform/mac-highsierra/fast/dom/navigator-detached-no-crash-expected.txt: * platform/mac-wk1/TestExpectations: * platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt: * platform/wincairo-wk1/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-device-wk1/TestExpectations trunk/LayoutTests/platform/ios-simulator-wk1/TestExpectations trunk/LayoutTests/platform/ios-wk1/TestExpectations trunk/LayoutTests/platform/mac-highsierra/fast/dom/navigator-detached-no-crash-expected.txt trunk/LayoutTests/platform/mac-wk1/TestExpectations trunk/LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt trunk/LayoutTests/platform/wincairo-wk1/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/DerivedSources-input.xcfilelist trunk/Source/WebCore/DerivedSources-output.xcfilelist trunk/Source/WebCore/DerivedSources.make trunk/Source/WebCore/Headers.cmake trunk/Source/WebCore/Sources.txt trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/page/PointerCaptureController.cpp trunk/Source/WebCore/page/PointerCaptureController.h trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebPreferences.yaml Added Paths trunk/LayoutTests/http/tests/is-logged-in/ trunk/LayoutTests/http/tests/is-logged-in/available-in-secure-contexts.https-expected.txt trunk/LayoutTests/http/tests/is-logged-in/available-in-secure-contexts.https.html trunk/LayoutTests/http/tests/is-logged-in/unavailable-in-insecure-contexts-expected.txt trunk/LayoutTests/http/tests/is-logged-in/unavailable-in-insecure-contexts.html trunk/Source/WebCore/page/NavigatorIsLoggedIn.cpp trunk/Source/WebCore/page/NavigatorIsLoggedIn.h trunk/Source/WebCore/page/NavigatorIsLoggedIn.idl Diff Modified: trunk/LayoutTests/ChangeLog (250943 => 250944) --- trunk/LayoutTests/ChangeLog 2019-10-09 23:50:03 UTC (rev 250943) +++ trunk/LayoutTests/ChangeLog 2019-10-10 00:03:47 UTC (rev 250944) @@ -1,3 +1,27 @@ +2019-10-09 John Wilander + +IsLoggedIn: Add as experimental feature +https://bugs.webkit.org/show_bug.cgi?id=202707 + + +Reviewed by Brent Fulgham and Chris Dumez. + +IsLoggedIn was proposed to the WebAppSec WG at TPAC 2019. +So far there is only an explainer posted to the mailing list: +https://lists.w3.org/Archives/Public/public-webappsec/2019Sep/0004.html + +* http/tests/is-logged-in/available-in-secure-contexts.https-expected.txt: Added. +* http/tests/is-logged-in/available-in-secure-contexts.https.html: Added. +* http/tests/is-logged-in/unavailable-in-insecure-contexts-expected.txt: Added. +* http/tests/is-logged-in/unavailable-in-insecure-contexts.html: Added. +* platform/ios-device-wk1/TestExpectations: +* platform/ios-simulator-wk1/TestExpectations: +* platform/ios-wk1/TestExpectations: +* platform/mac-highsierra/fast/dom/navigator-detached-no-crash-expected.
[webkit-changes] [250676] trunk
/unsafe-url/cross-origin-http-http.html trunk/LayoutTests/http/tests/referrer-policy-iframe/unsafe-url/cross-origin-http.https.html trunk/LayoutTests/http/tests/referrer-policy-iframe/unsafe-url/same-origin.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/downgrade-document-referrer-nested-third-party-iframe-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/downgrade-document-referrer-nested-third-party-iframe.html trunk/LayoutTests/http/tests/resourceLoadStatistics/downgrade-document-referrer-third-party-iframe-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/downgrade-document-referrer-third-party-iframe.html trunk/LayoutTests/http/tests/resourceLoadStatistics/leave-empty-document-referrer-alone-third-party-iframe-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/leave-empty-document-referrer-alone-third-party-iframe.html trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/nest-iframe-report-document-referrer.html trunk/LayoutTests/http/tests/resourceLoadStatistics/resources/report-document-referrer.html Diff Modified: trunk/LayoutTests/ChangeLog (250675 => 250676) --- trunk/LayoutTests/ChangeLog 2019-10-03 20:49:57 UTC (rev 250675) +++ trunk/LayoutTests/ChangeLog 2019-10-03 20:50:34 UTC (rev 250676) @@ -1,3 +1,72 @@ +2019-10-03 John Wilander + +Resource Load Statistics: Downgrade document.referrer for all third-party iframes +https://bugs.webkit.org/show_bug.cgi?id=202506 + + +Reviewed by Brent Fulgham. + +The tests that are not new rely on document.referrer and so they are made to turn off +ITP before they run to maintain a full referrer. + +* http/tests/media/media-stream/enumerate-devices-source-id.html: +* http/tests/referrer-policy-iframe/no-referrer-when-downgrade/cross-origin-http-http.html: +* http/tests/referrer-policy-iframe/no-referrer-when-downgrade/cross-origin-http.https.html: +* http/tests/referrer-policy-iframe/no-referrer-when-downgrade/same-origin.html: +* http/tests/referrer-policy-iframe/no-referrer/cross-origin-http-http.html: +* http/tests/referrer-policy-iframe/no-referrer/cross-origin-http.https.html: +* http/tests/referrer-policy-iframe/no-referrer/same-origin.html: +* http/tests/referrer-policy-iframe/origin-when-cross-origin/cross-origin-http-http.html: +* http/tests/referrer-policy-iframe/origin-when-cross-origin/cross-origin-http.https.html: +* http/tests/referrer-policy-iframe/origin-when-cross-origin/same-origin.html: +* http/tests/referrer-policy-iframe/origin/cross-origin-http-http.html: +* http/tests/referrer-policy-iframe/origin/cross-origin-http.https.html: +* http/tests/referrer-policy-iframe/origin/same-origin.html: +* http/tests/referrer-policy-iframe/same-origin/cross-origin-http-http.html: +* http/tests/referrer-policy-iframe/same-origin/cross-origin-http.https.html: +* http/tests/referrer-policy-iframe/same-origin/same-origin.html: +* http/tests/referrer-policy-iframe/strict-origin-when-cross-origin/cross-origin-http-http.html: +* http/tests/referrer-policy-iframe/strict-origin-when-cross-origin/cross-origin-http.https.html: +* http/tests/referrer-policy-iframe/strict-origin-when-cross-origin/same-origin.html: +* http/tests/referrer-policy-iframe/strict-origin/cross-origin-http-http.html: +* http/tests/referrer-policy-iframe/strict-origin/cross-origin-http.https.html: +* http/tests/referrer-policy-iframe/strict-origin/same-origin.html: +* http/tests/referrer-policy-iframe/unsafe-url/cross-origin-http-http.html: +* http/tests/referrer-policy-iframe/unsafe-url/cross-origin-http.https.html: +* http/tests/referrer-policy-iframe/unsafe-url/same-origin.html: +* http/tests/referrer-policy/no-referrer-when-downgrade/cross-origin-http-http.html: +* http/tests/referrer-policy/no-referrer-when-downgrade/cross-origin-http.https.html: +* http/tests/referrer-policy/no-referrer-when-downgrade/same-origin.html: +* http/tests/referrer-policy/no-referrer/cross-origin-http-http.html: +* http/tests/referrer-policy/no-referrer/cross-origin-http.https.html: +* http/tests/referrer-policy/no-referrer/same-origin.html: +* http/tests/referrer-policy/origin-when-cross-origin/cross-origin-http-http.html: +* http/tests/referrer-policy/origin-when-cross-origin/cross-origin-http.https.html: +* http/tests/referrer-policy/origin-when-cross-origin/same-origin.html: +* http/tests/referrer-policy/origin/cross-origin-http-http.html: +* http/tests/referrer-policy/origin/cross-origin-http.https.html: +* http/tests/referrer-policy/origin/same-origin.html: +* http/te
[webkit-changes] [250589] trunk
s/storageAccess/has-storage-access-false-by-default-ephemeral.html trunk/LayoutTests/http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral-expected.txt trunk/LayoutTests/http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral.html trunk/LayoutTests/http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-expected.txt trunk/LayoutTests/http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies.html Removed Paths trunk/LayoutTests/http/tests/storageAccess/has-storage-access-true-if-feature-off.html Diff Modified: trunk/LayoutTests/ChangeLog (250588 => 250589) --- trunk/LayoutTests/ChangeLog 2019-10-02 00:06:58 UTC (rev 250588) +++ trunk/LayoutTests/ChangeLog 2019-10-02 01:18:48 UTC (rev 250589) @@ -1,3 +1,28 @@ +2019-10-01 John Wilander + +Storage Access API: document.hasStorageAccess() should return true when the cookie policy allows access +https://bugs.webkit.org/show_bug.cgi?id=202435 + + +Reviewed by Brent Fulgham. + +WebKit's Storage Access API implementation has so far only looked at whether ITP is +blocking cookie access or not. However, the default cookie policy is still in +effect underneath ITP. document.hasStorageAccess() should return true if the +third-party: +a) is not classified by ITP, and +b) has cookies which implies it can use cookies as third-party according to the +default cookie policy. + +* http/tests/storageAccess/has-storage-access-false-by-default-ephemeral-expected.txt: Added. +* http/tests/storageAccess/has-storage-access-false-by-default-ephemeral.html: Copied from LayoutTests/http/tests/storageAccess/has-storage-access-true-if-feature-off.html. +* http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral-expected.txt: Added. +* http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral.html: Copied from LayoutTests/http/tests/storageAccess/has-storage-access-true-if-feature-off.html. +* http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-expected.txt: Added. +* http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies.html: Renamed from LayoutTests/http/tests/storageAccess/has-storage-access-true-if-feature-off.html. +* platform/ios/TestExpectations: +* platform/mac-wk2/TestExpectations: + 2019-10-01 Rob Buis [Mac] Layout Test imported/w3c/web-platform-tests/fetch/api/redirect/redirect-location.any.html fails Added: trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-ephemeral-expected.txt (0 => 250589) --- trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-ephemeral-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-ephemeral-expected.txt 2019-10-02 01:18:48 UTC (rev 250589) @@ -0,0 +1,10 @@ +Tests that document.hasStorageAccess() returns false for a 3rd-party iframe by default (ephemeral session). + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS No storage access. document.cookie == , cookies seen server-side == "No cookies" +PASS successfullyParsed is true + +TEST COMPLETE + Copied: trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-ephemeral.html (from rev 250588, trunk/LayoutTests/http/tests/storageAccess/has-storage-access-true-if-feature-off.html) (0 => 250589) --- trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-ephemeral.html (rev 0) +++ trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-ephemeral.html 2019-10-02 01:18:48 UTC (rev 250589) @@ -0,0 +1,36 @@ + + + + + +description("Tests that document.hasStorageAccess() returns false for a 3rd-party iframe by default (ephemeral session)."); +jsTestIsAsync = true; + +window.addEventListener("message", receiveMessage, false); + +function receiveMessage(event) { +if (event.origin === "http://localhost:8000") { +if (event.data.indexOf("PASS") !== -1) +testPassed(event.data.replace("PASS ", "")); +else +testFailed(event.data.replace("FAIL ", "")); +} else +testFailed("Received a message from an unexpected origin: " + event.origin); +finishJSTest(); +} + +const hostUnderTest = "localhost:8000"; +const statisticsUrl = "http://" + hostUnderTest + "/temp"; +function runTest() { +let iframeElement = document.crea
[webkit-changes] [250431] trunk
Title: [250431] trunk Revision 250431 Author wilan...@apple.com Date 2019-09-27 10:14:20 -0700 (Fri, 27 Sep 2019) Log Message Storage Access API: document.hasStorageAccess() should return false by default https://bugs.webkit.org/show_bug.cgi?id=202281 Reviewed by Alex Christensen. document.hasStorageAccess() should return false by default so that it only returns true if the context has asked for and been granted storage access. Source/WebKit: * NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: (WebKit::ResourceLoadStatisticsDatabaseStore::hasStorageAccess): * NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::hasStorageAccess): LayoutTests: * http/tests/storageAccess/has-storage-access-false-by-default-expected.txt: Added. * http/tests/storageAccess/has-storage-access-false-by-default.html: Added. * platform/ios/TestExpectations: The new test is marked as [ Pass ]. * platform/mac-wk2/TestExpectations: The new test is marked as [ Pass ]. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/TestExpectations trunk/LayoutTests/platform/mac-wk2/TestExpectations trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp Added Paths trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-expected.txt trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default.html Diff Modified: trunk/LayoutTests/ChangeLog (250430 => 250431) --- trunk/LayoutTests/ChangeLog 2019-09-27 16:56:58 UTC (rev 250430) +++ trunk/LayoutTests/ChangeLog 2019-09-27 17:14:20 UTC (rev 250431) @@ -1,3 +1,21 @@ +2019-09-27 John Wilander + +Storage Access API: document.hasStorageAccess() should return false by default +https://bugs.webkit.org/show_bug.cgi?id=202281 + + +Reviewed by Alex Christensen. + +document.hasStorageAccess() should return false by default so that it only +returns true if the context has asked for and been granted storage access. + +* http/tests/storageAccess/has-storage-access-false-by-default-expected.txt: Added. +* http/tests/storageAccess/has-storage-access-false-by-default.html: Added. +* platform/ios/TestExpectations: +The new test is marked as [ Pass ]. +* platform/mac-wk2/TestExpectations: +The new test is marked as [ Pass ]. + 2019-09-27 Chris Dumez IDBRequest should not prevent a page from entering the back/forward cache Added: trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-expected.txt (0 => 250431) --- trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default-expected.txt 2019-09-27 17:14:20 UTC (rev 250431) @@ -0,0 +1,10 @@ +Tests that document.hasStorageAccess() returns false for a 3rd-party iframe by default. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS No storage access. document.cookie == , cookies seen server-side == "No cookies" +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default.html (0 => 250431) --- trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default.html (rev 0) +++ trunk/LayoutTests/http/tests/storageAccess/has-storage-access-false-by-default.html 2019-09-27 17:14:20 UTC (rev 250431) @@ -0,0 +1,37 @@ + + + + +description("Tests that document.hasStorageAccess() returns false for a 3rd-party iframe by default."); +jsTestIsAsync = true; + +window.addEventListener("message", receiveMessage, false); + +function receiveMessage(event) { +if (event.origin === "http://localhost:8000") { +if (event.data.indexOf("PASS") !== -1) +testPassed(event.data.replace("PASS ", "")); +else +testFailed(event.data.replace("FAIL ", "")); +} else +testFailed("Received a message from an unexpected origin: " + event.origin); +setEnableFeature(false, finishJSTest); +} + +const hostUnderTest = "localhost:8000"; +const statisticsUrl = "http://" + hostUnderTest + "/temp"; +function runTest() { +setEnableFeature(true, function() { +let iframeElement = document.createElement("iframe"); +iframeElement.id = "TheIframeThatRequests
[webkit-changes] [248803] trunk/Tools
Title: [248803] trunk/Tools Revision 248803 Author wilan...@apple.com Date 2019-08-16 16:51:21 -0700 (Fri, 16 Aug 2019) Log Message Add John Wilander as WebKit Reviewer https://bugs.webkit.org/show_bug.cgi?id=200837 Unreviewed update to contributors.json to change my status to reviewer. See email on reviewers mailing list for proof of granted privileges. * Scripts/webkitpy/common/config/contributors.json: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/contributors.json Diff Modified: trunk/Tools/ChangeLog (248802 => 248803) --- trunk/Tools/ChangeLog 2019-08-16 23:49:27 UTC (rev 248802) +++ trunk/Tools/ChangeLog 2019-08-16 23:51:21 UTC (rev 248803) @@ -1,3 +1,13 @@ +2019-08-16 John Wilander + +Add John Wilander as WebKit Reviewer +https://bugs.webkit.org/show_bug.cgi?id=200837 + +Unreviewed update to contributors.json to change my status to reviewer. +See email on reviewers mailing list for proof of granted privileges. + +* Scripts/webkitpy/common/config/contributors.json: + 2019-08-16 Timothy Hatcher REGRESSION (r248436): WKWebView doesn’t respect isOpaque setting in NIB. Modified: trunk/Tools/Scripts/webkitpy/common/config/contributors.json (248802 => 248803) --- trunk/Tools/Scripts/webkitpy/common/config/contributors.json 2019-08-16 23:49:27 UTC (rev 248802) +++ trunk/Tools/Scripts/webkitpy/common/config/contributors.json 2019-08-16 23:51:21 UTC (rev 248803) @@ -2896,7 +2896,7 @@ "nicks" : [ "johnwilander" ], - "status" : "committer" + "status" : "reviewer" }, "Johnny Ding" : { "emails" : [ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [248640] trunk
-- trunk/LayoutTests/ChangeLog 2019-08-13 22:30:44 UTC (rev 248639) +++ trunk/LayoutTests/ChangeLog 2019-08-13 22:34:29 UTC (rev 248640) @@ -1,3 +1,16 @@ +2019-08-13 John Wilander + +Resource Load Statistics: Switch NSURLSession on top navigation to prevalent resource with user interaction +https://bugs.webkit.org/show_bug.cgi?id=200642 + + +Reviewed by Alex Christensen. + +* http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction-expected.txt: Added. +* http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.html: Added. +* http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction-expected.txt: Added. +* http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction.html: Added. + 2019-08-13 Ryan Haddad [WebAuthN] Enable LocalAuthenticator for macOS Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction-expected.txt (0 => 248640) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction-expected.txt 2019-08-13 22:34:29 UTC (rev 248640) @@ -0,0 +1,12 @@ +Tests that the session is not switched upon top frame navigation to a prevalent resource without user interaction. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS Should have and has the session cookie. +PASS Should have and has the persistent cookie. +PASS Origin has no isolated session. +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.html (0 => 248640) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.html (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.html 2019-08-13 22:34:29 UTC (rev 248640) @@ -0,0 +1,108 @@ + + + + + +<body _onload_="runTest()"> +<script> +description("Tests that the session is not switched upon top frame navigation to a prevalent resource without user interaction."); +jsTestIsAsync = true; + +const prevalentOrigin = "http://127.0.0.1:8000"; +const nonPrevalentOrigin = "http://localhost:8000"; +const sessionCookieName = "sessionCookie"; +const persistentCookieName = "persistentCookie"; +const twoMinutesInSeconds = 120; + +function setSessionCookie() { +document.cookie = sessionCookieName + "=1; path=/"; +} + +function setPersistentCookie() { +document.cookie = persistentCookieName + "=1; path=/; Max-Age=" + twoMinutesInSeconds + ";"; +} + +function checkCookies(shouldHaveSessionCookie, shouldHavePersistentCookie) { +let hasSessionCookie = (document.cookie + "").includes(sessionCookieName), +hasPersistentCookie = (document.cookie + "").includes(persistentCookieName); + +if (shouldHaveSessionCookie && hasSessionCookie) +testPassed("Should have and has the session cookie."); +else if (shouldHaveSessionCookie && !hasSessionCookie) { +testFailed("Should have but doesn't have the session cookie."); +setEnableFeature(false, finishJSTest); +} else if (!shouldHaveSessionCookie && hasSessionCookie) { +testFailed("Shouldn't have but has the session cookie."); +setEnableFeature(false, finishJSTest); +} else +testPassed("Shouldn't have and doesn't have the session cookie."); + + +if (shouldHavePersistentCookie && hasPersistentCookie) +testPassed("Should have and has the persistent cookie."); +else if (shouldHavePersistentCookie && !hasPersistentCookie) { +testFailed("Should have but doesn't have the persistent cookie."); +setEnableFeature(false, finishJSTest); +} else if (!shouldHavePersistentCookie && hasPersistentCookie) { +testFailed("Shouldn't have but has the persistent cookie."); +setEnableFeature(false, finishJSTest); +} else +testPassed("Shouldn't have and doesn't have the persistent cookie."); +} + +function runTest() { +
[webkit-changes] [248273] trunk
Title: [248273] trunk Revision 248273 Author wilan...@apple.com Date 2019-08-05 14:33:51 -0700 (Mon, 05 Aug 2019) Log Message Resource Load Statistics: Re-introduce latch mode for subresource cookie blocking https://bugs.webkit.org/show_bug.cgi?id=200395 Reviewed by Darin Adler. Back when we had a relaxation of cookie blocking 24 hours after first-party user interaction, we made sure cookie blocking could be turned on and off in subresource redirect chains. The 24 hour window is now long gone. This patch simplifies the cookie blocking so that once a subresource request is denied cookies, any subsequent redirect of that request will also be denied cookies, regardless of the classification status of the domains involved. I call it latch mode. Source/WebKit: * NetworkProcess/cocoa/NetworkDataTaskCocoa.h: * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::blockCookies): (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): (WebKit::NetworkDataTaskCocoa::willPerformHTTPRedirection): (WebKit::NetworkDataTaskCocoa::applyCookieBlockingPolicy): Deleted. LayoutTests: * http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect-expected.txt: Renamed from LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt. * http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect.html: Renamed from LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect.html. Changed to expect no removal of blocking in the redirect and renamed accordingly. * platform/ios/TestExpectations: Renamed. * platform/mac-wk2/TestExpectations: Renamed. * platform/wk2/TestExpectations: Renamed. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/TestExpectations trunk/LayoutTests/platform/mac-wk2/TestExpectations trunk/LayoutTests/platform/wk2/TestExpectations trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm Added Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect.html Removed Paths trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect.html Diff Modified: trunk/LayoutTests/ChangeLog (248272 => 248273) --- trunk/LayoutTests/ChangeLog 2019-08-05 21:24:52 UTC (rev 248272) +++ trunk/LayoutTests/ChangeLog 2019-08-05 21:33:51 UTC (rev 248273) @@ -1,3 +1,28 @@ +2019-08-05 John Wilander + +Resource Load Statistics: Re-introduce latch mode for subresource cookie blocking +https://bugs.webkit.org/show_bug.cgi?id=200395 + + +Reviewed by Darin Adler. + +Back when we had a relaxation of cookie blocking 24 hours after first-party user +interaction, we made sure cookie blocking could be turned on and off in subresource +redirect chains. The 24 hour window is now long gone. This patch simplifies the +cookie blocking so that once a subresource request is denied cookies, any +subsequent redirect of that request will also be denied cookies, regardless of the +classification status of the domains involved. I call it latch mode. + +* http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect-expected.txt: Renamed from LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt. +* http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect.html: Renamed from LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect.html. +Changed to expect no removal of blocking in the redirect and renamed accordingly. +* platform/ios/TestExpectations: +Renamed. +* platform/mac-wk2/TestExpectations: +Renamed. +* platform/wk2/TestExpectations: +Renamed. + 2019-08-05 Youenn Fablet Disable speculative loading if cache is not to be used for the load Copied: trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect-expected.txt (from rev 248272, trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt) (0 => 248273) --- trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/resourceLoadStatistics/do-not-remove-blocking-in-redirect-expected.txt 2019-08-05 21:33:51 UTC (rev 248273) @@ -0,0 +1,51 @@ +Tests that blocking is not removed mid-flight in redirects. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS successfullyParsed is true + +TEST COMPLETE + + + +Frame: '