Index: content/browser/renderer_host/pepper/pepper_tcp_socket.cc |
diff --git a/content/browser/renderer_host/pepper/pepper_tcp_socket.cc b/content/browser/renderer_host/pepper/pepper_tcp_socket.cc |
index 61ccdc2bafe5157b81294c6ad642c303292678b0..b49b1ac6f39c357d7ca869cf3447337db128a884 100644 |
--- a/content/browser/renderer_host/pepper/pepper_tcp_socket.cc |
+++ b/content/browser/renderer_host/pepper/pepper_tcp_socket.cc |
@@ -196,11 +196,32 @@ void PepperTCPSocket::Write(const std::string& data) { |
DoWrite(); |
} |
+void PepperTCPSocket::SetBoolFeature(uint32_t name, bool value) { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
+ DCHECK(socket_.get()); |
+ |
+ switch (static_cast<PP_TCPSocketFeature_Private>(name)) { |
+ case PP_TCPSOCKETFEATURE_NO_DELAY: |
yzshen1
2013/02/08 21:51:11
wrong indent.
Wez
2013/02/10 04:47:02
Done.
|
+ if (!IsSsl()) { |
+ SendSetBoolFeatureACK( |
+ static_cast<net::TCPClientSocket*>(socket_.get())->SetNoDelay(value)); |
+ } else { |
+ SendSetBoolFeatureACK(false); |
+ } |
+ return; |
+ default: |
+ break; |
+ } |
+ |
+ NOTREACHED(); |
+ SendSetBoolFeatureACK(false); |
+} |
+ |
void PepperTCPSocket::StartConnect(const net::AddressList& addresses) { |
DCHECK(connection_state_ == CONNECT_IN_PROGRESS); |
- socket_.reset( |
- new net::TCPClientSocket(addresses, NULL, net::NetLog::Source())); |
+ socket_.reset(new net::TCPClientSocket(addresses, NULL, |
+ net::NetLog::Source())); |
int result = socket_->Connect( |
base::Bind(&PepperTCPSocket::OnConnectCompleted, |
base::Unretained(this))); |
@@ -405,6 +426,12 @@ bool PepperTCPSocket::IsConnected() const { |
return connection_state_ == CONNECTED || connection_state_ == SSL_CONNECTED; |
} |
+bool PepperTCPSocket::IsSsl() const { |
+ return connection_state_ == SSL_HANDSHAKE_IN_PROGRESS || |
+ connection_state_ == SSL_CONNECTED || |
yzshen1
2013/02/08 21:51:11
wrong indent.
Wez
2013/02/10 04:47:02
Done.
|
+ connection_state_ == SSL_HANDSHAKE_FAILED; |
+} |
+ |
void PepperTCPSocket::DoWrite() { |
DCHECK(write_buffer_base_.get()); |
DCHECK(write_buffer_.get()); |