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 "base/strings/string_piece.h" | |
11 #include "net/base/net_export.h" | |
12 | |
13 namespace net { | 10 namespace net { |
14 | 11 |
15 // This enum is used in Net.SSLNegotiatedAlpnProtocol histogram. | 12 // This enum is used in Net.SSLNegotiatedAlpnProtocol histogram. |
16 // Do not change or re-use values. | 13 // Do not change or re-use values. |
17 enum NextProto { | 14 enum NextProto { |
18 kProtoUnknown = 0, | 15 kProtoUnknown = 0, |
19 kProtoHTTP11 = 1, | 16 kProtoHTTP11 = 1, |
20 kProtoHTTP2 = 2, | 17 kProtoHTTP2 = 2, |
21 kProtoQUIC = 3, | 18 kProtoQUIC = 3, |
22 kProtoLast = kProtoQUIC | 19 kProtoLast = kProtoQUIC |
23 }; | 20 }; |
24 | 21 |
25 // List of protocols to use for NPN, used for configuring HttpNetworkSessions. | 22 // List of protocols to use for NPN, used for configuring HttpNetworkSessions. |
26 typedef std::vector<NextProto> NextProtoVector; | 23 typedef std::vector<NextProto> NextProtoVector; |
27 | 24 |
28 NET_EXPORT_PRIVATE NextProto | |
29 NextProtoFromString(base::StringPiece proto_string); | |
30 | |
31 NET_EXPORT_PRIVATE const char* NextProtoToString(NextProto next_proto); | |
32 | |
33 } // namespace net | 25 } // namespace net |
34 | 26 |
35 #endif // NET_SOCKET_NEXT_PROTO_H_ | 27 #endif // NET_SOCKET_NEXT_PROTO_H_ |
OLD | NEW |