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

Reply via email to