Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 16daa23d3ea0022332713096723573f218e149d8
      
https://github.com/WebKit/WebKit/commit/16daa23d3ea0022332713096723573f218e149d8
  Author: Matthew Finkel <m_fin...@apple.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M LayoutTests/TestExpectations
    A 
LayoutTests/http/tests/cookies/multiple-cookies-with-partitioned.https-expected.txt
    A 
LayoutTests/http/tests/cookies/multiple-cookies-with-partitioned.https.html
    M Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h
    M Source/WebCore/platform/network/NetworkStorageSession.cpp
    M Source/WebCore/platform/network/NetworkStorageSession.h
    M Source/WebCore/platform/network/cocoa/NetworkStorageSessionCocoa.mm
    M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
    M Source/WebKit/Shared/WebProcessDataStoreParameters.h
    M Source/WebKit/Shared/WebProcessDataStoreParameters.serialization.in
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebProcessPool.cpp
    M Source/WebKit/UIProcess/WebProcessProxy.cpp
    M Source/WebKit/UIProcess/WebProcessProxy.h
    M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp
    M Source/WebKit/WebProcess/WebPage/Cocoa/WebCookieCacheCocoa.mm
    M Source/WebKit/WebProcess/WebPage/WebCookieCache.cpp
    M Source/WebKit/WebProcess/WebPage/WebCookieCache.h
    M Source/WebKit/WebProcess/WebPage/WebCookieJar.cpp
    M Source/WebKit/WebProcess/WebPage/WebCookieJar.h
    M Source/WebKit/WebProcess/WebProcess.cpp
    M Source/WebKit/WebProcess/WebProcess.h
    M Source/WebKit/WebProcess/WebProcess.messages.in

  Log Message:
  -----------
  [cocoa] Support setting partitioned cookies from JS and storing partitioned 
cookies in cookie cache
https://bugs.webkit.org/show_bug.cgi?id=284550
rdar://141358106

Reviewed by Sihui Liu.

This patch:
 - sets the appropriate partition key when setting a cookie from JavaScript
 - enables partitioned cookies in the in-process cookie cache
 - extends NetworkStorageSession::domCookiesForHost so it returns first-party 
partitioned cookies

Covered by new layout test. The expected result shows that the implementation
does not currently support two cookies with the same name where one is
partitioned and the other is not.

* LayoutTests/TestExpectations:
* 
LayoutTests/http/tests/cookies/multiple-cookies-with-partitioned.https-expected.txt:
 Added.
* LayoutTests/http/tests/cookies/multiple-cookies-with-partitioned.https.html: 
Added.
* Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h:
* Source/WebCore/platform/network/NetworkStorageSession.cpp:
(WebCore::NetworkStorageSession::domCookiesForHost):
* Source/WebCore/platform/network/NetworkStorageSession.h:
* Source/WebCore/platform/network/cocoa/NetworkStorageSessionCocoa.mm:
(WebCore::parseDOMCookie):
(WebCore::NetworkStorageSession::setCookiesFromDOM const):
(WebCore::NetworkStorageSession::domCookiesForHost):
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::domCookiesForHost):
* Source/WebKit/Shared/WebProcessDataStoreParameters.h:
* Source/WebKit/Shared/WebProcessDataStoreParameters.serialization.in:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::preferencesDidChange):
* Source/WebKit/UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::webProcessDataStoreParameters):
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::setOptInCookiePartitioningEnabled):
* Source/WebKit/UIProcess/WebProcessProxy.h:
* Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::propagateSettingUpdates):
* Source/WebKit/WebProcess/WebPage/Cocoa/WebCookieCacheCocoa.mm:
(WebKit::WebCookieCache::setOptInCookiePartitioningEnabled):
* Source/WebKit/WebProcess/WebPage/WebCookieCache.cpp:
(WebKit::WebCookieCache::setOptInCookiePartitioningEnabled):
* Source/WebKit/WebProcess/WebPage/WebCookieCache.h:
* Source/WebKit/WebProcess/WebPage/WebCookieJar.cpp:
(WebKit::WebCookieJar::setOptInCookiePartitioningEnabled):
* Source/WebKit/WebProcess/WebPage/WebCookieJar.h:
* Source/WebKit/WebProcess/WebProcess.cpp:
(WebKit::WebProcess::setWebsiteDataStoreParameters):
(WebKit::WebProcess::setOptInCookiePartitioningEnabled):
* Source/WebKit/WebProcess/WebProcess.h:
* Source/WebKit/WebProcess/WebProcess.messages.in:

Canonical link: https://commits.webkit.org/288727@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to