Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: d09b3b34e3e94ff6842abb400d692f156173edfb https://github.com/WebKit/WebKit/commit/d09b3b34e3e94ff6842abb400d692f156173edfb Author: Ankshit Jain <ankshit_j...@apple.com> Date: 2025-01-06 (Mon, 06 Jan 2025)
Changed paths: M Source/WebCore/Modules/streams/ReadableStreamSource.h M Source/WebCore/Modules/webtransport/DatagramSink.cpp M Source/WebCore/Modules/webtransport/DatagramSink.h M Source/WebCore/Modules/webtransport/DatagramSource.cpp M Source/WebCore/Modules/webtransport/DatagramSource.h M Source/WebCore/Modules/webtransport/WebTransport.cpp M Source/WebCore/Modules/webtransport/WebTransport.h M Source/WebCore/Modules/webtransport/WebTransportBidirectionalStreamSource.cpp M Source/WebCore/Modules/webtransport/WebTransportBidirectionalStreamSource.h M Source/WebCore/Modules/webtransport/WebTransportReceiveStreamSource.cpp M Source/WebCore/Modules/webtransport/WebTransportReceiveStreamSource.h M Source/WebCore/Modules/webtransport/WebTransportSession.h M Source/WebCore/Modules/webtransport/WebTransportSessionClient.h M Source/WebCore/Modules/webtransport/WorkerWebTransportSession.cpp M Source/WebCore/Modules/webtransport/WorkerWebTransportSession.h M Source/WebCore/PAL/pal/cocoa/NetworkSoftLink.h M Source/WebCore/PAL/pal/cocoa/NetworkSoftLink.mm M Source/WebCore/PAL/pal/spi/cocoa/NetworkSPI.h M Source/WebCore/bindings/js/ReadableStreamDefaultController.h M Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.cpp M Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.h M Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.messages.in M Source/WebKit/NetworkProcess/webtransport/NetworkTransportStream.cpp M Source/WebKit/NetworkProcess/webtransport/NetworkTransportStream.h M Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportSessionCocoa.mm M Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportStreamCocoa.mm M Source/WebKit/WebProcess/Network/WebTransportSendStreamSink.cpp M Source/WebKit/WebProcess/Network/WebTransportSendStreamSink.h M Source/WebKit/WebProcess/Network/WebTransportSession.cpp M Source/WebKit/WebProcess/Network/WebTransportSession.h M Source/WebKit/WebProcess/Network/WebTransportSession.messages.in M Source/WebKit/WebProcess/WebProcess.cpp M Tools/TestWebKitAPI/Tests/WebKitCocoa/WebTransport.mm Log Message: ----------- WebTransport should send network errors to JS for failure points https://bugs.webkit.org/show_bug.cgi?id=285087 rdar://136263051 Reviewed by Alex Christensen. Network connections are canceled when the session is terminated. Streams handle completion and error for reads and writes. Incoming connections are canceled if the incoming streams reader is closed. * Source/WebCore/Modules/streams/ReadableStreamSource.h: * Source/WebCore/Modules/webtransport/DatagramSink.cpp: (WebCore::DatagramSink::write): (WebCore::DatagramSink::send): * Source/WebCore/Modules/webtransport/DatagramSink.h: * Source/WebCore/Modules/webtransport/DatagramSource.cpp: (WebCore::DatagramSource::receiveDatagram): (WebCore::DatagramSource::doCancel): * Source/WebCore/Modules/webtransport/DatagramSource.h: * Source/WebCore/Modules/webtransport/WebTransport.cpp: (WebCore::WebTransport::receiveDatagram): (WebCore::WebTransport::receiveIncomingUnidirectionalStream): (WebCore::WebTransport::receiveBidirectionalStream): * Source/WebCore/Modules/webtransport/WebTransport.h: * Source/WebCore/Modules/webtransport/WebTransportBidirectionalStreamSource.cpp: (WebCore::WebTransportBidirectionalStreamSource::receiveIncomingStream): * Source/WebCore/Modules/webtransport/WebTransportBidirectionalStreamSource.h: * Source/WebCore/Modules/webtransport/WebTransportReceiveStreamSource.cpp: (WebCore::WebTransportReceiveStreamSource::receiveIncomingStream): * Source/WebCore/Modules/webtransport/WebTransportReceiveStreamSource.h: * Source/WebCore/Modules/webtransport/WebTransportSession.h: * Source/WebCore/Modules/webtransport/WebTransportSessionClient.h: * Source/WebCore/PAL/pal/cocoa/NetworkSoftLink.h: * Source/WebCore/PAL/pal/cocoa/NetworkSoftLink.mm: * Source/WebCore/PAL/pal/spi/cocoa/NetworkSPI.h: * Source/WebCore/bindings/js/ReadableStreamDefaultController.h: * Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.cpp: (WebKit::NetworkTransportSession::sendDatagram): (WebKit::NetworkTransportSession::streamSendBytes): (WebKit::NetworkTransportSession::terminate): (WebKit::NetworkTransportSession::receiveDatagram): (WebKit::NetworkTransportSession::streamReceiveBytes): (WebKit::NetworkTransportSession::receiveIncomingUnidirectionalStream): (WebKit::NetworkTransportSession::receiveBidirectionalStream): (WebKit::NetworkTransportSession::cancelReceiveStream): (WebKit::NetworkTransportSession::cancelSendStream): (WebKit::NetworkTransportSession::destroyStream): (WebKit::NetworkTransportSession::sendStreamSendBytes): Deleted. (WebKit::NetworkTransportSession::destroyOutgoingUnidirectionalStream): Deleted. (WebKit::NetworkTransportSession::destroyBidirectionalStream): Deleted. * Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.h: * Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.messages.in: * Source/WebKit/NetworkProcess/webtransport/NetworkTransportStream.cpp: (WebKit::NetworkTransportStream::NetworkTransportStream): (WebKit::NetworkTransportStream::sendBytes): (WebKit::NetworkTransportStream::cancelReceive): (WebKit::NetworkTransportStream::cancelSend): (WebKit::NetworkTransportStream::cancel): * Source/WebKit/NetworkProcess/webtransport/NetworkTransportStream.h: * Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportSessionCocoa.mm: (WebKit::NetworkTransportSession::initialize): (WebKit::NetworkTransportSession::setupDatagramConnection): (WebKit::NetworkTransportSession::sendDatagram): (WebKit::NetworkTransportSession::setupConnectionHandler): (WebKit::NetworkTransportSession::createStream): (WebKit::NetworkTransportSession::receiveDatagramLoop): (WebKit::NetworkTransportSession::terminate): * Source/WebKit/NetworkProcess/webtransport/cocoa/NetworkTransportStreamCocoa.mm: (WebKit::NetworkTransportStream::NetworkTransportStream): (WebKit::NetworkTransportStream::sendBytes): (WebKit::NetworkTransportStream::receiveLoop): (WebKit::NetworkTransportStream::setErrorCodeForStream): (WebKit::NetworkTransportStream::cancel): (WebKit::NetworkTransportStream::cancelReceive): (WebKit::NetworkTransportStream::cancelSend): * Source/WebKit/WebProcess/Network/WebTransportReceiveStreamSource.cpp: (WebKit::WebTransportReceiveStreamSource::receiveBytes): (WebKit::WebTransportReceiveStreamSource::doCancel): * Source/WebKit/WebProcess/Network/WebTransportReceiveStreamSource.h: * Source/WebKit/WebProcess/Network/WebTransportSendStreamSink.cpp: (WebKit::WebTransportSendStreamSink::write): (WebKit::WebTransportSendStreamSink::close): (WebKit::WebTransportSendStreamSink::error): (WebKit::WebTransportSendStreamSink::sendBytes): * Source/WebKit/WebProcess/Network/WebTransportSendStreamSink.h: * Source/WebKit/WebProcess/Network/WebTransportSession.cpp: (WebKit::WebTransportSession::receiveDatagram): (WebKit::WebTransportSession::receiveIncomingUnidirectionalStream): (WebKit::WebTransportSession::receiveBidirectionalStream): (WebKit::WebTransportSession::streamReceiveBytes): (WebKit::WebTransportSession::sendDatagram): (WebKit::WebTransportSession::streamSendBytes): (WebKit::WebTransportSession::cancelReceiveStream): (WebKit::WebTransportSession::cancelSendStream): (WebKit::WebTransportSession::destroyStream): * Source/WebKit/WebProcess/Network/WebTransportSession.h: * Source/WebKit/WebProcess/Network/WebTransportSession.messages.in: * Tools/TestWebKitAPI/Tests/WebKitCocoa/WebTransport.mm: (TestWebKitAPI::TEST(WebTransport, DISABLED_ClientBidirectional)): (TestWebKitAPI::TEST(WebTransport, DISABLED_Datagram)): (TestWebKitAPI::TEST(WebTransport, DISABLED_Unidirectional)): (TestWebKitAPI::TEST(WebTransport, DISABLED_ServerBidirectional)): Canonical link: https://commits.webkit.org/288498@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