Index: content/browser/renderer_host/p2p/socket_host_tcp.cc |
diff --git a/content/browser/renderer_host/p2p/socket_host_tcp.cc b/content/browser/renderer_host/p2p/socket_host_tcp.cc |
index 00f2e87648c5974b795b45a98fa41c6522cc4858..9b4acb7462e66e7ce644791996c51bbd321c70be 100644 |
--- a/content/browser/renderer_host/p2p/socket_host_tcp.cc |
+++ b/content/browser/renderer_host/p2p/socket_host_tcp.cc |
@@ -18,6 +18,7 @@ |
#include "net/socket/tcp_client_socket.h" |
#include "net/url_request/url_request_context.h" |
#include "net/url_request/url_request_context_getter.h" |
+#include "third_party/libjingle/source/talk/base/asyncpacketsocket.h" |
namespace { |
@@ -318,7 +319,7 @@ void P2PSocketHostTcpBase::Send(const net::IPEndPoint& to, |
} |
} |
- DoSend(to, data); |
+ DoSend(to, data, options); |
} |
void P2PSocketHostTcpBase::WriteOrQueue( |
@@ -450,13 +451,17 @@ int P2PSocketHostTcp::ProcessInput(char* input, int input_len) { |
} |
void P2PSocketHostTcp::DoSend(const net::IPEndPoint& to, |
- const std::vector<char>& data) { |
+ const std::vector<char>& data, |
+ const talk_base::PacketOptions& options) { |
int size = kPacketHeaderSize + data.size(); |
scoped_refptr<net::DrainableIOBuffer> buffer = |
new net::DrainableIOBuffer(new net::IOBuffer(size), size); |
*reinterpret_cast<uint16*>(buffer->data()) = base::HostToNet16(data.size()); |
memcpy(buffer->data() + kPacketHeaderSize, &data[0], data.size()); |
+ packet_processing_helpers::ApplyPacketOptions( |
+ buffer->data(), buffer->BytesRemaining(), options, 0); |
+ |
WriteOrQueue(buffer); |
} |
@@ -495,7 +500,8 @@ int P2PSocketHostStunTcp::ProcessInput(char* input, int input_len) { |
} |
void P2PSocketHostStunTcp::DoSend(const net::IPEndPoint& to, |
- const std::vector<char>& data) { |
+ const std::vector<char>& data, |
+ const talk_base::PacketOptions& options) { |
// Each packet is expected to have header (STUN/TURN ChannelData), where |
// header contains message type and and length of message. |
if (data.size() < kPacketHeaderSize + kPacketLengthOffset) { |
@@ -522,6 +528,9 @@ void P2PSocketHostStunTcp::DoSend(const net::IPEndPoint& to, |
new net::DrainableIOBuffer(new net::IOBuffer(size), size); |
memcpy(buffer->data(), &data[0], data.size()); |
+ packet_processing_helpers::ApplyPacketOptions( |
+ buffer->data(), data.size(), options, 0); |
+ |
if (pad_bytes) { |
char padding[4] = {0}; |
DCHECK_LE(pad_bytes, 4); |