OLD | NEW |
---|---|
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_NEXT_PROTO_H_ | 5 #ifndef NET_SOCKET_NEXT_PROTO_H_ |
6 #define NET_SOCKET_NEXT_PROTO_H_ | 6 #define NET_SOCKET_NEXT_PROTO_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "net/base/net_export.h" | 10 #include "net/base/net_export.h" |
11 | 11 |
12 namespace net { | 12 namespace net { |
13 | 13 |
14 // Next Protocol Negotiation (NPN), if successful, results in agreement on an | 14 // This enum is used in Net.SSLNegotiatedAlpnProtocol histogram. |
15 // application-level string that specifies the application level protocol to | 15 // Do not change or re-use values. |
16 // use over the TLS connection. NextProto enumerates the application level | |
17 // protocols that we recognize. Do not change or reuse values, because they | |
18 // are used to collect statistics on UMA. Also, values must be in [0,499), | |
19 // because of the way TLS protocol negotiation extension information is added to | |
20 // UMA histogram. | |
21 const int kProtoSPDYHistogramOffset = 100; | |
22 enum NextProto { | 16 enum NextProto { |
23 kProtoUnknown = 0, | 17 kProtoUnknown = 0, |
24 kProtoHTTP11 = 1, | 18 kProtoHTTP11 = 1, |
25 // kProtoSPDY31 = 102, | 19 kProtoHTTP2 = 2, |
26 // kProtoHTTP2_14 = 103, // HTTP/2 draft-14 | 20 kProtoQUIC1SPDY3 = 3, |
27 // kProtoHTTP2_15 = 104, // HTTP/2 draft-15 | 21 kProtoLast = kProtoQUIC1SPDY3 |
jwd
2016/08/29 19:44:20
I'd prefer it if you kProtoLast was the boundary v
davidben
2016/08/29 19:47:33
The nice thing about the boundary value is we don'
Bence
2016/08/30 00:51:06
I agree with davidben@. See Patch Set 7 for all t
jwd
2016/09/14 18:24:00
Alright, that's fine.
| |
28 // kProtoHTTP2_16 = 105, // HTTP/2 draft-16 | |
29 // kProtoHTTP2_17 = 106, // HTTP/2 draft-17 | |
30 kProtoHTTP2 = 107, // HTTP/2, see https://tools.ietf.org/html/rfc7540. | |
31 kProtoQUIC1SPDY3 = 200, | |
32 }; | 22 }; |
33 | 23 |
34 // List of protocols to use for NPN, used for configuring HttpNetworkSessions. | 24 // List of protocols to use for NPN, used for configuring HttpNetworkSessions. |
35 typedef std::vector<NextProto> NextProtoVector; | 25 typedef std::vector<NextProto> NextProtoVector; |
36 | 26 |
37 } // namespace net | 27 } // namespace net |
38 | 28 |
39 #endif // NET_SOCKET_NEXT_PROTO_H_ | 29 #endif // NET_SOCKET_NEXT_PROTO_H_ |
OLD | NEW |