Modify PeerConnection for end-to-end QuicDataChannel usage
To allow end-to-end QuicDataChannel usage with a PeerConnection, RTCConfiguration has been modified to include a boolean for whether to do QUIC, since negotiation of QUIC is not implemented. If one peer does QUIC, then it will be assumed that the other peer must do QUIC or the connection will fail. PeerConnection has been modified to create data channels of type QuicDataChannel when the peer wants to do QUIC. WebRtcSession has been modified to use a QuicTransportChannel instead of a DtlsTransportChannelWrapper/DataChannel when QUIC should be used. Modification of previous in-flight CL: https://codereview.chromium.org/1844803002/ Review-Url: https://codereview.webrtc.org/2089553002 Cr-Commit-Position: refs/heads/master@{#13470}
This commit is contained in:
@ -64,7 +64,9 @@ class FakeObserver : public DataChannelObserver {
|
||||
class QuicDataTransportPeer {
|
||||
public:
|
||||
QuicDataTransportPeer()
|
||||
: quic_data_transport_(rtc::Thread::Current(), rtc::Thread::Current()),
|
||||
: quic_data_transport_(rtc::Thread::Current(),
|
||||
rtc::Thread::Current(),
|
||||
rtc::Thread::Current()),
|
||||
ice_transport_channel_(new FakeTransportChannel("data", 0)),
|
||||
quic_transport_channel_(ice_transport_channel_) {
|
||||
ice_transport_channel_->SetAsync(true);
|
||||
@ -80,8 +82,6 @@ class QuicDataTransportPeer {
|
||||
|
||||
// Connects |ice_transport_channel_| to that of the other peer.
|
||||
void Connect(QuicDataTransportPeer* other_peer) {
|
||||
ice_transport_channel_->Connect();
|
||||
other_peer->ice_transport_channel_->Connect();
|
||||
ice_transport_channel_->SetDestination(other_peer->ice_transport_channel_);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user