OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // OpenSSL binding for SSLClientSocket. The class layout and general principle | 5 // OpenSSL binding for SSLClientSocket. The class layout and general principle |
6 // of operation is derived from SSLClientSocketNSS. | 6 // of operation is derived from SSLClientSocketNSS. |
7 | 7 |
8 #include "net/socket/ssl_client_socket_openssl.h" | 8 #include "net/socket/ssl_client_socket_openssl.h" |
9 | 9 |
10 #include <openssl/ssl.h> | 10 #include <openssl/ssl.h> |
(...skipping 1159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1170 | 1170 |
1171 int SSLClientSocketOpenSSL::DoPayloadRead() { | 1171 int SSLClientSocketOpenSSL::DoPayloadRead() { |
1172 crypto::OpenSSLErrStackTracer err_tracer(FROM_HERE); | 1172 crypto::OpenSSLErrStackTracer err_tracer(FROM_HERE); |
1173 int rv = SSL_read(ssl_, user_read_buf_->data(), user_read_buf_len_); | 1173 int rv = SSL_read(ssl_, user_read_buf_->data(), user_read_buf_len_); |
1174 // We don't need to invalidate the non-client-authenticated SSL session | 1174 // We don't need to invalidate the non-client-authenticated SSL session |
1175 // because the server will renegotiate anyway. | 1175 // because the server will renegotiate anyway. |
1176 if (client_auth_cert_needed_) | 1176 if (client_auth_cert_needed_) |
1177 return ERR_SSL_CLIENT_AUTH_CERT_NEEDED; | 1177 return ERR_SSL_CLIENT_AUTH_CERT_NEEDED; |
1178 | 1178 |
1179 if (rv >= 0) { | 1179 if (rv >= 0) { |
1180 LogByteTransfer(net_log_, NetLog::TYPE_SSL_SOCKET_BYTES_RECEIVED, rv, | 1180 net_log_.AddByteTransferEvent(NetLog::TYPE_SSL_SOCKET_BYTES_RECEIVED, rv, |
1181 user_read_buf_->data()); | 1181 user_read_buf_->data()); |
1182 return rv; | 1182 return rv; |
1183 } | 1183 } |
1184 | 1184 |
1185 int err = SSL_get_error(ssl_, rv); | 1185 int err = SSL_get_error(ssl_, rv); |
1186 return MapOpenSSLError(err, err_tracer); | 1186 return MapOpenSSLError(err, err_tracer); |
1187 } | 1187 } |
1188 | 1188 |
1189 int SSLClientSocketOpenSSL::DoPayloadWrite() { | 1189 int SSLClientSocketOpenSSL::DoPayloadWrite() { |
1190 crypto::OpenSSLErrStackTracer err_tracer(FROM_HERE); | 1190 crypto::OpenSSLErrStackTracer err_tracer(FROM_HERE); |
1191 int rv = SSL_write(ssl_, user_write_buf_->data(), user_write_buf_len_); | 1191 int rv = SSL_write(ssl_, user_write_buf_->data(), user_write_buf_len_); |
1192 | 1192 |
1193 if (rv >= 0) { | 1193 if (rv >= 0) { |
1194 LogByteTransfer(net_log_, NetLog::TYPE_SSL_SOCKET_BYTES_SENT, rv, | 1194 net_log_.AddByteTransferEvent(NetLog::TYPE_SSL_SOCKET_BYTES_SENT, rv, |
1195 user_write_buf_->data()); | 1195 user_write_buf_->data()); |
1196 return rv; | 1196 return rv; |
1197 } | 1197 } |
1198 | 1198 |
1199 int err = SSL_get_error(ssl_, rv); | 1199 int err = SSL_get_error(ssl_, rv); |
1200 return MapOpenSSLError(err, err_tracer); | 1200 return MapOpenSSLError(err, err_tracer); |
1201 } | 1201 } |
1202 | 1202 |
1203 } // namespace net | 1203 } // namespace net |
OLD | NEW |