xref: /aosp_15_r20/external/cronet/net/ssl/ssl_handshake_details.h (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1 // Copyright 2019 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef NET_SSL_SSL_HANDSHAKE_DETAILS_H_
6 #define NET_SSL_SSL_HANDSHAKE_DETAILS_H_
7 
8 namespace net {
9 
10 // This enum is persisted into histograms. Values may not be renumbered.
11 enum class SSLHandshakeDetails {
12   // TLS 1.2 (or earlier) full handshake (2-RTT)
13   kTLS12Full = 0,
14   // TLS 1.2 (or earlier) resumption (1-RTT)
15   kTLS12Resume = 1,
16   // TLS 1.2 full handshake with False Start (1-RTT)
17   kTLS12FalseStart = 2,
18   // 3 was previously used for TLS 1.3 full handshakes with or without HRR.
19   // 4 was previously used for TLS 1.3 resumptions with or without HRR.
20   // TLS 1.3 0-RTT handshake (0-RTT)
21   kTLS13Early = 5,
22   // TLS 1.3 full handshake without HelloRetryRequest (1-RTT)
23   kTLS13Full = 6,
24   // TLS 1.3 resumption handshake without HelloRetryRequest (1-RTT)
25   kTLS13Resume = 7,
26   // TLS 1.3 full handshake with HelloRetryRequest (2-RTT)
27   kTLS13FullWithHelloRetryRequest = 8,
28   // TLS 1.3 resumption handshake with HelloRetryRequest (2-RTT)
29   kTLS13ResumeWithHelloRetryRequest = 9,
30   kMaxValue = kTLS13ResumeWithHelloRetryRequest,
31 };
32 
33 }  // namespace net
34 
35 #endif  // NET_SSL_SSL_HANDSHAKE_DETAILS_H_
36