| Index: net/http/http_server_properties.cc
|
| diff --git a/net/http/http_server_properties.cc b/net/http/http_server_properties.cc
|
| index bff262ade459a4b581b4de2142c12acd73c0c8f1..af972dfa194b24282fe84155b527f10e5bb97a23 100644
|
| --- a/net/http/http_server_properties.cc
|
| +++ b/net/http/http_server_properties.cc
|
| @@ -16,7 +16,6 @@ namespace {
|
| // The order of these strings much match the order of the enum definition
|
| // for AlternateProtocol.
|
| const char* const kAlternateProtocolStrings[] = {
|
| - "npn-spdy/1",
|
| "npn-spdy/2",
|
| "npn-spdy/3",
|
| "npn-spdy/3.1",
|
| @@ -26,25 +25,28 @@ const char* const kAlternateProtocolStrings[] = {
|
| };
|
| const char kBrokenAlternateProtocol[] = "Broken";
|
|
|
| -COMPILE_ASSERT(arraysize(kAlternateProtocolStrings) == NUM_ALTERNATE_PROTOCOLS,
|
| - kAlternateProtocolStringsSize_NUM_ALTERNATE_PROTOCOLS_nut_equal);
|
| +COMPILE_ASSERT(
|
| + arraysize(kAlternateProtocolStrings) == NUM_VALID_ALTERNATE_PROTOCOLS,
|
| + kAlternateProtocolStringsSize_kNumValidAlternateProtocols_not_equal);
|
|
|
| } // namespace
|
|
|
| +bool IsAlternateProtocolValid(AlternateProtocol protocol) {
|
| + return protocol >= ALTERNATE_PROTOCOL_MINIMUM_VALID_VERSION &&
|
| + protocol <= ALTERNATE_PROTOCOL_MAXIMUM_VALID_VERSION;
|
| +}
|
| +
|
| const char* AlternateProtocolToString(AlternateProtocol protocol) {
|
| switch (protocol) {
|
| - case NPN_SPDY_1:
|
| case NPN_SPDY_2:
|
| case NPN_SPDY_3:
|
| case NPN_SPDY_3_1:
|
| case NPN_SPDY_4A2:
|
| case NPN_HTTP2_DRAFT_04:
|
| case QUIC:
|
| - DCHECK_LT(static_cast<size_t>(protocol),
|
| - arraysize(kAlternateProtocolStrings));
|
| - return kAlternateProtocolStrings[protocol];
|
| - case NUM_ALTERNATE_PROTOCOLS:
|
| - break;
|
| + DCHECK(IsAlternateProtocolValid(protocol));
|
| + return kAlternateProtocolStrings[
|
| + protocol - ALTERNATE_PROTOCOL_MINIMUM_VALID_VERSION];
|
| case ALTERNATE_PROTOCOL_BROKEN:
|
| return kBrokenAlternateProtocol;
|
| case UNINITIALIZED_ALTERNATE_PROTOCOL:
|
| @@ -54,11 +56,14 @@ const char* AlternateProtocolToString(AlternateProtocol protocol) {
|
| return "";
|
| }
|
|
|
| -AlternateProtocol AlternateProtocolFromString(const std::string& protocol) {
|
| - for (int i = NPN_SPDY_1; i < NUM_ALTERNATE_PROTOCOLS; ++i)
|
| - if (protocol == kAlternateProtocolStrings[i])
|
| - return static_cast<AlternateProtocol>(i);
|
| - if (protocol == kBrokenAlternateProtocol)
|
| +AlternateProtocol AlternateProtocolFromString(const std::string& str) {
|
| + for (int i = ALTERNATE_PROTOCOL_MINIMUM_VALID_VERSION;
|
| + i <= ALTERNATE_PROTOCOL_MAXIMUM_VALID_VERSION; ++i) {
|
| + AlternateProtocol protocol = static_cast<AlternateProtocol>(i);
|
| + if (str == AlternateProtocolToString(protocol))
|
| + return protocol;
|
| + }
|
| + if (str == kBrokenAlternateProtocol)
|
| return ALTERNATE_PROTOCOL_BROKEN;
|
| return UNINITIALIZED_ALTERNATE_PROTOCOL;
|
| }
|
| @@ -80,8 +85,6 @@ AlternateProtocol AlternateProtocolFromNextProto(NextProto next_proto) {
|
|
|
| case kProtoUnknown:
|
| case kProtoHTTP11:
|
| - case kProtoSPDY1:
|
| - case kProtoSPDY21:
|
| break;
|
| }
|
|
|
|
|