Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(303)

Unified Diff: net/spdy/spdy_protocol.cc

Issue 992733002: Remove //net (except for Android test stuff) and sdch (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/spdy/spdy_protocol.h ('k') | net/spdy/spdy_protocol_test.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/spdy/spdy_protocol.cc
diff --git a/net/spdy/spdy_protocol.cc b/net/spdy/spdy_protocol.cc
deleted file mode 100644
index 3993c0125ccb5bb66aaf1e7903f797f31114c190..0000000000000000000000000000000000000000
--- a/net/spdy/spdy_protocol.cc
+++ /dev/null
@@ -1,873 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "net/spdy/spdy_protocol.h"
-
-namespace net {
-
-SpdyFrameWithNameValueBlockIR::SpdyFrameWithNameValueBlockIR(
- SpdyStreamId stream_id) : SpdyFrameWithFinIR(stream_id) {}
-
-SpdyFrameWithNameValueBlockIR::~SpdyFrameWithNameValueBlockIR() {}
-
-SpdyDataIR::SpdyDataIR(SpdyStreamId stream_id, const base::StringPiece& data)
- : SpdyFrameWithFinIR(stream_id),
- padded_(false),
- padding_payload_len_(0) {
- SetDataDeep(data);
-}
-
-SpdyDataIR::SpdyDataIR(SpdyStreamId stream_id)
- : SpdyFrameWithFinIR(stream_id),
- padded_(false),
- padding_payload_len_(0) {}
-
-SpdyDataIR::~SpdyDataIR() {}
-
-bool SpdyConstants::IsValidFrameType(SpdyMajorVersion version,
- int frame_type_field) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- // SYN_STREAM is the first valid frame.
- if (frame_type_field < SerializeFrameType(version, SYN_STREAM)) {
- return false;
- }
-
- // WINDOW_UPDATE is the last valid frame.
- if (frame_type_field > SerializeFrameType(version, WINDOW_UPDATE)) {
- return false;
- }
-
- return true;
- case SPDY4:
- // Check for recognized extensions.
- if (frame_type_field == SerializeFrameType(version, ALTSVC) ||
- frame_type_field == SerializeFrameType(version, BLOCKED)) {
- return true;
- }
-
- // DATA is the first valid frame.
- if (frame_type_field < SerializeFrameType(version, DATA)) {
- return false;
- }
-
- // CONTINUATION is the last valid frame.
- if (frame_type_field > SerializeFrameType(version, CONTINUATION)) {
- return false;
- }
-
- return true;
- }
-
- LOG(DFATAL) << "Unhandled SPDY version " << version;
- return false;
-}
-
-SpdyFrameType SpdyConstants::ParseFrameType(SpdyMajorVersion version,
- int frame_type_field) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- switch (frame_type_field) {
- case 1:
- return SYN_STREAM;
- case 2:
- return SYN_REPLY;
- case 3:
- return RST_STREAM;
- case 4:
- return SETTINGS;
- case 6:
- return PING;
- case 7:
- return GOAWAY;
- case 8:
- return HEADERS;
- case 9:
- return WINDOW_UPDATE;
- }
- break;
- case SPDY4:
- switch (frame_type_field) {
- case 0:
- return DATA;
- case 1:
- return HEADERS;
- case 2:
- return PRIORITY;
- case 3:
- return RST_STREAM;
- case 4:
- return SETTINGS;
- case 5:
- return PUSH_PROMISE;
- case 6:
- return PING;
- case 7:
- return GOAWAY;
- case 8:
- return WINDOW_UPDATE;
- case 9:
- return CONTINUATION;
- case 10:
- return ALTSVC;
- case 11:
- return BLOCKED;
- }
- break;
- }
-
- LOG(DFATAL) << "Unhandled frame type " << frame_type_field;
- return DATA;
-}
-
-int SpdyConstants::SerializeFrameType(SpdyMajorVersion version,
- SpdyFrameType frame_type) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- switch (frame_type) {
- case SYN_STREAM:
- return 1;
- case SYN_REPLY:
- return 2;
- case RST_STREAM:
- return 3;
- case SETTINGS:
- return 4;
- case PING:
- return 6;
- case GOAWAY:
- return 7;
- case HEADERS:
- return 8;
- case WINDOW_UPDATE:
- return 9;
- default:
- LOG(DFATAL) << "Serializing unhandled frame type " << frame_type;
- return -1;
- }
- case SPDY4:
- switch (frame_type) {
- case DATA:
- return 0;
- case HEADERS:
- return 1;
- case PRIORITY:
- return 2;
- case RST_STREAM:
- return 3;
- case SETTINGS:
- return 4;
- case PUSH_PROMISE:
- return 5;
- case PING:
- return 6;
- case GOAWAY:
- return 7;
- case WINDOW_UPDATE:
- return 8;
- case CONTINUATION:
- return 9;
- // ALTSVC and BLOCKED are extensions.
- case ALTSVC:
- return 10;
- case BLOCKED:
- return 11;
- default:
- LOG(DFATAL) << "Serializing unhandled frame type " << frame_type;
- return -1;
- }
- }
-
- LOG(DFATAL) << "Unhandled SPDY version " << version;
- return -1;
-}
-
-int SpdyConstants::DataFrameType(SpdyMajorVersion version) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- return 0;
- case SPDY4:
- return SerializeFrameType(version, DATA);
- }
-
- LOG(DFATAL) << "Unhandled SPDY version " << version;
- return 0;
-}
-
-bool SpdyConstants::IsValidSettingId(SpdyMajorVersion version,
- int setting_id_field) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- // UPLOAD_BANDWIDTH is the first valid setting id.
- if (setting_id_field <
- SerializeSettingId(version, SETTINGS_UPLOAD_BANDWIDTH)) {
- return false;
- }
-
- // INITIAL_WINDOW_SIZE is the last valid setting id.
- if (setting_id_field >
- SerializeSettingId(version, SETTINGS_INITIAL_WINDOW_SIZE)) {
- return false;
- }
-
- return true;
- case SPDY4:
- // HEADER_TABLE_SIZE is the first valid setting id.
- if (setting_id_field <
- SerializeSettingId(version, SETTINGS_HEADER_TABLE_SIZE)) {
- return false;
- }
-
- // MAX_HEADER_LIST_SIZE is the last valid setting id.
- if (setting_id_field >
- SerializeSettingId(version, SETTINGS_MAX_HEADER_LIST_SIZE)) {
- return false;
- }
-
- return true;
- }
-
- LOG(DFATAL) << "Unhandled SPDY version " << version;
- return false;
-}
-
-SpdySettingsIds SpdyConstants::ParseSettingId(SpdyMajorVersion version,
- int setting_id_field) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- switch (setting_id_field) {
- case 1:
- return SETTINGS_UPLOAD_BANDWIDTH;
- case 2:
- return SETTINGS_DOWNLOAD_BANDWIDTH;
- case 3:
- return SETTINGS_ROUND_TRIP_TIME;
- case 4:
- return SETTINGS_MAX_CONCURRENT_STREAMS;
- case 5:
- return SETTINGS_CURRENT_CWND;
- case 6:
- return SETTINGS_DOWNLOAD_RETRANS_RATE;
- case 7:
- return SETTINGS_INITIAL_WINDOW_SIZE;
- }
- break;
- case SPDY4:
- switch (setting_id_field) {
- case 1:
- return SETTINGS_HEADER_TABLE_SIZE;
- case 2:
- return SETTINGS_ENABLE_PUSH;
- case 3:
- return SETTINGS_MAX_CONCURRENT_STREAMS;
- case 4:
- return SETTINGS_INITIAL_WINDOW_SIZE;
- case 5:
- return SETTINGS_MAX_FRAME_SIZE;
- case 6:
- return SETTINGS_MAX_HEADER_LIST_SIZE;
- }
- break;
- }
-
- LOG(DFATAL) << "Unhandled setting ID " << setting_id_field;
- return SETTINGS_UPLOAD_BANDWIDTH;
-}
-
-int SpdyConstants::SerializeSettingId(SpdyMajorVersion version,
- SpdySettingsIds id) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- switch (id) {
- case SETTINGS_UPLOAD_BANDWIDTH:
- return 1;
- case SETTINGS_DOWNLOAD_BANDWIDTH:
- return 2;
- case SETTINGS_ROUND_TRIP_TIME:
- return 3;
- case SETTINGS_MAX_CONCURRENT_STREAMS:
- return 4;
- case SETTINGS_CURRENT_CWND:
- return 5;
- case SETTINGS_DOWNLOAD_RETRANS_RATE:
- return 6;
- case SETTINGS_INITIAL_WINDOW_SIZE:
- return 7;
- default:
- LOG(DFATAL) << "Serializing unhandled setting id " << id;
- return -1;
- }
- case SPDY4:
- switch (id) {
- case SETTINGS_HEADER_TABLE_SIZE:
- return 1;
- case SETTINGS_ENABLE_PUSH:
- return 2;
- case SETTINGS_MAX_CONCURRENT_STREAMS:
- return 3;
- case SETTINGS_INITIAL_WINDOW_SIZE:
- return 4;
- case SETTINGS_MAX_FRAME_SIZE:
- return 5;
- case SETTINGS_MAX_HEADER_LIST_SIZE:
- return 6;
- default:
- LOG(DFATAL) << "Serializing unhandled setting id " << id;
- return -1;
- }
- }
- LOG(DFATAL) << "Unhandled SPDY version " << version;
- return -1;
-}
-
-bool SpdyConstants::IsValidRstStreamStatus(SpdyMajorVersion version,
- int rst_stream_status_field) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- // PROTOCOL_ERROR is the valid first status code.
- if (rst_stream_status_field <
- SerializeRstStreamStatus(version, RST_STREAM_PROTOCOL_ERROR)) {
- return false;
- }
-
- // FRAME_TOO_LARGE is the valid last status code.
- if (rst_stream_status_field >
- SerializeRstStreamStatus(version, RST_STREAM_FRAME_TOO_LARGE)) {
- return false;
- }
-
- return true;
- case SPDY4:
- // NO_ERROR is the first valid status code.
- if (rst_stream_status_field <
- SerializeRstStreamStatus(version, RST_STREAM_PROTOCOL_ERROR)) {
- return false;
- }
-
- // TODO(hkhalil): Omit COMPRESSION_ERROR and SETTINGS_TIMEOUT
- /*
- // This works because GOAWAY and RST_STREAM share a namespace.
- if (rst_stream_status_field ==
- SerializeGoAwayStatus(version, GOAWAY_COMPRESSION_ERROR) ||
- rst_stream_status_field ==
- SerializeGoAwayStatus(version, GOAWAY_SETTINGS_TIMEOUT)) {
- return false;
- }
- */
-
- // HTTP_1_1_REQUIRED is the last valid status code.
- if (rst_stream_status_field >
- SerializeRstStreamStatus(version, RST_STREAM_HTTP_1_1_REQUIRED)) {
- return false;
- }
-
- return true;
- }
- LOG(DFATAL) << "Unhandled SPDY version " << version;
- return false;
-}
-
-SpdyRstStreamStatus SpdyConstants::ParseRstStreamStatus(
- SpdyMajorVersion version,
- int rst_stream_status_field) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- switch (rst_stream_status_field) {
- case 1:
- return RST_STREAM_PROTOCOL_ERROR;
- case 2:
- return RST_STREAM_INVALID_STREAM;
- case 3:
- return RST_STREAM_REFUSED_STREAM;
- case 4:
- return RST_STREAM_UNSUPPORTED_VERSION;
- case 5:
- return RST_STREAM_CANCEL;
- case 6:
- return RST_STREAM_INTERNAL_ERROR;
- case 7:
- return RST_STREAM_FLOW_CONTROL_ERROR;
- case 8:
- return RST_STREAM_STREAM_IN_USE;
- case 9:
- return RST_STREAM_STREAM_ALREADY_CLOSED;
- case 10:
- return RST_STREAM_INVALID_CREDENTIALS;
- case 11:
- return RST_STREAM_FRAME_TOO_LARGE;
- }
- break;
- case SPDY4:
- switch (rst_stream_status_field) {
- case 1:
- return RST_STREAM_PROTOCOL_ERROR;
- case 2:
- return RST_STREAM_INTERNAL_ERROR;
- case 3:
- return RST_STREAM_FLOW_CONTROL_ERROR;
- case 5:
- return RST_STREAM_STREAM_CLOSED;
- case 6:
- return RST_STREAM_FRAME_SIZE_ERROR;
- case 7:
- return RST_STREAM_REFUSED_STREAM;
- case 8:
- return RST_STREAM_CANCEL;
- case 10:
- return RST_STREAM_CONNECT_ERROR;
- case 11:
- return RST_STREAM_ENHANCE_YOUR_CALM;
- case 12:
- return RST_STREAM_INADEQUATE_SECURITY;
- case 13:
- return RST_STREAM_HTTP_1_1_REQUIRED;
- }
- break;
- }
-
- LOG(DFATAL) << "Invalid RST_STREAM status " << rst_stream_status_field;
- return RST_STREAM_PROTOCOL_ERROR;
-}
-
-int SpdyConstants::SerializeRstStreamStatus(
- SpdyMajorVersion version,
- SpdyRstStreamStatus rst_stream_status) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- switch (rst_stream_status) {
- case RST_STREAM_PROTOCOL_ERROR:
- return 1;
- case RST_STREAM_INVALID_STREAM:
- return 2;
- case RST_STREAM_REFUSED_STREAM:
- return 3;
- case RST_STREAM_UNSUPPORTED_VERSION:
- return 4;
- case RST_STREAM_CANCEL:
- return 5;
- case RST_STREAM_INTERNAL_ERROR:
- return 6;
- case RST_STREAM_FLOW_CONTROL_ERROR:
- return 7;
- case RST_STREAM_STREAM_IN_USE:
- return 8;
- case RST_STREAM_STREAM_ALREADY_CLOSED:
- return 9;
- case RST_STREAM_INVALID_CREDENTIALS:
- return 10;
- case RST_STREAM_FRAME_TOO_LARGE:
- return 11;
- default:
- LOG(DFATAL) << "Unhandled RST_STREAM status "
- << rst_stream_status;
- return -1;
- }
- case SPDY4:
- switch (rst_stream_status) {
- case RST_STREAM_PROTOCOL_ERROR:
- return 1;
- case RST_STREAM_INTERNAL_ERROR:
- return 2;
- case RST_STREAM_FLOW_CONTROL_ERROR:
- return 3;
- case RST_STREAM_STREAM_CLOSED:
- return 5;
- case RST_STREAM_FRAME_SIZE_ERROR:
- return 6;
- case RST_STREAM_REFUSED_STREAM:
- return 7;
- case RST_STREAM_CANCEL:
- return 8;
- case RST_STREAM_CONNECT_ERROR:
- return 10;
- case RST_STREAM_ENHANCE_YOUR_CALM:
- return 11;
- case RST_STREAM_INADEQUATE_SECURITY:
- return 12;
- case RST_STREAM_HTTP_1_1_REQUIRED:
- return 13;
- default:
- LOG(DFATAL) << "Unhandled RST_STREAM status "
- << rst_stream_status;
- return -1;
- }
- }
- LOG(DFATAL) << "Unhandled SPDY version " << version;
- return -1;
-}
-
-bool SpdyConstants::IsValidGoAwayStatus(SpdyMajorVersion version,
- int goaway_status_field) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- // GOAWAY_OK is the first valid status.
- if (goaway_status_field < SerializeGoAwayStatus(version, GOAWAY_OK)) {
- return false;
- }
-
- // GOAWAY_INTERNAL_ERROR is the last valid status.
- if (goaway_status_field > SerializeGoAwayStatus(version,
- GOAWAY_INTERNAL_ERROR)) {
- return false;
- }
-
- return true;
- case SPDY4:
- // GOAWAY_NO_ERROR is the first valid status.
- if (goaway_status_field < SerializeGoAwayStatus(version,
- GOAWAY_NO_ERROR)) {
- return false;
- }
-
- // GOAWAY_HTTP_1_1_REQUIRED is the last valid status.
- if (goaway_status_field >
- SerializeGoAwayStatus(version, GOAWAY_HTTP_1_1_REQUIRED)) {
- return false;
- }
-
- return true;
- }
- LOG(DFATAL) << "Unknown SpdyMajorVersion " << version;
- return false;
-}
-
-SpdyGoAwayStatus SpdyConstants::ParseGoAwayStatus(SpdyMajorVersion version,
- int goaway_status_field) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- switch (goaway_status_field) {
- case 0:
- return GOAWAY_OK;
- case 1:
- return GOAWAY_PROTOCOL_ERROR;
- case 2:
- return GOAWAY_INTERNAL_ERROR;
- }
- break;
- case SPDY4:
- switch (goaway_status_field) {
- case 0:
- return GOAWAY_NO_ERROR;
- case 1:
- return GOAWAY_PROTOCOL_ERROR;
- case 2:
- return GOAWAY_INTERNAL_ERROR;
- case 3:
- return GOAWAY_FLOW_CONTROL_ERROR;
- case 4:
- return GOAWAY_SETTINGS_TIMEOUT;
- case 5:
- return GOAWAY_STREAM_CLOSED;
- case 6:
- return GOAWAY_FRAME_SIZE_ERROR;
- case 7:
- return GOAWAY_REFUSED_STREAM;
- case 8:
- return GOAWAY_CANCEL;
- case 9:
- return GOAWAY_COMPRESSION_ERROR;
- case 10:
- return GOAWAY_CONNECT_ERROR;
- case 11:
- return GOAWAY_ENHANCE_YOUR_CALM;
- case 12:
- return GOAWAY_INADEQUATE_SECURITY;
- case 13:
- return GOAWAY_HTTP_1_1_REQUIRED;
- }
- break;
- }
-
- LOG(DFATAL) << "Unhandled GOAWAY status " << goaway_status_field;
- return GOAWAY_PROTOCOL_ERROR;
-}
-
-SpdyMajorVersion SpdyConstants::ParseMajorVersion(int version_number) {
- switch (version_number) {
- case 2:
- return SPDY2;
- case 3:
- return SPDY3;
- case 4:
- return SPDY4;
- default:
- LOG(DFATAL) << "Unsupported SPDY version number: " << version_number;
- return SPDY3;
- }
-}
-
-int SpdyConstants::SerializeMajorVersion(SpdyMajorVersion version) {
- switch (version) {
- case SPDY2:
- return 2;
- case SPDY3:
- return 3;
- case SPDY4:
- return 4;
- default:
- LOG(DFATAL) << "Unsupported SPDY major version: " << version;
- return -1;
- }
-}
-
-std::string SpdyConstants::GetVersionString(SpdyMajorVersion version) {
- switch (version) {
- case SPDY2:
- return "spdy/2";
- case SPDY3:
- return "spdy/3";
- case SPDY4:
- return "h2-14";
- default:
- LOG(DFATAL) << "Unsupported SPDY major version: " << version;
- return "spdy/3";
- }
-}
-
-int SpdyConstants::SerializeGoAwayStatus(SpdyMajorVersion version,
- SpdyGoAwayStatus status) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- // TODO(jgraettinger): Merge this back to server-side.
- switch (status) {
- case GOAWAY_NO_ERROR:
- return 0;
- case GOAWAY_PROTOCOL_ERROR:
- case GOAWAY_INTERNAL_ERROR:
- case GOAWAY_FLOW_CONTROL_ERROR:
- case GOAWAY_SETTINGS_TIMEOUT:
- case GOAWAY_STREAM_CLOSED:
- case GOAWAY_FRAME_SIZE_ERROR:
- case GOAWAY_REFUSED_STREAM:
- case GOAWAY_CANCEL:
- case GOAWAY_COMPRESSION_ERROR:
- case GOAWAY_CONNECT_ERROR:
- case GOAWAY_ENHANCE_YOUR_CALM:
- case GOAWAY_INADEQUATE_SECURITY:
- case GOAWAY_HTTP_1_1_REQUIRED:
- return 1; // PROTOCOL_ERROR.
- default:
- LOG(DFATAL) << "Serializing unhandled GOAWAY status " << status;
- return -1;
- }
- case SPDY4:
- switch (status) {
- case GOAWAY_NO_ERROR:
- return 0;
- case GOAWAY_PROTOCOL_ERROR:
- return 1;
- case GOAWAY_INTERNAL_ERROR:
- return 2;
- case GOAWAY_FLOW_CONTROL_ERROR:
- return 3;
- case GOAWAY_SETTINGS_TIMEOUT:
- return 4;
- case GOAWAY_STREAM_CLOSED:
- return 5;
- case GOAWAY_FRAME_SIZE_ERROR:
- return 6;
- case GOAWAY_REFUSED_STREAM:
- return 7;
- case GOAWAY_CANCEL:
- return 8;
- case GOAWAY_COMPRESSION_ERROR:
- return 9;
- case GOAWAY_CONNECT_ERROR:
- return 10;
- case GOAWAY_ENHANCE_YOUR_CALM:
- return 11;
- case GOAWAY_INADEQUATE_SECURITY:
- return 12;
- case GOAWAY_HTTP_1_1_REQUIRED:
- return 13;
- default:
- LOG(DFATAL) << "Serializing unhandled GOAWAY status " << status;
- return -1;
- }
- }
- LOG(DFATAL) << "Unknown SpdyMajorVersion " << version;
- return -1;
-}
-
-size_t SpdyConstants::GetDataFrameMinimumSize(SpdyMajorVersion version) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- return 8;
- case SPDY4:
- return 9;
- }
- LOG(DFATAL) << "Unhandled SPDY version.";
- return 0;
-}
-
-size_t SpdyConstants::GetControlFrameHeaderSize(SpdyMajorVersion version) {
- switch (version) {
- case SPDY2:
- case SPDY3:
- return 8;
- case SPDY4:
- return 9;
- }
- LOG(DFATAL) << "Unhandled SPDY version.";
- return 0;
-}
-
-size_t SpdyConstants::GetPrefixLength(SpdyFrameType type,
- SpdyMajorVersion version) {
- if (type != DATA) {
- return GetControlFrameHeaderSize(version);
- } else {
- return GetDataFrameMinimumSize(version);
- }
-}
-
-size_t SpdyConstants::GetFrameMaximumSize(SpdyMajorVersion version) {
- if (version < SPDY4) {
- // 24-bit length field plus eight-byte frame header.
- return ((1<<24) - 1) + 8;
- } else {
- // Max payload of 2^14 plus nine-byte frame header.
- // TODO(mlavan): In HTTP/2 this is actually not a constant;
- // payload size can be set using the MAX_FRAME_SIZE setting to
- // anything between 1 << 14 and (1 << 24) - 1
- return (1 << 14) + 9;
- }
-}
-
-size_t SpdyConstants::GetSizeOfSizeField(SpdyMajorVersion version) {
- return (version < SPDY3) ? sizeof(uint16) : sizeof(uint32);
-}
-
-size_t SpdyConstants::GetSettingSize(SpdyMajorVersion version) {
- return version <= SPDY3 ? 8 : 6;
-}
-
-int32 SpdyConstants::GetInitialStreamWindowSize(SpdyMajorVersion version) {
- return (version <= SPDY3) ? (64 * 1024) : (64 * 1024 - 1);
-}
-
-int32 SpdyConstants::GetInitialSessionWindowSize(SpdyMajorVersion version) {
- return (version <= SPDY3) ? (64 * 1024) : (64 * 1024 - 1);
-}
-
-void SpdyDataIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitData(*this);
-}
-
-void SpdySynStreamIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitSynStream(*this);
-}
-
-void SpdySynReplyIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitSynReply(*this);
-}
-
-SpdyRstStreamIR::SpdyRstStreamIR(SpdyStreamId stream_id,
- SpdyRstStreamStatus status,
- base::StringPiece description)
- : SpdyFrameWithStreamIdIR(stream_id),
- description_(description) {
- set_status(status);
-}
-
-SpdyRstStreamIR::~SpdyRstStreamIR() {}
-
-void SpdyRstStreamIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitRstStream(*this);
-}
-
-SpdySettingsIR::SpdySettingsIR()
- : clear_settings_(false),
- is_ack_(false) {}
-
-SpdySettingsIR::~SpdySettingsIR() {}
-
-void SpdySettingsIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitSettings(*this);
-}
-
-void SpdyPingIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitPing(*this);
-}
-
-SpdyGoAwayIR::SpdyGoAwayIR(SpdyStreamId last_good_stream_id,
- SpdyGoAwayStatus status,
- const base::StringPiece& description)
- : description_(description) {
- set_last_good_stream_id(last_good_stream_id);
- set_status(status);
-}
-
-SpdyGoAwayIR::~SpdyGoAwayIR() {}
-
-const base::StringPiece& SpdyGoAwayIR::description() const {
- return description_;
-}
-
-void SpdyGoAwayIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitGoAway(*this);
-}
-
-void SpdyHeadersIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitHeaders(*this);
-}
-
-void SpdyWindowUpdateIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitWindowUpdate(*this);
-}
-
-void SpdyBlockedIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitBlocked(*this);
-}
-
-void SpdyPushPromiseIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitPushPromise(*this);
-}
-
-void SpdyContinuationIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitContinuation(*this);
-}
-
-SpdyAltSvcIR::SpdyAltSvcIR(SpdyStreamId stream_id)
- : SpdyFrameWithStreamIdIR(stream_id),
- max_age_(0),
- port_(0) {}
-
-void SpdyAltSvcIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitAltSvc(*this);
-}
-
-SpdyPriorityIR::SpdyPriorityIR(SpdyStreamId stream_id)
- : SpdyFrameWithStreamIdIR(stream_id) {
-}
-
-SpdyPriorityIR::SpdyPriorityIR(SpdyStreamId stream_id,
- SpdyStreamId parent_stream_id,
- uint8 weight,
- bool exclusive)
- : SpdyFrameWithStreamIdIR(stream_id),
- parent_stream_id_(parent_stream_id),
- weight_(weight),
- exclusive_(exclusive) {
-}
-
-void SpdyPriorityIR::Visit(SpdyFrameVisitor* visitor) const {
- return visitor->VisitPriority(*this);
-}
-
-} // namespace net
« no previous file with comments | « net/spdy/spdy_protocol.h ('k') | net/spdy/spdy_protocol_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698