Index: webrtc/api/datachannel.cc |
diff --git a/webrtc/api/datachannel.cc b/webrtc/api/datachannel.cc |
index 9812e9bb6a68cdddd50087329f0c49a82f9309e9..ad7cb571990be3649cddba387fb2f1dd62e77973 100644 |
--- a/webrtc/api/datachannel.cc |
+++ b/webrtc/api/datachannel.cc |
@@ -16,7 +16,7 @@ |
#include "webrtc/api/sctputils.h" |
#include "webrtc/base/logging.h" |
#include "webrtc/base/refcount.h" |
-#include "webrtc/media/sctp/sctpdataengine.h" |
+#include "webrtc/media/sctp/sctptransportinternal.h" |
namespace webrtc { |
@@ -328,12 +328,12 @@ void DataChannel::OnMessage(rtc::Message* msg) { |
} |
} |
-void DataChannel::OnDataReceived(cricket::DataChannel* channel, |
- const cricket::ReceiveDataParams& params, |
+void DataChannel::OnDataReceived(const cricket::ReceiveDataParams& params, |
const rtc::CopyOnWriteBuffer& payload) { |
- uint32_t expected_ssrc = |
- (data_channel_type_ == cricket::DCT_RTP) ? receive_ssrc_ : config_.id; |
- if (params.ssrc != expected_ssrc) { |
+ if (data_channel_type_ == cricket::DCT_RTP && params.ssrc != receive_ssrc_) { |
+ return; |
+ } |
+ if (data_channel_type_ == cricket::DCT_SCTP && params.sid != config_.id) { |
return; |
} |
@@ -342,17 +342,17 @@ void DataChannel::OnDataReceived(cricket::DataChannel* channel, |
if (handshake_state_ != kHandshakeWaitingForAck) { |
// Ignore it if we are not expecting an ACK message. |
LOG(LS_WARNING) << "DataChannel received unexpected CONTROL message, " |
- << "sid = " << params.ssrc; |
+ << "sid = " << params.sid; |
return; |
} |
if (ParseDataChannelOpenAckMessage(payload)) { |
// We can send unordered as soon as we receive the ACK message. |
handshake_state_ = kHandshakeReady; |
LOG(LS_INFO) << "DataChannel received OPEN_ACK message, sid = " |
- << params.ssrc; |
+ << params.sid; |
} else { |
LOG(LS_WARNING) << "DataChannel failed to parse OPEN_ACK message, sid = " |
- << params.ssrc; |
+ << params.sid; |
} |
return; |
} |
@@ -360,7 +360,7 @@ void DataChannel::OnDataReceived(cricket::DataChannel* channel, |
ASSERT(params.type == cricket::DMT_BINARY || |
params.type == cricket::DMT_TEXT); |
- LOG(LS_VERBOSE) << "DataChannel received DATA message, sid = " << params.ssrc; |
+ LOG(LS_VERBOSE) << "DataChannel received DATA message, sid = " << params.sid; |
// We can send unordered as soon as we receive any DATA message since the |
// remote side must have received the OPEN (and old clients do not send |
// OPEN_ACK). |
@@ -390,9 +390,8 @@ void DataChannel::OnDataReceived(cricket::DataChannel* channel, |
} |
} |
-void DataChannel::OnStreamClosedRemotely(uint32_t sid) { |
- if (data_channel_type_ == cricket::DCT_SCTP && |
- sid == static_cast<uint32_t>(config_.id)) { |
+void DataChannel::OnStreamClosedRemotely(int sid) { |
+ if (data_channel_type_ == cricket::DCT_SCTP && sid == config_.id) { |
Close(); |
} |
} |
@@ -551,7 +550,7 @@ bool DataChannel::SendDataMessage(const DataBuffer& buffer, |
send_params.max_rtx_count = config_.maxRetransmits; |
send_params.max_rtx_ms = config_.maxRetransmitTime; |
- send_params.ssrc = config_.id; |
+ send_params.sid = config_.id; |
} else { |
send_params.ssrc = send_ssrc_; |
} |
@@ -623,7 +622,7 @@ bool DataChannel::SendControlMessage(const rtc::CopyOnWriteBuffer& buffer) { |
(!is_open_message || !config_.negotiated)); |
cricket::SendDataParams send_params; |
- send_params.ssrc = config_.id; |
+ send_params.sid = config_.id; |
// Send data as ordered before we receive any message from the remote peer to |
// make sure the remote peer will not receive any data before it receives the |
// OPEN message. |