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

Issue 367963007: Preserve transport errors for OpenSSL sockets. (Closed)

Created:
6 years, 5 months ago by davidben
Modified:
6 years, 5 months ago
Reviewers:
wtc, Ryan Sleevi
CC:
chromium-reviews, cbentzel+watch_chromium.org
Project:
chromium
Visibility:
Public.

Description

Preserve transport errors for OpenSSL sockets. This makes the OpenSSL BIO pair behave like nss_memio with respect to errors, eliminating many discrepancies between the two backends in ssl_client_socket_unittest.cc. (While adding one as it exposes a difference in how OpenSSL and NSS behave internally.) This also makes our fallback behavior on TCP reset match; in NSS we take care to only fall back to TLS 1, but our OpenSSL code falls back all the way to SSL3. We save transport errors and install a BIO callback to return those errors through the OpenSSL error queue when OpenSSL's SSL implementation attempts to read or write to the transport BIO. BUG=372849, 341178 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=283013

Patch Set 1 #

Patch Set 2 : #

Total comments: 17

Patch Set 3 : sleevi comments; also fix last-minute bug introduced in patch set 2 (oops) #

Unified diffs Side-by-side diffs Delta from patch set Stats (+131 lines, -62 lines) Patch
M net/socket/ssl_client_socket_openssl.h View 1 2 2 chunks +20 lines, -1 line 0 comments Download
M net/socket/ssl_client_socket_openssl.cc View 1 2 8 chunks +62 lines, -28 lines 0 comments Download
M net/socket/ssl_client_socket_unittest.cc View 5 chunks +46 lines, -30 lines 0 comments Download
M net/url_request/url_request_unittest.cc View 2 chunks +3 lines, -3 lines 0 comments Download

Messages

Total messages: 9 (0 generated)
davidben
And the last piece of https://codereview.chromium.org/280853002/. Fallback stuff has been split out, and, now that ...
6 years, 5 months ago (2014-07-02 18:30:11 UTC) #1
Ryan Sleevi
wtc: Something odd, noted by David below, makes me wonder if we should change NSS ...
6 years, 5 months ago (2014-07-07 22:36:35 UTC) #2
davidben
https://codereview.chromium.org/367963007/diff/20001/net/socket/ssl_client_socket_openssl.cc File net/socket/ssl_client_socket_openssl.cc (right): https://codereview.chromium.org/367963007/diff/20001/net/socket/ssl_client_socket_openssl.cc#newcode664 net/socket/ssl_client_socket_openssl.cc:664: BIO_set_callback_arg(ssl_bio, reinterpret_cast<char*>(this)); On 2014/07/07 22:36:34, Ryan Sleevi wrote: > ...
6 years, 5 months ago (2014-07-08 00:03:35 UTC) #3
wtc
https://codereview.chromium.org/367963007/diff/20001/net/socket/ssl_client_socket_unittest.cc File net/socket/ssl_client_socket_unittest.cc (right): https://codereview.chromium.org/367963007/diff/20001/net/socket/ssl_client_socket_unittest.cc#newcode1764 net/socket/ssl_client_socket_unittest.cc:1764: // the write error stops future reads. On 2014/07/07 ...
6 years, 5 months ago (2014-07-09 15:55:27 UTC) #4
davidben
https://codereview.chromium.org/367963007/diff/20001/net/socket/ssl_client_socket_unittest.cc File net/socket/ssl_client_socket_unittest.cc (right): https://codereview.chromium.org/367963007/diff/20001/net/socket/ssl_client_socket_unittest.cc#newcode1764 net/socket/ssl_client_socket_unittest.cc:1764: // the write error stops future reads. On 2014/07/09 ...
6 years, 5 months ago (2014-07-09 16:00:08 UTC) #5
Ryan Sleevi
LGTM. I don't think we'll be using _FDX, as a (mostly) untested codepath with it's ...
6 years, 5 months ago (2014-07-14 18:10:32 UTC) #6
davidben
The CQ bit was checked by davidben@chromium.org
6 years, 5 months ago (2014-07-14 18:26:33 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidben@chromium.org/367963007/40001
6 years, 5 months ago (2014-07-14 18:27:03 UTC) #8
commit-bot: I haz the power
6 years, 5 months ago (2014-07-14 20:43:45 UTC) #9
Message was sent while issue was closed.
Change committed as 283013

Powered by Google App Engine
This is Rietveld 408576698