Skip to content
This repository was archived by the owner on Oct 23, 2024. It is now read-only.

Commit e686e40

Browse files
authored
Ack content session ID for signaling stream. (#868)
* Ack content session ID for signaling stream. It helps client to know when authentication for QUIC connection is finished. * Update doc to QUIC authentication messages. Since the receive side acks the same content session ID to sender, and the content session ID for signaling stream is 0, signaling stream should ack 0s to client.
1 parent 4f999f6 commit e686e40

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

doc/design/quic-transport-payload-format.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,4 @@ After creating a WebTransport, a stream with session 0 should be created for aut
4141

4242
## Authentication
4343

44-
If signaling messages are transmitted over WebTransport, authentication follows the regular process defined by [Client-Portal Protocol](https://github.com/open-webrtc-toolkit/owt-server/blob/master/doc/Client-Portal%20Protocol.md). Otherwise, client sends a token for WebTransport as a signaling message. WebTransport token is issued during joining a conference. If token is valid, server sends a 128 bit length transport ID to client. The transport ID should be same as the one included in token.
44+
If signaling messages are transmitted over WebTransport, authentication follows the regular process defined by [Client-Portal Protocol](https://github.com/open-webrtc-toolkit/owt-server/blob/master/doc/Client-Portal%20Protocol.md). Otherwise, client sends a token for WebTransport as a signaling message. WebTransport token is issued during joining a conference. If the token is valid, server sends a 128 bit length zeros to client.

source/agent/quic/webtransport/quicTransportServer.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,8 @@ module.exports = class QuicTransportServer extends EventEmitter {
126126
stream.transportId = token.transportId;
127127
this._connections.set(connection.transportId, connection);
128128
this.emit('connectionadded', connection);
129+
const uuidBytes = this._uuidStringToUint8Array(zeroUuid);
130+
stream.write(uuidBytes, uuidBytes.length);
129131
});
130132
return;
131133
} else { // Store the data.

0 commit comments

Comments
 (0)