summaryrefslogtreecommitdiffstats
path: root/webkit
diff options
context:
space:
mode:
authorsergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-21 00:21:06 +0000
committersergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-21 00:21:06 +0000
commit00e39bfff43983a6b8e45842482b35e557f5bffd (patch)
treee5f7cd40af6f5d41a011b1530e2ae0c400e177b1 /webkit
parentc8a066de678599513b366931c56cee86b2190129 (diff)
downloadchromium_src-00e39bfff43983a6b8e45842482b35e557f5bffd.zip
chromium_src-00e39bfff43983a6b8e45842482b35e557f5bffd.tar.gz
chromium_src-00e39bfff43983a6b8e45842482b35e557f5bffd.tar.bz2
Add DISABLE_TCP_TRANSPORT flag in the Transport API.
The new property allows disabling TCP-based transport ports which improves performance for stream connections. BUG=41776 TEST=None Review URL: http://codereview.chromium.org/7888022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102060 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r--webkit/glue/p2p_transport.cc3
-rw-r--r--webkit/glue/p2p_transport.h5
-rw-r--r--webkit/plugins/ppapi/ppb_transport_impl.cc7
3 files changed, 14 insertions, 1 deletions
diff --git a/webkit/glue/p2p_transport.cc b/webkit/glue/p2p_transport.cc
index f79c21f..1dcb1d5 100644
--- a/webkit/glue/p2p_transport.cc
+++ b/webkit/glue/p2p_transport.cc
@@ -13,7 +13,8 @@ P2PTransport::Config::Config()
tcp_receive_window(0),
tcp_send_window(0),
tcp_no_delay(false),
- tcp_ack_delay_ms(0) {
+ tcp_ack_delay_ms(0),
+ disable_tcp_transport(false) {
}
P2PTransport::Config::~Config() {
diff --git a/webkit/glue/p2p_transport.h b/webkit/glue/p2p_transport.h
index 8e77d28..b60101a 100644
--- a/webkit/glue/p2p_transport.h
+++ b/webkit/glue/p2p_transport.h
@@ -8,6 +8,8 @@
#include <string>
#include <vector>
+#include "base/basictypes.h"
+
namespace net {
class Socket;
} // namespace net
@@ -79,6 +81,9 @@ class P2PTransport {
// TCP ACK delay.
int tcp_ack_delay_ms;
+
+ // Disable TCP-based transport when set to true.
+ bool disable_tcp_transport;
};
virtual ~P2PTransport() {}
diff --git a/webkit/plugins/ppapi/ppb_transport_impl.cc b/webkit/plugins/ppapi/ppb_transport_impl.cc
index 1fd89d8..efed706 100644
--- a/webkit/plugins/ppapi/ppb_transport_impl.cc
+++ b/webkit/plugins/ppapi/ppb_transport_impl.cc
@@ -223,6 +223,13 @@ int32_t PPB_Transport_Impl::SetProperty(PP_TransportProperty property,
break;
}
+ case PP_TRANSPORTPROPERTY_DISABLE_TCP_TRANSPORT: {
+ if (value.type != PP_VARTYPE_BOOL)
+ return PP_ERROR_BADARGUMENT;
+ config_.disable_tcp_transport = PP_ToBool(value.value.as_bool);
+ break;
+ }
+
default:
return PP_ERROR_BADARGUMENT;
}