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

Side by Side Diff: net/socket/ssl_client_socket.h

Issue 1127623005: Gather metrics classifying the cause of the TLS fallback. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@fallback-required
Patch Set: missing header Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/socket/socket_test_util.cc ('k') | net/socket/ssl_client_socket_nss.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef NET_SOCKET_SSL_CLIENT_SOCKET_H_ 5 #ifndef NET_SOCKET_SSL_CLIENT_SOCKET_H_
6 #define NET_SOCKET_SSL_CLIENT_SOCKET_H_ 6 #define NET_SOCKET_SSL_CLIENT_SOCKET_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/gtest_prod_util.h" 10 #include "base/gtest_prod_util.h"
11 #include "net/base/completion_callback.h" 11 #include "net/base/completion_callback.h"
12 #include "net/base/load_flags.h" 12 #include "net/base/load_flags.h"
13 #include "net/base/net_errors.h" 13 #include "net/base/net_errors.h"
14 #include "net/socket/ssl_socket.h" 14 #include "net/socket/ssl_socket.h"
15 #include "net/socket/stream_socket.h" 15 #include "net/socket/stream_socket.h"
16 #include "net/ssl/ssl_failure_state.h"
16 17
17 namespace net { 18 namespace net {
18 19
19 class CertPolicyEnforcer; 20 class CertPolicyEnforcer;
20 class CertVerifier; 21 class CertVerifier;
21 class ChannelIDService; 22 class ChannelIDService;
22 class CTVerifier; 23 class CTVerifier;
23 class SSLCertRequestInfo; 24 class SSLCertRequestInfo;
24 struct SSLConfig; 25 struct SSLConfig;
25 class SSLInfo; 26 class SSLInfo;
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 static void ClearSessionCache(); 123 static void ClearSessionCache();
123 124
124 // Get the maximum SSL version supported by the underlying library and 125 // Get the maximum SSL version supported by the underlying library and
125 // cryptographic implementation. 126 // cryptographic implementation.
126 static uint16 GetMaxSupportedSSLVersion(); 127 static uint16 GetMaxSupportedSSLVersion();
127 128
128 // Returns the ChannelIDService used by this socket, or NULL if 129 // Returns the ChannelIDService used by this socket, or NULL if
129 // channel ids are not supported. 130 // channel ids are not supported.
130 virtual ChannelIDService* GetChannelIDService() const = 0; 131 virtual ChannelIDService* GetChannelIDService() const = 0;
131 132
133 // Returns the state of the handshake when it failed, or |SSL_FAILURE_NONE| if
134 // the handshake succeeded. This is used to classify causes of the TLS version
135 // fallback.
136 virtual SSLFailureState GetSSLFailureState() const = 0;
137
132 protected: 138 protected:
133 void set_negotiation_extension( 139 void set_negotiation_extension(
134 SSLNegotiationExtension negotiation_extension) { 140 SSLNegotiationExtension negotiation_extension) {
135 negotiation_extension_ = negotiation_extension; 141 negotiation_extension_ = negotiation_extension;
136 } 142 }
137 143
138 void set_signed_cert_timestamps_received( 144 void set_signed_cert_timestamps_received(
139 bool signed_cert_timestamps_received) { 145 bool signed_cert_timestamps_received) {
140 signed_cert_timestamps_received_ = signed_cert_timestamps_received; 146 signed_cert_timestamps_received_ = signed_cert_timestamps_received;
141 } 147 }
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 bool signed_cert_timestamps_received_; 208 bool signed_cert_timestamps_received_;
203 // True if a stapled OCSP response was received. 209 // True if a stapled OCSP response was received.
204 bool stapled_ocsp_response_received_; 210 bool stapled_ocsp_response_received_;
205 // Protocol negotiation extension used. 211 // Protocol negotiation extension used.
206 SSLNegotiationExtension negotiation_extension_; 212 SSLNegotiationExtension negotiation_extension_;
207 }; 213 };
208 214
209 } // namespace net 215 } // namespace net
210 216
211 #endif // NET_SOCKET_SSL_CLIENT_SOCKET_H_ 217 #endif // NET_SOCKET_SSL_CLIENT_SOCKET_H_
OLDNEW
« no previous file with comments | « net/socket/socket_test_util.cc ('k') | net/socket/ssl_client_socket_nss.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698