Index: jingle/notifier/base/fake_ssl_client_socket.cc |
diff --git a/jingle/notifier/base/fake_ssl_client_socket.cc b/jingle/notifier/base/fake_ssl_client_socket.cc |
index bdad879fde7b9918df49245c50642e200fa0d376..922bda48be4b9332358987a6755cb861671175d8 100644 |
--- a/jingle/notifier/base/fake_ssl_client_socket.cc |
+++ b/jingle/notifier/base/fake_ssl_client_socket.cc |
@@ -78,18 +78,9 @@ base::StringPiece FakeSSLClientSocket::GetSslServerHello() { |
FakeSSLClientSocket::FakeSSLClientSocket( |
net::StreamSocket* transport_socket) |
- : connect_callback_(ALLOW_THIS_IN_INITIALIZER_LIST(this), |
- &FakeSSLClientSocket::OnConnectDone), |
- send_client_hello_callback_( |
- ALLOW_THIS_IN_INITIALIZER_LIST(this), |
- &FakeSSLClientSocket::OnSendClientHelloDone), |
- verify_server_hello_callback_( |
- ALLOW_THIS_IN_INITIALIZER_LIST(this), |
- &FakeSSLClientSocket::OnVerifyServerHelloDone), |
- transport_socket_(transport_socket), |
+ : transport_socket_(transport_socket), |
next_handshake_state_(STATE_NONE), |
handshake_completed_(false), |
- old_user_connect_callback_(NULL), |
write_buf_(NewDrainableIOBufferWithSize(arraysize(kSslClientHello))), |
read_buf_(NewDrainableIOBufferWithSize(arraysize(kSslServerHello))) { |
CHECK(transport_socket_.get()); |
@@ -99,12 +90,6 @@ FakeSSLClientSocket::FakeSSLClientSocket( |
FakeSSLClientSocket::~FakeSSLClientSocket() {} |
int FakeSSLClientSocket::Read(net::IOBuffer* buf, int buf_len, |
- net::OldCompletionCallback* callback) { |
- DCHECK_EQ(next_handshake_state_, STATE_NONE); |
- DCHECK(handshake_completed_); |
- return transport_socket_->Read(buf, buf_len, callback); |
-} |
-int FakeSSLClientSocket::Read(net::IOBuffer* buf, int buf_len, |
const net::CompletionCallback& callback) { |
DCHECK_EQ(next_handshake_state_, STATE_NONE); |
DCHECK(handshake_completed_); |
@@ -112,7 +97,7 @@ int FakeSSLClientSocket::Read(net::IOBuffer* buf, int buf_len, |
} |
int FakeSSLClientSocket::Write(net::IOBuffer* buf, int buf_len, |
- net::OldCompletionCallback* callback) { |
+ const net::CompletionCallback& callback) { |
DCHECK_EQ(next_handshake_state_, STATE_NONE); |
DCHECK(handshake_completed_); |
return transport_socket_->Write(buf, buf_len, callback); |
@@ -126,23 +111,6 @@ bool FakeSSLClientSocket::SetSendBufferSize(int32 size) { |
return transport_socket_->SetSendBufferSize(size); |
} |
-int FakeSSLClientSocket::Connect(net::OldCompletionCallback* callback) { |
- // We don't support synchronous operation, even if |
- // |transport_socket_| does. |
- DCHECK(callback); |
- DCHECK_EQ(next_handshake_state_, STATE_NONE); |
- DCHECK(!handshake_completed_); |
- DCHECK(!old_user_connect_callback_); |
- DCHECK_EQ(write_buf_->BytesConsumed(), 0); |
- DCHECK_EQ(read_buf_->BytesConsumed(), 0); |
- |
- next_handshake_state_ = STATE_CONNECT; |
- int status = DoHandshakeLoop(); |
- if (status == net::ERR_IO_PENDING) { |
- old_user_connect_callback_ = callback; |
- } |
- return status; |
-} |
int FakeSSLClientSocket::Connect(const net::CompletionCallback& callback) { |
// We don't support synchronous operation, even if |
// |transport_socket_| does. |
@@ -190,16 +158,9 @@ int FakeSSLClientSocket::DoHandshakeLoop() { |
void FakeSSLClientSocket::RunUserConnectCallback(int status) { |
DCHECK_LE(status, net::OK); |
next_handshake_state_ = STATE_NONE; |
- if (old_user_connect_callback_) { |
- net::OldCompletionCallback* user_connect_callback = |
- old_user_connect_callback_; |
- old_user_connect_callback_ = NULL; |
- user_connect_callback->Run(status); |
- } else { |
- net::CompletionCallback user_connect_callback = user_connect_callback_; |
- user_connect_callback_.Reset(); |
- user_connect_callback.Run(status); |
- } |
+ net::CompletionCallback user_connect_callback = user_connect_callback_; |
+ user_connect_callback_.Reset(); |
+ user_connect_callback.Run(status); |
} |
void FakeSSLClientSocket::DoHandshakeLoopWithUserConnectCallback() { |
@@ -210,7 +171,8 @@ void FakeSSLClientSocket::DoHandshakeLoopWithUserConnectCallback() { |
} |
int FakeSSLClientSocket::DoConnect() { |
- int status = transport_socket_->Connect(&connect_callback_); |
+ int status = transport_socket_->Connect( |
+ base::Bind(&FakeSSLClientSocket::OnConnectDone, base::Unretained(this))); |
if (status != net::OK) { |
return status; |
} |
@@ -221,7 +183,7 @@ int FakeSSLClientSocket::DoConnect() { |
void FakeSSLClientSocket::OnConnectDone(int status) { |
DCHECK_NE(status, net::ERR_IO_PENDING); |
DCHECK_LE(status, net::OK); |
- DCHECK(old_user_connect_callback_ || !user_connect_callback_.is_null()); |
+ DCHECK(!user_connect_callback_.is_null()); |
if (status != net::OK) { |
RunUserConnectCallback(status); |
return; |
@@ -239,7 +201,8 @@ void FakeSSLClientSocket::ProcessConnectDone() { |
int FakeSSLClientSocket::DoSendClientHello() { |
int status = transport_socket_->Write( |
write_buf_, write_buf_->BytesRemaining(), |
- &send_client_hello_callback_); |
+ base::Bind(&FakeSSLClientSocket::OnSendClientHelloDone, |
+ base::Unretained(this))); |
if (status < net::OK) { |
return status; |
} |
@@ -249,7 +212,7 @@ int FakeSSLClientSocket::DoSendClientHello() { |
void FakeSSLClientSocket::OnSendClientHelloDone(int status) { |
DCHECK_NE(status, net::ERR_IO_PENDING); |
- DCHECK(old_user_connect_callback_ || !user_connect_callback_.is_null()); |
+ DCHECK(!user_connect_callback_.is_null()); |
if (status < net::OK) { |
RunUserConnectCallback(status); |
return; |
@@ -272,7 +235,8 @@ void FakeSSLClientSocket::ProcessSendClientHelloDone(size_t written) { |
int FakeSSLClientSocket::DoVerifyServerHello() { |
int status = transport_socket_->Read( |
read_buf_, read_buf_->BytesRemaining(), |
- &verify_server_hello_callback_); |
+ base::Bind(&FakeSSLClientSocket::OnVerifyServerHelloDone, |
+ base::Unretained(this))); |
if (status < net::OK) { |
return status; |
} |
@@ -282,7 +246,7 @@ int FakeSSLClientSocket::DoVerifyServerHello() { |
void FakeSSLClientSocket::OnVerifyServerHelloDone(int status) { |
DCHECK_NE(status, net::ERR_IO_PENDING); |
- DCHECK(old_user_connect_callback_ || !user_connect_callback_.is_null()); |
+ DCHECK(!user_connect_callback_.is_null()); |
if (status < net::OK) { |
RunUserConnectCallback(status); |
return; |
@@ -325,7 +289,6 @@ void FakeSSLClientSocket::Disconnect() { |
transport_socket_->Disconnect(); |
next_handshake_state_ = STATE_NONE; |
handshake_completed_ = false; |
- old_user_connect_callback_ = NULL; |
user_connect_callback_.Reset(); |
write_buf_->SetOffset(0); |
read_buf_->SetOffset(0); |