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

Unified Diff: net/socket/ssl_server_socket_nss.cc

Issue 8824006: Migrate net/socket/socket.h, net/socket/stream_socket.h to base::Bind(). (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebased Created 9 years 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
« no previous file with comments | « net/socket/ssl_server_socket_nss.h ('k') | net/socket/ssl_server_socket_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/socket/ssl_server_socket_nss.cc
diff --git a/net/socket/ssl_server_socket_nss.cc b/net/socket/ssl_server_socket_nss.cc
index 0785dd7df2ceb5b88d2397d823ef3a113fad2119..5b57492a278f2d19ad31c000f9af9e4878879077 100644
--- a/net/socket/ssl_server_socket_nss.cc
+++ b/net/socket/ssl_server_socket_nss.cc
@@ -58,15 +58,8 @@ SSLServerSocketNSS::SSLServerSocketNSS(
scoped_refptr<X509Certificate> cert,
crypto::RSAPrivateKey* key,
const SSLConfig& ssl_config)
- : ALLOW_THIS_IN_INITIALIZER_LIST(buffer_send_callback_(
- this, &SSLServerSocketNSS::BufferSendComplete)),
- ALLOW_THIS_IN_INITIALIZER_LIST(buffer_recv_callback_(
- this, &SSLServerSocketNSS::BufferRecvComplete)),
- transport_send_busy_(false),
+ : transport_send_busy_(false),
transport_recv_busy_(false),
- user_handshake_callback_(NULL),
- old_user_read_callback_(NULL),
- user_write_callback_(NULL),
nss_fd_(NULL),
nss_bufs_(NULL),
transport_socket_(transport_socket),
@@ -143,40 +136,14 @@ int SSLServerSocketNSS::ExportKeyingMaterial(const base::StringPiece& label,
return OK;
}
-int SSLServerSocketNSS::Connect(OldCompletionCallback* callback) {
- NOTIMPLEMENTED();
- return ERR_NOT_IMPLEMENTED;
-}
int SSLServerSocketNSS::Connect(const CompletionCallback& callback) {
NOTIMPLEMENTED();
return ERR_NOT_IMPLEMENTED;
}
int SSLServerSocketNSS::Read(IOBuffer* buf, int buf_len,
- OldCompletionCallback* callback) {
- DCHECK(!old_user_read_callback_ && user_read_callback_.is_null());
- DCHECK(!user_handshake_callback_);
- DCHECK(!user_read_buf_);
- DCHECK(nss_bufs_);
-
- user_read_buf_ = buf;
- user_read_buf_len_ = buf_len;
-
- DCHECK(completed_handshake_);
-
- int rv = DoReadLoop(OK);
-
- if (rv == ERR_IO_PENDING) {
- old_user_read_callback_ = callback;
- } else {
- user_read_buf_ = NULL;
- user_read_buf_len_ = 0;
- }
- return rv;
-}
-int SSLServerSocketNSS::Read(IOBuffer* buf, int buf_len,
const CompletionCallback& callback) {
- DCHECK(!old_user_read_callback_ && user_read_callback_.is_null());
+ DCHECK(user_read_callback_.is_null());
DCHECK(!user_handshake_callback_);
DCHECK(!user_read_buf_);
DCHECK(nss_bufs_);
@@ -198,8 +165,8 @@ int SSLServerSocketNSS::Read(IOBuffer* buf, int buf_len,
}
int SSLServerSocketNSS::Write(IOBuffer* buf, int buf_len,
- OldCompletionCallback* callback) {
- DCHECK(!user_write_callback_);
+ const CompletionCallback& callback) {
+ DCHECK(user_write_callback_.is_null());
DCHECK(!user_write_buf_);
DCHECK(nss_bufs_);
@@ -521,8 +488,10 @@ int SSLServerSocketNSS::BufferSend(void) {
scoped_refptr<IOBuffer> send_buffer(new IOBuffer(len));
memcpy(send_buffer->data(), buf1, len1);
memcpy(send_buffer->data() + len1, buf2, len2);
- rv = transport_socket_->Write(send_buffer, len,
- &buffer_send_callback_);
+ rv = transport_socket_->Write(
+ send_buffer, len,
+ base::Bind(&SSLServerSocketNSS::BufferSendComplete,
+ base::Unretained(this)));
if (rv == ERR_IO_PENDING) {
transport_send_busy_ = true;
} else {
@@ -550,7 +519,10 @@ int SSLServerSocketNSS::BufferRecv(void) {
rv = ERR_IO_PENDING;
} else {
recv_buffer_ = new IOBuffer(nb);
- rv = transport_socket_->Read(recv_buffer_, nb, &buffer_recv_callback_);
+ rv = transport_socket_->Read(
+ recv_buffer_, nb,
+ base::Bind(&SSLServerSocketNSS::BufferRecvComplete,
+ base::Unretained(this)));
if (rv == ERR_IO_PENDING) {
transport_recv_busy_ = true;
} else {
@@ -739,36 +711,28 @@ void SSLServerSocketNSS::DoHandshakeCallback(int rv) {
void SSLServerSocketNSS::DoReadCallback(int rv) {
DCHECK(rv != ERR_IO_PENDING);
- DCHECK(old_user_read_callback_ || !user_read_callback_.is_null());
+ DCHECK(!user_read_callback_.is_null());
// Since Run may result in Read being called, clear |user_read_callback_|
// up front.
- if (old_user_read_callback_) {
- OldCompletionCallback* c = old_user_read_callback_;
- old_user_read_callback_ = NULL;
- user_read_buf_ = NULL;
- user_read_buf_len_ = 0;
- c->Run(rv);
- } else {
- CompletionCallback c = user_read_callback_;
- user_read_callback_.Reset();
- user_read_buf_ = NULL;
- user_read_buf_len_ = 0;
- c.Run(rv);
- }
+ CompletionCallback c = user_read_callback_;
+ user_read_callback_.Reset();
+ user_read_buf_ = NULL;
+ user_read_buf_len_ = 0;
+ c.Run(rv);
}
void SSLServerSocketNSS::DoWriteCallback(int rv) {
DCHECK(rv != ERR_IO_PENDING);
- DCHECK(user_write_callback_);
+ DCHECK(!user_write_callback_.is_null());
// Since Run may result in Write being called, clear |user_write_callback_|
// up front.
- OldCompletionCallback* c = user_write_callback_;
- user_write_callback_ = NULL;
+ CompletionCallback c = user_write_callback_;
+ user_write_callback_.Reset();
user_write_buf_ = NULL;
user_write_buf_len_ = 0;
- c->Run(rv);
+ c.Run(rv);
}
// static
« no previous file with comments | « net/socket/ssl_server_socket_nss.h ('k') | net/socket/ssl_server_socket_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698