| Index: net/socket/ssl_client_socket_nss.cc
|
| diff --git a/net/socket/ssl_client_socket_nss.cc b/net/socket/ssl_client_socket_nss.cc
|
| index dd3b13a16905338f08c50ec2005fa15f27bac941..5f5885ede8a9573f7c2158c1188bba98eba4f472 100644
|
| --- a/net/socket/ssl_client_socket_nss.cc
|
| +++ b/net/socket/ssl_client_socket_nss.cc
|
| @@ -1171,8 +1171,8 @@ int SSLClientSocketNSS::Core::Connect(const CompletionCallback& callback) {
|
| DCHECK(user_read_callback_.is_null());
|
| DCHECK(user_write_callback_.is_null());
|
| DCHECK(user_connect_callback_.is_null());
|
| - DCHECK(!user_read_buf_);
|
| - DCHECK(!user_write_buf_);
|
| + DCHECK(!user_read_buf_.get());
|
| + DCHECK(!user_write_buf_.get());
|
|
|
| next_handshake_state_ = STATE_HANDSHAKE;
|
| int rv = DoHandshakeLoop(OK);
|
| @@ -1224,7 +1224,7 @@ int SSLClientSocketNSS::Core::Read(IOBuffer* buf, int buf_len,
|
| DCHECK_EQ(STATE_NONE, next_handshake_state_);
|
| DCHECK(user_read_callback_.is_null());
|
| DCHECK(user_connect_callback_.is_null());
|
| - DCHECK(!user_read_buf_);
|
| + DCHECK(!user_read_buf_.get());
|
| DCHECK(nss_bufs_);
|
|
|
| user_read_buf_ = buf;
|
| @@ -1266,7 +1266,7 @@ int SSLClientSocketNSS::Core::Write(IOBuffer* buf, int buf_len,
|
| DCHECK_EQ(STATE_NONE, next_handshake_state_);
|
| DCHECK(user_write_callback_.is_null());
|
| DCHECK(user_connect_callback_.is_null());
|
| - DCHECK(!user_write_buf_);
|
| + DCHECK(!user_write_buf_.get());
|
| DCHECK(nss_bufs_);
|
|
|
| user_write_buf_ = buf;
|
| @@ -1678,7 +1678,7 @@ SECStatus SSLClientSocketNSS::Core::ClientAuthHandler(
|
|
|
| // Second pass: a client certificate should have been selected.
|
| if (core->ssl_config_.send_client_cert) {
|
| - if (core->ssl_config_.client_cert) {
|
| + if (core->ssl_config_.client_cert.get()) {
|
| CERTCertificate* cert = CERT_DupCertificate(
|
| core->ssl_config_.client_cert->os_cert_handle());
|
| SECKEYPrivateKey* privkey = PK11_FindKeyByAnyCert(cert, wincx);
|
| @@ -2203,7 +2203,7 @@ int SSLClientSocketNSS::Core::BufferRecv() {
|
| } else {
|
| scoped_refptr<IOBuffer> read_buffer(new IOBuffer(nb));
|
| if (OnNetworkTaskRunner()) {
|
| - rv = DoBufferRecv(read_buffer, nb);
|
| + rv = DoBufferRecv(read_buffer.get(), nb);
|
| } else {
|
| bool posted = network_task_runner_->PostTask(
|
| FROM_HERE,
|
| @@ -2248,7 +2248,7 @@ int SSLClientSocketNSS::Core::BufferSend() {
|
| memcpy(send_buffer->data() + len1, buf2, len2);
|
|
|
| if (OnNetworkTaskRunner()) {
|
| - rv = DoBufferSend(send_buffer, len);
|
| + rv = DoBufferSend(send_buffer.get(), len);
|
| } else {
|
| bool posted = network_task_runner_->PostTask(
|
| FROM_HERE,
|
| @@ -2277,7 +2277,7 @@ void SSLClientSocketNSS::Core::OnRecvComplete(int result) {
|
|
|
| // Network layer received some data, check if client requested to read
|
| // decrypted data.
|
| - if (!user_read_buf_)
|
| + if (!user_read_buf_.get())
|
| return;
|
|
|
| int rv = DoReadLoop(result);
|
| @@ -2299,20 +2299,20 @@ void SSLClientSocketNSS::Core::OnSendComplete(int result) {
|
| int rv_write = ERR_IO_PENDING;
|
| bool network_moved;
|
| do {
|
| - if (user_read_buf_)
|
| - rv_read = DoPayloadRead();
|
| - if (user_write_buf_)
|
| - rv_write = DoPayloadWrite();
|
| + if (user_read_buf_.get())
|
| + rv_read = DoPayloadRead();
|
| + if (user_write_buf_.get())
|
| + rv_write = DoPayloadWrite();
|
| network_moved = DoTransportIO();
|
| } while (rv_read == ERR_IO_PENDING &&
|
| rv_write == ERR_IO_PENDING &&
|
| - (user_read_buf_ || user_write_buf_) &&
|
| + (user_read_buf_.get() || user_write_buf_.get()) &&
|
| network_moved);
|
|
|
| - if (user_read_buf_ && rv_read != ERR_IO_PENDING)
|
| - DoReadCallback(rv_read);
|
| - if (user_write_buf_ && rv_write != ERR_IO_PENDING)
|
| - DoWriteCallback(rv_write);
|
| + if (user_read_buf_.get() && rv_read != ERR_IO_PENDING)
|
| + DoReadCallback(rv_read);
|
| + if (user_write_buf_.get() && rv_write != ERR_IO_PENDING)
|
| + DoWriteCallback(rv_write);
|
| }
|
|
|
| // As part of Connect(), the SSLClientSocketNSS object performs an SSL
|
| @@ -2460,7 +2460,7 @@ void SSLClientSocketNSS::Core::UpdateServerCert() {
|
| nss_handshake_state_.server_cert_chain.Reset(nss_fd_);
|
| nss_handshake_state_.server_cert = X509Certificate::CreateFromDERCertChain(
|
| nss_handshake_state_.server_cert_chain.AsStringPieceVector());
|
| - if (nss_handshake_state_.server_cert) {
|
| + if (nss_handshake_state_.server_cert.get()) {
|
| // Since this will be called asynchronously on another thread, it needs to
|
| // own a reference to the certificate.
|
| NetLog::ParametersCallback net_log_callback =
|
| @@ -2815,7 +2815,7 @@ bool SSLClientSocketNSS::GetSSLInfo(SSLInfo* ssl_info) {
|
| ssl_info->is_issued_by_known_root =
|
| server_cert_verify_result_.is_issued_by_known_root;
|
| ssl_info->client_cert_sent =
|
| - ssl_config_.send_client_cert && ssl_config_.client_cert;
|
| + ssl_config_.send_client_cert && ssl_config_.client_cert.get();
|
| ssl_info->channel_id_sent = WasChannelIDSent();
|
|
|
| PRUint16 cipher_suite = SSLConnectionStatusToCipherSuite(
|
| @@ -3095,9 +3095,11 @@ int SSLClientSocketNSS::Init() {
|
| }
|
|
|
| void SSLClientSocketNSS::InitCore() {
|
| - core_ = new Core(base::ThreadTaskRunnerHandle::Get(), nss_task_runner_,
|
| - transport_.get(), host_and_port_, ssl_config_, &net_log_,
|
| - server_bound_cert_service_);
|
| + core_ =
|
| + new Core(
|
| + base::ThreadTaskRunnerHandle::Get().get(), nss_task_runner_.get(),
|
| + transport_.get(), host_and_port_, ssl_config_, &net_log_,
|
| + server_bound_cert_service_);
|
| }
|
|
|
| int SSLClientSocketNSS::InitializeSSLOptions() {
|
| @@ -3402,7 +3404,7 @@ int SSLClientSocketNSS::DoVerifyCert(int result) {
|
|
|
| // We may have failed to create X509Certificate object if we are
|
| // running inside sandbox.
|
| - if (!core_->state().server_cert) {
|
| + if (!core_->state().server_cert.get()) {
|
| server_cert_verify_result_.Reset();
|
| server_cert_verify_result_.cert_status = CERT_STATUS_INVALID;
|
| return ERR_CERT_INVALID;
|
| @@ -3419,8 +3421,8 @@ int SSLClientSocketNSS::DoVerifyCert(int result) {
|
| flags |= CertVerifier::VERIFY_CERT_IO_ENABLED;
|
| verifier_.reset(new SingleRequestCertVerifier(cert_verifier_));
|
| return verifier_->Verify(
|
| - core_->state().server_cert, host_and_port_.host(), flags,
|
| - SSLConfigService::GetCRLSet(), &server_cert_verify_result_,
|
| + core_->state().server_cert.get(), host_and_port_.host(), flags,
|
| + SSLConfigService::GetCRLSet().get(), &server_cert_verify_result_,
|
| base::Bind(&SSLClientSocketNSS::OnHandshakeIOComplete,
|
| base::Unretained(this)),
|
| net_log_);
|
|
|