|
Optimize CT & OCSP handling code
Update the interface for CTVerifier to use a base::StringPiece
for the OCSP and TLS SCT extension, rather than an std::string.
By allowing this to be zero-copy from the underlying SSL* that
stores this information, this allows pruning the ocsp_response_
member from SSLSocketImpl, which can save an extra 2K-12K per
socket for those that staple OCSP responses, and eliminate an
extra copy for the CT information.
As this required touching every CTVerifier-derived class, this
also fixes the API wart that crept in regarding
CTVerifier::Verify() having a return code. As the actual
verification of policy compliance is handled not by CTVerifier
but by CTPolicyEnforcer, there's no actual status code to return
from CTVerifier. To make future cleanups easier, and to align the
API and implementations for consistency, this also replaced the
various stub verifiers that grew with explicit
DoNothingCTVerifiers that skip all parsing entirely.
BUG= 571203
TBR=sergeyu@chromium.org
Committed: https://crrev.com/22cae167148a1f2b632ff4c20f975810d4edb188
Cr-Commit-Position: refs/heads/master@{#440818}
Total comments: 16
Total comments: 1
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+151 lines, -277 lines) |
Patch |
 |
M |
net/base/net_error_list.h
|
View
|
1
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
 |
M |
net/cert/ct_objects_extractor.h
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
net/cert/ct_objects_extractor.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
net/cert/ct_objects_extractor_unittest.cc
|
View
|
1
2
3
4
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
 |
M |
net/cert/ct_serialization.h
|
View
|
1
2
3
4
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
net/cert/ct_serialization.cc
|
View
|
1
2
3
4
|
1 chunk |
+4 lines, -4 lines |
0 comments
|
Download
|
 |
M |
net/cert/ct_serialization_unittest.cc
|
View
|
1
2
3
4
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
net/cert/ct_signed_certificate_timestamp_log_param.h
|
View
|
|
2 chunks |
+4 lines, -4 lines |
0 comments
|
Download
|
 |
M |
net/cert/ct_signed_certificate_timestamp_log_param.cc
|
View
|
|
2 chunks |
+9 lines, -10 lines |
0 comments
|
Download
|
 |
M |
net/cert/ct_verifier.h
|
View
|
1
2
3
4
5
|
2 chunks |
+8 lines, -9 lines |
0 comments
|
Download
|
 |
M |
net/cert/do_nothing_ct_verifier.h
|
View
|
|
1 chunk |
+7 lines, -5 lines |
0 comments
|
Download
|
 |
M |
net/cert/do_nothing_ct_verifier.cc
|
View
|
|
1 chunk |
+5 lines, -4 lines |
0 comments
|
Download
|
 |
M |
net/cert/multi_log_ct_verifier.h
|
View
|
1
2
3
4
|
2 chunks |
+8 lines, -7 lines |
1 comment
|
Download
|
 |
M |
net/cert/multi_log_ct_verifier.cc
|
View
|
1
2
3
4
|
6 chunks |
+24 lines, -38 lines |
0 comments
|
Download
|
 |
M |
net/cert/multi_log_ct_verifier_unittest.cc
|
View
|
1
2
3
4
|
4 chunks |
+20 lines, -21 lines |
0 comments
|
Download
|
 |
M |
net/http/transport_security_state.h
|
View
|
1
2
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
net/http/transport_security_state.cc
|
View
|
1
2
3
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
net/socket/ssl_client_socket_impl.h
|
View
|
1
2
3
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
net/socket/ssl_client_socket_impl.cc
|
View
|
1
2
3
|
4 chunks |
+24 lines, -11 lines |
0 comments
|
Download
|
 |
M |
net/socket/ssl_client_socket_unittest.cc
|
View
|
1
2
3
4
5
|
12 chunks |
+15 lines, -73 lines |
0 comments
|
Download
|
 |
M |
net/socket/ssl_server_socket_unittest.cc
|
View
|
1
2
3
|
4 chunks |
+3 lines, -19 lines |
0 comments
|
Download
|
 |
M |
net/spdy/spdy_test_util_common.cc
|
View
|
1
2
3
|
4 chunks |
+3 lines, -19 lines |
0 comments
|
Download
|
 |
M |
net/url_request/url_request_unittest.cc
|
View
|
1
2
3
|
3 chunks |
+4 lines, -21 lines |
0 comments
|
Download
|
 |
M |
remoting/protocol/ssl_hmac_channel_authenticator.cc
|
View
|
1
2
3
|
3 chunks |
+2 lines, -19 lines |
0 comments
|
Download
|
Total messages: 22 (12 generated)
|