Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 48578bd794e57c2c3898d34ee5f784acd947b4c5
https://github.com/WebKit/WebKit/commit/48578bd794e57c2c3898d34ee5f784acd947b4c5
Author: Ankshit Jain <[email protected]>
Date: 2025-11-21 (Fri, 21 Nov 2025)
Changed paths:
M Source/WTF/wtf/cocoa/SoftLinking.h
M Source/WebCore/Headers.cmake
M Source/WebCore/Modules/webtransport/WebTransport.cpp
M Source/WebCore/Modules/webtransport/WebTransport.h
M Source/WebCore/Modules/webtransport/WebTransport.idl
A Source/WebCore/Modules/webtransport/WebTransportConnectionInfo.h
M Source/WebCore/Modules/webtransport/WebTransportOptions.h
M Source/WebCore/Modules/webtransport/WebTransportOptions.idl
M Source/WebCore/PAL/pal/spi/cocoa/NetworkSPI.h
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/page/SocketProvider.h
M Source/WebKit/Configurations/AllowedSPI.toml
M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h
M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in
M Source/WebKit/NetworkProcess/cocoa/NetworkSoftLink.h
M Source/WebKit/NetworkProcess/cocoa/NetworkSoftLink.mm
M Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.cpp
M Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.h
M Source/WebKit/NetworkProcess/webtransport/WebTransport.serialization.in
M
Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportSessionCocoa.mm
M Source/WebKit/WebProcess/Network/WebTransportSession.cpp
M Source/WebKit/WebProcess/Network/WebTransportSession.h
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WebTransport.mm
Log Message:
-----------
WebTransport should support creation options and populate attributes on
session establishment
https://bugs.webkit.org/show_bug.cgi?id=302836
rdar://136263132
Reviewed by Alex Christensen.
This PR adds support for application protocol negotiation.
It also considers the suggestion provided by anticipated stream limits from
WebTransport options.
These values are only considered before session establishment right now.
Finally, this PR also adds support for reliability mode to be made available to
the client.
Test: Tools/TestWebKitAPI/Tests/WebKitCocoa/WebTransport.mm
* Source/WTF/wtf/cocoa/SoftLinking.h:
* Source/WebCore/Headers.cmake:
* Source/WebCore/Modules/webtransport/WebTransport.cpp:
(WebCore::WebTransport::create):
(WebCore::WebTransport::initializeOverHTTP):
(WebCore::WebTransport::WebTransport):
(WebCore::WebTransport::anticipatedConcurrentIncomingUnidirectionalStreams):
(WebCore::WebTransport::setAnticipatedConcurrentIncomingUnidirectionalStreams):
(WebCore::WebTransport::anticipatedConcurrentIncomingBidirectionalStreams):
(WebCore::WebTransport::setAnticipatedConcurrentIncomingBidirectionalStreams):
(WebCore::WebTransport::protocol):
(WebCore::WebTransport::supportsReliableOnly):
* Source/WebCore/Modules/webtransport/WebTransport.h:
* Source/WebCore/Modules/webtransport/WebTransport.idl:
* Source/WebCore/Modules/webtransport/WebTransportConnectionInfo.h: Copied from
Source/WebCore/Modules/webtransport/WebTransportOptions.h.
(WebCore::WebTransportConnectionInfo::isolatedCopy const):
(WebCore::WebTransportConnectionInfo::isolatedCopy):
* Source/WebCore/Modules/webtransport/WebTransportOptions.h:
* Source/WebCore/Modules/webtransport/WebTransportOptions.idl:
* Source/WebCore/PAL/pal/spi/cocoa/NetworkSPI.h:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/page/SocketProvider.h:
* Source/WebKit/Configurations/AllowedSPI.toml:
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::initializeWebTransportSession):
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h:
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in:
* Source/WebKit/NetworkProcess/cocoa/NetworkSoftLink.h:
* Source/WebKit/NetworkProcess/cocoa/NetworkSoftLink.mm:
* Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.cpp:
(WebKit::NetworkTransportSession::initialize):
* Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.h:
* Source/WebKit/NetworkProcess/webtransport/WebTransport.serialization.in:
*
Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportSessionCocoa.mm:
(WebKit::joinProtocolStrings):
(WebKit::createParameters):
(WebKit::NetworkTransportSession::create):
(WebKit::NetworkTransportSession::initialize):
(WebKit::NetworkTransportSession::setupDatagramConnection):
* Source/WebKit/WebProcess/Network/WebTransportSession.cpp:
(WebKit::WebTransportSession::initialize):
* Source/WebKit/WebProcess/Network/WebTransportSession.h:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WebTransport.mm:
(TestWebKitAPI::TEST(WebTransport, Datagram)):
Canonical link: https://commits.webkit.org/303419@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications