Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(825)

Unified Diff: content/browser/renderer_host/p2p/socket_host_tcp.cc

Issue 159353002: This CL adds methods to manipulate RTP header extension, particularly (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);
« no previous file with comments | « content/browser/renderer_host/p2p/socket_host_tcp.h ('k') | content/browser/renderer_host/p2p/socket_host_udp.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698