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

Issue 2067843003: Require a CTVerifier and CTPolicyEnforcer for TLS/QUIC sockets (Closed)

Created:
4 years, 6 months ago by Ryan Sleevi
Modified:
4 years, 6 months ago
CC:
cbentzel+watch_chromium.org, certificate-transparency-chrome_googlegroups.com, chromium-reviews, Eran Messeri, nasko
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Require a CTVerifier and CTPolicyEnforcer for TLS/QUIC sockets In order to determine the trustworthiness of the connection, it's necessary for sockets to consider policies regarding CT - both what logs to trust and what policies to enforce. As this is critical to security, make CTVerifier* and CTPolicyEnforcer* necessary, rather than optional, for sockets. For normal URLRequestContexts, this should be a no-op, while for those created via the URLReqestContextBuilder, sane defaults will be provided. BUG=620179 Committed: https://crrev.com/d6de830088694ffab3218b77fa070084e88160ac Cr-Commit-Position: refs/heads/master@{#400870}

Patch Set 1 #

Total comments: 1

Patch Set 2 : Rebased #

Patch Set 3 : URLRequestContextBuilder? I wish #

Patch Set 4 : How many times #

Patch Set 5 : Fixup extensions #

Patch Set 6 : Fix incognito #

Patch Set 7 : Fix jingle #

Patch Set 8 : more fixes #

Patch Set 9 : Remoting #

Patch Set 10 : Extensions #

Total comments: 9

Patch Set 11 : Review feedback #

Total comments: 1

Patch Set 12 : Feedback #

Total comments: 2

Patch Set 13 : Rebased #

Patch Set 14 : Bad rebase #

Patch Set 15 : Fixup #

Unified diffs Side-by-side diffs Delta from patch set Stats (+590 lines, -228 lines) Patch
M chrome/browser/io_thread.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/profiles/off_the_record_profile_io_data.cc View 1 2 3 4 5 2 chunks +4 lines, -2 lines 0 comments Download
M chrome/browser/profiles/profile_impl_io_data.cc View 1 2 3 4 2 chunks +4 lines, -0 lines 0 comments Download
M chrome/browser/profiles/profile_io_data.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
M chromecast/browser/url_request_context_factory.h View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M chromecast/browser/url_request_context_factory.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +7 lines, -3 lines 0 comments Download
M content/browser/renderer_host/pepper/pepper_tcp_socket_message_filter.cc View 1 2 3 4 5 6 7 1 chunk +3 lines, -0 lines 0 comments Download
M content/browser/renderer_host/pepper/ssl_context_helper.h View 1 2 3 4 5 6 7 3 chunks +10 lines, -0 lines 0 comments Download
M content/browser/renderer_host/pepper/ssl_context_helper.cc View 1 2 3 4 5 6 7 2 chunks +14 lines, -0 lines 0 comments Download
M content/shell/browser/shell_url_request_context_getter.cc View 1 2 3 3 chunks +10 lines, -0 lines 0 comments Download
M extensions/browser/api/socket/socket_api.cc View 1 2 3 4 5 6 7 8 9 1 chunk +3 lines, -3 lines 0 comments Download
M extensions/browser/api/socket/tls_socket.h View 1 2 3 4 5 6 7 8 9 2 chunks +4 lines, -0 lines 0 comments Download
M extensions/browser/api/socket/tls_socket.cc View 1 2 3 4 5 6 7 8 9 2 chunks +4 lines, -0 lines 0 comments Download
M extensions/browser/api/sockets_tcp/sockets_tcp_api.cc View 1 2 3 4 5 6 7 8 9 1 chunk +3 lines, -4 lines 0 comments Download
M google_apis/gcm/tools/mcs_probe.cc View 1 2 3 4 5 6 7 8 9 10 11 12 4 chunks +8 lines, -0 lines 0 comments Download
M ios/crnet/crnet_environment.mm View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +4 lines, -0 lines 0 comments Download
M ios/web/shell/shell_url_request_context_getter.mm View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +10 lines, -0 lines 0 comments Download
M jingle/glue/proxy_resolving_client_socket.cc View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
M net/cert/ct_verifier.h View 1 chunk +0 lines, -1 line 0 comments Download
M net/cert_net/cert_net_fetcher_impl_unittest.cc View 3 chunks +7 lines, -0 lines 0 comments Download
M net/http/http_network_layer_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +6 lines, -0 lines 0 comments Download
M net/http/http_network_session.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -1 line 0 comments Download
M net/http/http_network_session.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -1 line 0 comments Download
M net/http/http_network_transaction_ssl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +9 lines, -0 lines 0 comments Download
M net/http/http_response_body_drainer_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +12 lines, -4 lines 0 comments Download
M net/http/http_stream_factory_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 17 chunks +112 lines, -41 lines 0 comments Download
M net/proxy/proxy_script_fetcher_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +7 lines, -0 lines 0 comments Download
M net/quic/crypto/proof_verifier_chromium.cc View 5 chunks +17 lines, -8 lines 0 comments Download
M net/quic/crypto/proof_verifier_chromium_test.cc View 12 chunks +27 lines, -43 lines 0 comments Download
M net/quic/quic_end_to_end_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +3 lines, -0 lines 0 comments Download
M net/quic/quic_network_transaction_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 5 chunks +5 lines, -0 lines 0 comments Download
M net/quic/quic_stream_factory_test.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +3 lines, -1 line 0 comments Download
M net/quic/test_tools/crypto_test_utils_chromium.cc View 4 chunks +10 lines, -4 lines 0 comments Download
M net/socket/ssl_client_socket.h View 2 chunks +6 lines, -12 lines 0 comments Download
M net/socket/ssl_client_socket_impl.cc View 1 5 chunks +25 lines, -33 lines 0 comments Download
M net/socket/ssl_client_socket_pool_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 5 chunks +12 lines, -5 lines 0 comments Download
M net/socket/ssl_client_socket_unittest.cc View 2 chunks +16 lines, -1 line 0 comments Download
M net/socket/ssl_server_socket_unittest.cc View 5 chunks +46 lines, -1 line 0 comments Download
M net/spdy/spdy_test_util_common.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +4 lines, -0 lines 0 comments Download
M net/spdy/spdy_test_util_common.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +13 lines, -33 lines 0 comments Download
M net/url_request/url_request_context.h View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +7 lines, -0 lines 0 comments Download
M net/url_request/url_request_context.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +2 lines, -0 lines 0 comments Download
M net/url_request/url_request_context_builder.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +7 lines, -0 lines 0 comments Download
M net/url_request/url_request_context_storage.h View 3 chunks +8 lines, -0 lines 0 comments Download
M net/url_request/url_request_context_storage.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +14 lines, -0 lines 0 comments Download
M net/url_request/url_request_test_util.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +6 lines, -8 lines 0 comments Download
M net/url_request/url_request_test_util.cc View 1 2 3 4 5 6 7 8 9 10 11 12 4 chunks +14 lines, -9 lines 0 comments Download
M net/url_request/url_request_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 8 chunks +36 lines, -10 lines 0 comments Download
M remoting/protocol/ssl_hmac_channel_authenticator.h View 1 2 3 4 5 6 7 8 2 chunks +4 lines, -0 lines 0 comments Download
M remoting/protocol/ssl_hmac_channel_authenticator.cc View 1 2 3 4 5 6 7 8 4 chunks +46 lines, -0 lines 0 comments Download
M remoting/signaling/xmpp_signal_strategy.cc View 1 2 3 4 5 6 7 8 3 chunks +8 lines, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 71 (29 generated)
Ryan Sleevi
rch: In advance of our discussions tomorrow.
4 years, 6 months ago (2016-06-15 01:00:53 UTC) #1
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/1
4 years, 6 months ago (2016-06-15 01:01:17 UTC) #3
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: cast_shell_linux on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linux/builds/176152) chromeos_daisy_chromium_compile_only_ng on ...
4 years, 6 months ago (2016-06-15 01:05:05 UTC) #5
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/20001
4 years, 6 months ago (2016-06-15 01:12:31 UTC) #7
Ryan Sleevi
https://codereview.chromium.org/2067843003/diff/1/net/spdy/spdy_test_util_common.cc File net/spdy/spdy_test_util_common.cc (left): https://codereview.chromium.org/2067843003/diff/1/net/spdy/spdy_test_util_common.cc#oldcode367 net/spdy/spdy_test_util_common.cc:367: host_resolver->set_synchronous_mode(true); Interestingly, this *wasn't* set if you supplied a ...
4 years, 6 months ago (2016-06-15 01:25:05 UTC) #8
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: cast_shell_linux on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linux/builds/176157)
4 years, 6 months ago (2016-06-15 01:37:11 UTC) #10
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/40001
4 years, 6 months ago (2016-06-15 02:28:55 UTC) #12
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: cast_shell_linux on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linux/builds/176179)
4 years, 6 months ago (2016-06-15 02:51:45 UTC) #14
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/70001
4 years, 6 months ago (2016-06-15 03:16:27 UTC) #16
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/110001
4 years, 6 months ago (2016-06-15 03:44:51 UTC) #18
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/244476)
4 years, 6 months ago (2016-06-15 04:22:06 UTC) #20
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/130001
4 years, 6 months ago (2016-06-15 21:57:42 UTC) #22
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/186496)
4 years, 6 months ago (2016-06-15 23:16:16 UTC) #24
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/170001
4 years, 6 months ago (2016-06-16 00:20:51 UTC) #26
Ryan Sleevi
Matt: Could you take a look at this from the IOThread/URLRequestContext side of things? Ryan: ...
4 years, 6 months ago (2016-06-16 01:58:21 UTC) #28
Ryan Sleevi
On 2016/06/16 01:58:21, Ryan Sleevi wrote: > Wanted to get initial review before I OWNERS ...
4 years, 6 months ago (2016-06-16 02:06:33 UTC) #29
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: mac_chromium_gn_rel on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_gn_rel/builds/128061)
4 years, 6 months ago (2016-06-16 02:15:20 UTC) #31
mmenke
On 2016/06/16 02:06:33, Ryan Sleevi wrote: > On 2016/06/16 01:58:21, Ryan Sleevi wrote: > > ...
4 years, 6 months ago (2016-06-16 02:25:47 UTC) #32
Ryan Hamilton
net/ LGTM modulo a few minor nits (not all of which you need to touch ...
4 years, 6 months ago (2016-06-16 03:31:05 UTC) #33
Ryan Sleevi
Why a DCHECK in HttpNetworkSession? Seems like it's a policy choice of the implementing classes, ...
4 years, 6 months ago (2016-06-16 21:29:17 UTC) #34
Ryan Hamilton
Still LGTM while I bikeshed :> On 2016/06/16 21:29:17, Ryan Sleevi wrote: > Why a ...
4 years, 6 months ago (2016-06-16 23:31:49 UTC) #35
mmenke
LGTM - forgot to get to this yesterday. https://codereview.chromium.org/2067843003/diff/190001/chrome/browser/profiles/profile_io_data.cc File chrome/browser/profiles/profile_io_data.cc (right): https://codereview.chromium.org/2067843003/diff/190001/chrome/browser/profiles/profile_io_data.cc#newcode86 chrome/browser/profiles/profile_io_data.cc:86: #include ...
4 years, 6 months ago (2016-06-17 20:01:44 UTC) #36
Ryan Sleevi
nasko: content/ sergeyu: remoting/ and jingle/ rogerta: google_apis/ rockot: extensions/ eugenebut: ios/
4 years, 6 months ago (2016-06-17 21:22:41 UTC) #38
Ryan Sleevi
oh, and slan@ for chromecast
4 years, 6 months ago (2016-06-17 21:23:16 UTC) #40
Sergey Ulanov
remoting and jingle LGTM
4 years, 6 months ago (2016-06-17 21:25:20 UTC) #41
Eugene But (OOO till 7-30)
ios lgtm
4 years, 6 months ago (2016-06-17 21:31:20 UTC) #42
Ken Rockot(use gerrit already)
lgtm
4 years, 6 months ago (2016-06-17 21:39:32 UTC) #43
Ryan Sleevi
Nasko changed his status to OOO, so jochen for content/
4 years, 6 months ago (2016-06-17 21:43:33 UTC) #45
slan
cast lgtm
4 years, 6 months ago (2016-06-17 22:17:04 UTC) #46
Eran Messeri
lgtm, pleased to see this change happen. I'll just note that in some contexts a ...
4 years, 6 months ago (2016-06-20 09:32:02 UTC) #48
jochen (gone - plz use gerrit)
lgtm
4 years, 6 months ago (2016-06-20 09:54:58 UTC) #49
Roger Tawa OOO till Jul 10th
google_apis lgtm
4 years, 6 months ago (2016-06-20 14:06:53 UTC) #50
Ryan Sleevi
https://codereview.chromium.org/2067843003/diff/210001/content/browser/renderer_host/pepper/ssl_context_helper.cc File content/browser/renderer_host/pepper/ssl_context_helper.cc (right): https://codereview.chromium.org/2067843003/diff/210001/content/browser/renderer_host/pepper/ssl_context_helper.cc#newcode32 content/browser/renderer_host/pepper/ssl_context_helper.cc:32: cert_transparency_verifier_.reset(new net::MultiLogCTVerifier()); On 2016/06/20 09:32:02, Eran Messeri wrote: > ...
4 years, 6 months ago (2016-06-20 16:27:27 UTC) #51
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/230001
4 years, 6 months ago (2016-06-20 21:26:10 UTC) #54
commit-bot: I haz the power
Try jobs failed on following builders: ios-simulator-gn on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator-gn/builds/23817) mac_chromium_gn_rel on tryserver.chromium.mac (JOB_FAILED, ...
4 years, 6 months ago (2016-06-20 21:38:51 UTC) #56
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/250001
4 years, 6 months ago (2016-06-20 21:45:39 UTC) #59
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/188482)
4 years, 6 months ago (2016-06-20 22:09:39 UTC) #61
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/270001
4 years, 6 months ago (2016-06-21 00:20:51 UTC) #63
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 6 months ago (2016-06-21 01:23:21 UTC) #65
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2067843003/270001
4 years, 6 months ago (2016-06-21 01:26:34 UTC) #68
commit-bot: I haz the power
Committed patchset #15 (id:270001)
4 years, 6 months ago (2016-06-21 01:33:39 UTC) #69
commit-bot: I haz the power
4 years, 6 months ago (2016-06-21 01:37:54 UTC) #71
Message was sent while issue was closed.
Patchset 15 (id:??) landed as
https://crrev.com/d6de830088694ffab3218b77fa070084e88160ac
Cr-Commit-Position: refs/heads/master@{#400870}

Powered by Google App Engine
This is Rietveld 408576698