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