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

Issue 1115903002: Refactor the API for CertVerifier::Verify() and the implementation of MultiThreadedCertVerifier::Ver (Closed)

Created:
5 years, 7 months ago by eroman
Modified:
5 years, 7 months ago
CC:
chromium-reviews, cbentzel+watch_chromium.org, zea+watch_chromium.org, chromoting-reviews_chromium.org, glider+watch_chromium.org, oshima+watch_chromium.org, stevenjb+watch_chromium.org, davemoore+watch_chromium.org, bruening+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Refactor the API for CertVerifier::Verify() and the implementation of MultiThreadedCertVerifier::Verify(). * CertVerifier::Verify() fills a |scoped_pointer<Request>*| rather than a |void*| * CertVerifier::CancelRequest(void*) has been removed. Requests are instead cancelled by resetting the scoped_ptr<Request>. * Refactored memory ownership in MultiThreadedCertVerifier so there are no manual calls to "delete". * Removed locking and the CertVerifierWorker in favor of using WorkerPool::PostTaskAndReply() BUG=475153, 479336 TBR=pneubeck@chromium.org,zea@chromium.org,sergeyu@chromium.org Committed: https://crrev.com/7f9236a3b9a7c0f7eb1d231c65027d0c4c535f3c Cr-Commit-Position: refs/heads/master@{#329234}

Patch Set 1 #

Patch Set 2 : more chromeos stuff #

Total comments: 5

Patch Set 3 : rebase onto master #

Total comments: 25

Patch Set 4 : address comments #

Patch Set 5 : more comment wordsmithing #

Total comments: 2

Patch Set 6 : reword "in flight --> in-flight" #

Patch Set 7 : rebase onto master #

Patch Set 8 : rebase again #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+388 lines, -523 lines) Patch
M chrome/browser/chromeos/policy/policy_cert_verifier.h View 1 chunk +1 line, -3 lines 0 comments Download
M chrome/browser/chromeos/policy/policy_cert_verifier.cc View 2 chunks +1 line, -6 lines 0 comments Download
M chrome/browser/chromeos/policy/policy_cert_verifier_browsertest.cc View 1 2 8 chunks +11 lines, -10 lines 0 comments Download
M google_apis/gcm/tools/mcs_probe.cc View 1 2 3 4 5 6 7 1 chunk +1 line, -5 lines 0 comments Download
M net/cert/cert_verifier.h View 3 chunks +9 lines, -13 lines 4 comments Download
M net/cert/mock_cert_verifier.h View 1 chunk +1 line, -2 lines 0 comments Download
M net/cert/mock_cert_verifier.cc View 2 chunks +1 line, -5 lines 0 comments Download
M net/cert/multi_threaded_cert_verifier.h View 1 2 3 4 chunks +23 lines, -18 lines 0 comments Download
M net/cert/multi_threaded_cert_verifier.cc View 1 2 3 4 5 10 chunks +235 lines, -296 lines 0 comments Download
M net/cert/multi_threaded_cert_verifier_unittest.cc View 1 2 3 9 chunks +85 lines, -11 lines 0 comments Download
D net/cert/single_request_cert_verifier.h View 1 chunk +0 lines, -53 lines 0 comments Download
D net/cert/single_request_cert_verifier.cc View 1 chunk +0 lines, -71 lines 0 comments Download
M net/cert_net/nss_ocsp_unittest.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M net/net.gypi View 1 2 3 4 5 6 7 1 chunk +0 lines, -2 lines 0 comments Download
M net/quic/crypto/proof_verifier_chromium.cc View 4 chunks +5 lines, -5 lines 0 comments Download
M net/socket/ssl_client_socket_nss.h View 3 chunks +2 lines, -2 lines 0 comments Download
M net/socket/ssl_client_socket_nss.cc View 3 chunks +4 lines, -6 lines 0 comments Download
M net/socket/ssl_client_socket_openssl.h View 3 chunks +2 lines, -2 lines 0 comments Download
M net/socket/ssl_client_socket_openssl.cc View 1 2 3 4 5 6 3 chunks +4 lines, -6 lines 0 comments Download
M remoting/protocol/ssl_hmac_channel_authenticator.cc View 1 chunk +1 line, -5 lines 0 comments Download

Messages

Total messages: 41 (12 generated)
eroman
5 years, 7 months ago (2015-04-30 05:51:25 UTC) #2
Alexander Potapenko
https://codereview.chromium.org/1115903002/diff/20001/net/cert/multi_threaded_cert_verifier.cc File net/cert/multi_threaded_cert_verifier.cc (right): https://codereview.chromium.org/1115903002/diff/20001/net/cert/multi_threaded_cert_verifier.cc#newcode373 net/cert/multi_threaded_cert_verifier.cc:373: int MultiThreadedCertVerifier::Verify(X509Certificate* cert, Can two threads call MultiThreadedCertVerifier::Verify() concurrently?
5 years, 7 months ago (2015-04-30 10:40:52 UTC) #4
eroman
https://codereview.chromium.org/1115903002/diff/20001/net/cert/multi_threaded_cert_verifier.cc File net/cert/multi_threaded_cert_verifier.cc (right): https://codereview.chromium.org/1115903002/diff/20001/net/cert/multi_threaded_cert_verifier.cc#newcode373 net/cert/multi_threaded_cert_verifier.cc:373: int MultiThreadedCertVerifier::Verify(X509Certificate* cert, On 2015/04/30 10:40:52, Alexander Potapenko wrote: ...
5 years, 7 months ago (2015-04-30 17:56:17 UTC) #5
eroman
https://codereview.chromium.org/1115903002/diff/20001/net/cert/multi_threaded_cert_verifier.cc File net/cert/multi_threaded_cert_verifier.cc (right): https://codereview.chromium.org/1115903002/diff/20001/net/cert/multi_threaded_cert_verifier.cc#newcode373 net/cert/multi_threaded_cert_verifier.cc:373: int MultiThreadedCertVerifier::Verify(X509Certificate* cert, On 2015/04/30 17:56:17, eroman wrote: > ...
5 years, 7 months ago (2015-04-30 17:59:49 UTC) #6
eroman
Just a reminder in case this fell off your queue :)
5 years, 7 months ago (2015-05-06 00:34:03 UTC) #7
davidben
It did slip through, sorry! I reviewed everything but the meat of it, MultiThreadedCertVerifier, which ...
5 years, 7 months ago (2015-05-06 14:55:14 UTC) #9
eroman
https://codereview.chromium.org/1115903002/diff/20001/tools/valgrind/memcheck/suppressions.txt File tools/valgrind/memcheck/suppressions.txt (left): https://codereview.chromium.org/1115903002/diff/20001/tools/valgrind/memcheck/suppressions.txt#oldcode1833 tools/valgrind/memcheck/suppressions.txt:1833: fun:_ZN3net18SSLClientSocketNSS21OnHandshakeIOCompleteEi On 2015/05/06 14:55:13, David Benjamin wrote: > Guessing ...
5 years, 7 months ago (2015-05-06 21:39:20 UTC) #10
Ryan Sleevi
My biggest concern seems to be that this has an observable change in lifetime semantics ...
5 years, 7 months ago (2015-05-06 22:31:48 UTC) #11
eroman
In regards to destruction, that should not be the case. In both the new and ...
5 years, 7 months ago (2015-05-06 22:38:35 UTC) #12
Ryan Sleevi
On 2015/05/06 22:38:35, eroman wrote: > In regards to destruction, that should not be the ...
5 years, 7 months ago (2015-05-06 22:58:03 UTC) #13
eroman
https://codereview.chromium.org/1115903002/diff/40001/net/cert/multi_threaded_cert_verifier.cc File net/cert/multi_threaded_cert_verifier.cc (left): https://codereview.chromium.org/1115903002/diff/40001/net/cert/multi_threaded_cert_verifier.cc#oldcode72 net/cert/multi_threaded_cert_verifier.cc:72: // On 2015/05/06 22:31:47, Ryan Sleevi wrote: > I ...
5 years, 7 months ago (2015-05-08 23:44:16 UTC) #14
Ryan Sleevi
lgtm https://codereview.chromium.org/1115903002/diff/80001/net/cert/multi_threaded_cert_verifier.cc File net/cert/multi_threaded_cert_verifier.cc (right): https://codereview.chromium.org/1115903002/diff/80001/net/cert/multi_threaded_cert_verifier.cc#newcode63 net/cert/multi_threaded_cert_verifier.cc:63: // If the request was in flight (attached ...
5 years, 7 months ago (2015-05-09 00:30:19 UTC) #15
eroman
https://codereview.chromium.org/1115903002/diff/80001/net/cert/multi_threaded_cert_verifier.cc File net/cert/multi_threaded_cert_verifier.cc (right): https://codereview.chromium.org/1115903002/diff/80001/net/cert/multi_threaded_cert_verifier.cc#newcode63 net/cert/multi_threaded_cert_verifier.cc:63: // If the request was in flight (attached to ...
5 years, 7 months ago (2015-05-09 01:40:33 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1115903002/120001
5 years, 7 months ago (2015-05-11 19:44:18 UTC) #19
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/62700) linux_chromium_gn_dbg on tryserver.chromium.linux (JOB_FAILED, ...
5 years, 7 months ago (2015-05-11 19:52:16 UTC) #21
eroman
TRBring owners for the files outside of net: pneubeck@chromium.org --> chrome/browser/chromeos/policy/* zea@chromium.org --> google_apis/gcm/* sergeyu@chromium.org ...
5 years, 7 months ago (2015-05-11 19:56:34 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1115903002/140001
5 years, 7 months ago (2015-05-11 20:02:01 UTC) #26
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_gn_dbg on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_gn_dbg/builds/70687)
5 years, 7 months ago (2015-05-11 20:08:34 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1115903002/140001
5 years, 7 months ago (2015-05-11 20:43:53 UTC) #30
commit-bot: I haz the power
Committed patchset #8 (id:140001)
5 years, 7 months ago (2015-05-11 21:23:54 UTC) #31
commit-bot: I haz the power
Patchset 8 (id:??) landed as https://crrev.com/7f9236a3b9a7c0f7eb1d231c65027d0c4c535f3c Cr-Commit-Position: refs/heads/master@{#329234}
5 years, 7 months ago (2015-05-11 21:24:46 UTC) #32
pneubeck (no reviews)
chrome/browser/chromeos/policy/* lgtm with a comment at the CertVerifier::Verify documentation. https://codereview.chromium.org/1115903002/diff/140001/net/cert/cert_verifier.h File net/cert/cert_verifier.h (right): https://codereview.chromium.org/1115903002/diff/140001/net/cert/cert_verifier.h#newcode102 net/cert/cert_verifier.h:102: ...
5 years, 7 months ago (2015-05-12 09:20:16 UTC) #33
eroman
https://codereview.chromium.org/1115903002/diff/140001/net/cert/cert_verifier.h File net/cert/cert_verifier.h (right): https://codereview.chromium.org/1115903002/diff/140001/net/cert/cert_verifier.h#newcode102 net/cert/cert_verifier.h:102: // |*out_req| will be filled with a pointer to ...
5 years, 7 months ago (2015-05-12 14:22:11 UTC) #34
Nico
A whole bunch of policy tests started failing on the 32-bit clang/win debug bot (and ...
5 years, 7 months ago (2015-05-12 18:05:01 UTC) #36
eroman
Weird I don't think so, let me look a bit more closely at those failure
5 years, 7 months ago (2015-05-12 18:21:02 UTC) #37
pneubeck (no reviews)
https://codereview.chromium.org/1115903002/diff/140001/net/cert/cert_verifier.h File net/cert/cert_verifier.h (right): https://codereview.chromium.org/1115903002/diff/140001/net/cert/cert_verifier.h#newcode26 net/cert/cert_verifier.h:26: class Request { another thing that I stumbled over: ...
5 years, 7 months ago (2015-05-13 10:13:07 UTC) #38
pneubeck (no reviews)
https://codereview.chromium.org/1115903002/diff/140001/net/cert/cert_verifier.h File net/cert/cert_verifier.h (right): https://codereview.chromium.org/1115903002/diff/140001/net/cert/cert_verifier.h#newcode26 net/cert/cert_verifier.h:26: class Request { On 2015/05/13 10:13:07, pneubeck wrote: > ...
5 years, 7 months ago (2015-05-13 12:01:20 UTC) #39
eroman
Philip, I do not understand your last comment. Can you point me to the code ...
5 years, 7 months ago (2015-05-14 23:28:09 UTC) #40
eroman
5 years, 7 months ago (2015-05-15 02:52:31 UTC) #41
Message was sent while issue was closed.
Created this bug to follow up on the feedback:
https://code.google.com/p/chromium/issues/detail?id=488325

And with that, I will stop spamming this codereview thread :)

Powered by Google App Engine
This is Rietveld 408576698