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