1 // Copyright 2016 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 #include "net/socket/next_proto.h" 6 7 namespace net { 8 NextProtoFromString(base::StringPiece proto_string)9NextProto NextProtoFromString(base::StringPiece proto_string) { 10 if (proto_string == "http/1.1") { 11 return kProtoHTTP11; 12 } 13 if (proto_string == "h2") { 14 return kProtoHTTP2; 15 } 16 if (proto_string == "quic" || proto_string == "hq") { 17 return kProtoQUIC; 18 } 19 20 return kProtoUnknown; 21 } 22 NextProtoToString(NextProto next_proto)23const char* NextProtoToString(NextProto next_proto) { 24 switch (next_proto) { 25 case kProtoHTTP11: 26 return "http/1.1"; 27 case kProtoHTTP2: 28 return "h2"; 29 case kProtoQUIC: 30 return "quic"; 31 case kProtoUnknown: 32 break; 33 } 34 return "unknown"; 35 } 36 37 } // namespace net 38