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

Side by Side Diff: net/spdy/spdy_protocol.h

Issue 12258005: Remove SpdyWindowUpdateControlFrame. Useful in SPDY 4 development. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 10 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/spdy/spdy_framer_test.cc ('k') | net/spdy/spdy_protocol_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 // This file contains some protocol structures for use with Spdy. 5 // This file contains some protocol structures for use with Spdy.
6 6
7 #ifndef NET_SPDY_SPDY_PROTOCOL_H_ 7 #ifndef NET_SPDY_SPDY_PROTOCOL_H_
8 #define NET_SPDY_SPDY_PROTOCOL_H_ 8 #define NET_SPDY_SPDY_PROTOCOL_H_
9 9
10 #include <limits> 10 #include <limits>
(...skipping 505 matching lines...) Expand 10 before | Expand all | Expand 10 after
516 // Variable data here. 516 // Variable data here.
517 // proof data 517 // proof data
518 // for each certificate: unit32 certificate_len + certificate_data[i] 518 // for each certificate: unit32 certificate_len + certificate_data[i]
519 }; 519 };
520 520
521 // A HEADERS Control Frame structure. 521 // A HEADERS Control Frame structure.
522 struct SpdyHeadersControlFrameBlock : SpdyFrameBlock { 522 struct SpdyHeadersControlFrameBlock : SpdyFrameBlock {
523 SpdyStreamId stream_id_; 523 SpdyStreamId stream_id_;
524 }; 524 };
525 525
526 // A WINDOW_UPDATE Control Frame structure
527 struct SpdyWindowUpdateControlFrameBlock : SpdyFrameBlock {
528 SpdyStreamId stream_id_;
529 uint32 delta_window_size_;
530 };
531
532 #pragma pack(pop) 526 #pragma pack(pop)
533 527
534 class SpdyFrame; 528 class SpdyFrame;
535 typedef SpdyFrame SpdySerializedFrame; 529 typedef SpdyFrame SpdySerializedFrame;
536 530
537 class SpdyFramer; 531 class SpdyFramer;
538 class SpdyFrameBuilder; 532 class SpdyFrameBuilder;
539 533
540 // Intermediate representation for SPDY frames. 534 // Intermediate representation for SPDY frames.
541 // TODO(hkhalil): Rename this class to SpdyFrame when the existing SpdyFrame is 535 // TODO(hkhalil): Rename this class to SpdyFrame when the existing SpdyFrame is
(...skipping 648 matching lines...) Expand 10 before | Expand all | Expand 10 after
1190 private: 1184 private:
1191 const struct SpdyHeadersControlFrameBlock* block() const { 1185 const struct SpdyHeadersControlFrameBlock* block() const {
1192 return static_cast<SpdyHeadersControlFrameBlock*>(frame_); 1186 return static_cast<SpdyHeadersControlFrameBlock*>(frame_);
1193 } 1187 }
1194 struct SpdyHeadersControlFrameBlock* mutable_block() { 1188 struct SpdyHeadersControlFrameBlock* mutable_block() {
1195 return static_cast<SpdyHeadersControlFrameBlock*>(frame_); 1189 return static_cast<SpdyHeadersControlFrameBlock*>(frame_);
1196 } 1190 }
1197 DISALLOW_COPY_AND_ASSIGN(SpdyHeadersControlFrame); 1191 DISALLOW_COPY_AND_ASSIGN(SpdyHeadersControlFrame);
1198 }; 1192 };
1199 1193
1200 // A WINDOW_UPDATE frame.
1201 class SpdyWindowUpdateControlFrame : public SpdyControlFrame {
1202 public:
1203 SpdyWindowUpdateControlFrame() : SpdyControlFrame(size()) {}
1204 SpdyWindowUpdateControlFrame(char* data, bool owns_buffer)
1205 : SpdyControlFrame(data, owns_buffer) {}
1206
1207 SpdyStreamId stream_id() const {
1208 return ntohl(block()->stream_id_) & kStreamIdMask;
1209 }
1210
1211 uint32 delta_window_size() const {
1212 return ntohl(block()->delta_window_size_);
1213 }
1214
1215 void set_delta_window_size(uint32 delta_window_size) {
1216 mutable_block()->delta_window_size_ = htonl(delta_window_size);
1217 }
1218
1219 // Returns the size of the SpdyWindowUpdateControlFrameBlock structure.
1220 // Note: this is not the size of the SpdyWindowUpdateControlFrame class.
1221 static size_t size() { return sizeof(SpdyWindowUpdateControlFrameBlock); }
1222
1223 private:
1224 const struct SpdyWindowUpdateControlFrameBlock* block() const {
1225 return static_cast<SpdyWindowUpdateControlFrameBlock*>(frame_);
1226 }
1227 struct SpdyWindowUpdateControlFrameBlock* mutable_block() {
1228 return static_cast<SpdyWindowUpdateControlFrameBlock*>(frame_);
1229 }
1230
1231 DISALLOW_COPY_AND_ASSIGN(SpdyWindowUpdateControlFrame);
1232 };
1233
1234 } // namespace net 1194 } // namespace net
1235 1195
1236 #endif // NET_SPDY_SPDY_PROTOCOL_H_ 1196 #endif // NET_SPDY_SPDY_PROTOCOL_H_
OLDNEW
« no previous file with comments | « net/spdy/spdy_framer_test.cc ('k') | net/spdy/spdy_protocol_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698