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

Unified Diff: net/socket/ssl_client_socket_win.cc

Issue 2870030: Implement SSLClientSocketPool. (Closed)
Patch Set: Rebase and fix mac compile error Created 10 years, 5 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: net/socket/ssl_client_socket_win.cc
diff --git a/net/socket/ssl_client_socket_win.cc b/net/socket/ssl_client_socket_win.cc
index a0da5f4933638f46ba5a7b6d8c27d8ae80e8e790..4d8d7135d8d41df93105c70f73148b00bc106560 100644
--- a/net/socket/ssl_client_socket_win.cc
+++ b/net/socket/ssl_client_socket_win.cc
@@ -18,6 +18,7 @@
#include "net/base/net_errors.h"
#include "net/base/ssl_cert_request_info.h"
#include "net/base/ssl_info.h"
+#include "net/socket/client_socket_handle.h"
#pragma comment(lib, "secur32.lib")
@@ -292,7 +293,7 @@ class ClientCertStore {
// 64: >= SSL record trailer (16 or 20 have been observed)
static const int kRecvBufferSize = (5 + 16*1024 + 64);
-SSLClientSocketWin::SSLClientSocketWin(ClientSocket* transport_socket,
+SSLClientSocketWin::SSLClientSocketWin(ClientSocketHandle* transport_socket,
const std::string& hostname,
const SSLConfig& ssl_config)
: ALLOW_THIS_IN_INITIALIZER_LIST(
@@ -323,7 +324,7 @@ SSLClientSocketWin::SSLClientSocketWin(ClientSocket* transport_socket,
ignore_ok_result_(false),
renegotiating_(false),
need_more_data_(false),
- net_log_(transport_socket->NetLog()) {
+ net_log_(transport_socket->socket()->NetLog()) {
memset(&stream_sizes_, 0, sizeof(stream_sizes_));
memset(in_buffers_, 0, sizeof(in_buffers_));
memset(&send_buffer_, 0, sizeof(send_buffer_));
@@ -523,7 +524,7 @@ void SSLClientSocketWin::Disconnect() {
// Shut down anything that may call us back.
verifier_.reset();
- transport_->Disconnect();
+ transport_->socket()->Disconnect();
if (send_buffer_.pvBuffer)
FreeSendBuffer();
@@ -549,7 +550,7 @@ bool SSLClientSocketWin::IsConnected() const {
// layer (HttpNetworkTransaction) needs to handle a persistent connection
// closed by the server when we send a request anyway, a false positive in
// exchange for simpler code is a good trade-off.
- return completed_handshake() && transport_->IsConnected();
+ return completed_handshake() && transport_->socket()->IsConnected();
}
bool SSLClientSocketWin::IsConnectedAndIdle() const {
@@ -558,13 +559,14 @@ bool SSLClientSocketWin::IsConnectedAndIdle() const {
// Strictly speaking, we should check if we have received the close_notify
// alert message from the server, and return false in that case. Although
// the close_notify alert message means EOF in the SSL layer, it is just
- // bytes to the transport layer below, so transport_->IsConnectedAndIdle()
- // returns the desired false when we receive close_notify.
- return completed_handshake() && transport_->IsConnectedAndIdle();
+ // bytes to the transport layer below, so
+ // transport_->socket()->IsConnectedAndIdle() returns the desired false
+ // when we receive close_notify.
+ return completed_handshake() && transport_->socket()->IsConnectedAndIdle();
}
int SSLClientSocketWin::GetPeerAddress(AddressList* address) const {
- return transport_->GetPeerAddress(address);
+ return transport_->socket()->GetPeerAddress(address);
}
int SSLClientSocketWin::Read(IOBuffer* buf, int buf_len,
@@ -631,11 +633,11 @@ int SSLClientSocketWin::Write(IOBuffer* buf, int buf_len,
}
bool SSLClientSocketWin::SetReceiveBufferSize(int32 size) {
- return transport_->SetReceiveBufferSize(size);
+ return transport_->socket()->SetReceiveBufferSize(size);
}
bool SSLClientSocketWin::SetSendBufferSize(int32 size) {
- return transport_->SetSendBufferSize(size);
+ return transport_->socket()->SetSendBufferSize(size);
}
void SSLClientSocketWin::OnHandshakeIOComplete(int result) {
@@ -750,8 +752,8 @@ int SSLClientSocketWin::DoHandshakeRead() {
DCHECK(!transport_read_buf_);
transport_read_buf_ = new IOBuffer(buf_len);
- return transport_->Read(transport_read_buf_, buf_len,
- &handshake_io_callback_);
+ return transport_->socket()->Read(transport_read_buf_, buf_len,
+ &handshake_io_callback_);
}
int SSLClientSocketWin::DoHandshakeReadComplete(int result) {
@@ -917,8 +919,8 @@ int SSLClientSocketWin::DoHandshakeWrite() {
transport_write_buf_ = new IOBuffer(buf_len);
memcpy(transport_write_buf_->data(), buf, buf_len);
- return transport_->Write(transport_write_buf_, buf_len,
- &handshake_io_callback_);
+ return transport_->socket()->Write(transport_write_buf_, buf_len,
+ &handshake_io_callback_);
}
int SSLClientSocketWin::DoHandshakeWriteComplete(int result) {
@@ -1012,7 +1014,8 @@ int SSLClientSocketWin::DoPayloadRead() {
DCHECK(!transport_read_buf_);
transport_read_buf_ = new IOBuffer(buf_len);
- rv = transport_->Read(transport_read_buf_, buf_len, &read_callback_);
+ rv = transport_->socket()->Read(transport_read_buf_, buf_len,
+ &read_callback_);
if (rv != ERR_IO_PENDING)
rv = DoPayloadReadComplete(rv);
if (rv <= 0)
@@ -1247,7 +1250,8 @@ int SSLClientSocketWin::DoPayloadWrite() {
transport_write_buf_ = new IOBuffer(buf_len);
memcpy(transport_write_buf_->data(), buf, buf_len);
- int rv = transport_->Write(transport_write_buf_, buf_len, &write_callback_);
+ int rv = transport_->socket()->Write(transport_write_buf_, buf_len,
+ &write_callback_);
if (rv != ERR_IO_PENDING)
rv = DoPayloadWriteComplete(rv);
return rv;

Powered by Google App Engine
This is Rietveld 408576698