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

Side by Side Diff: net/quic/core/frames/quic_frame.cc

Issue 2747443002: Landing recent QUIC changes until Sun Mar 5 09:18:09 2017 +0000 (Closed)
Patch Set: Created 3 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2016 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 #include "net/quic/core/frames/quic_frame.h" 5 #include "net/quic/core/frames/quic_frame.h"
6 #include "net/quic/platform/api/quic_logging.h" 6 #include "net/quic/platform/api/quic_logging.h"
7 7
8 using std::string; 8 using std::string;
9 9
10 namespace net { 10 namespace net {
(...skipping 25 matching lines...) Expand all
36 36
37 QuicFrame::QuicFrame(QuicGoAwayFrame* frame) 37 QuicFrame::QuicFrame(QuicGoAwayFrame* frame)
38 : type(GOAWAY_FRAME), goaway_frame(frame) {} 38 : type(GOAWAY_FRAME), goaway_frame(frame) {}
39 39
40 QuicFrame::QuicFrame(QuicWindowUpdateFrame* frame) 40 QuicFrame::QuicFrame(QuicWindowUpdateFrame* frame)
41 : type(WINDOW_UPDATE_FRAME), window_update_frame(frame) {} 41 : type(WINDOW_UPDATE_FRAME), window_update_frame(frame) {}
42 42
43 QuicFrame::QuicFrame(QuicBlockedFrame* frame) 43 QuicFrame::QuicFrame(QuicBlockedFrame* frame)
44 : type(BLOCKED_FRAME), blocked_frame(frame) {} 44 : type(BLOCKED_FRAME), blocked_frame(frame) {}
45 45
46 QuicFrame::QuicFrame(QuicPathCloseFrame* frame)
47 : type(PATH_CLOSE_FRAME), path_close_frame(frame) {}
48
49 void DeleteFrames(QuicFrames* frames) { 46 void DeleteFrames(QuicFrames* frames) {
50 for (QuicFrame& frame : *frames) { 47 for (QuicFrame& frame : *frames) {
51 switch (frame.type) { 48 switch (frame.type) {
52 // Frames smaller than a pointer are inlined, so don't need to be deleted. 49 // Frames smaller than a pointer are inlined, so don't need to be deleted.
53 case PADDING_FRAME: 50 case PADDING_FRAME:
54 case MTU_DISCOVERY_FRAME: 51 case MTU_DISCOVERY_FRAME:
55 case PING_FRAME: 52 case PING_FRAME:
56 break; 53 break;
57 case STREAM_FRAME: 54 case STREAM_FRAME:
58 delete frame.stream_frame; 55 delete frame.stream_frame;
(...skipping 12 matching lines...) Expand all
71 break; 68 break;
72 case GOAWAY_FRAME: 69 case GOAWAY_FRAME:
73 delete frame.goaway_frame; 70 delete frame.goaway_frame;
74 break; 71 break;
75 case BLOCKED_FRAME: 72 case BLOCKED_FRAME:
76 delete frame.blocked_frame; 73 delete frame.blocked_frame;
77 break; 74 break;
78 case WINDOW_UPDATE_FRAME: 75 case WINDOW_UPDATE_FRAME:
79 delete frame.window_update_frame; 76 delete frame.window_update_frame;
80 break; 77 break;
81 case PATH_CLOSE_FRAME:
82 delete frame.path_close_frame;
83 break;
84 case NUM_FRAME_TYPES: 78 case NUM_FRAME_TYPES:
85 DCHECK(false) << "Cannot delete type: " << frame.type; 79 DCHECK(false) << "Cannot delete type: " << frame.type;
86 } 80 }
87 } 81 }
88 frames->clear(); 82 frames->clear();
89 } 83 }
90 84
91 void RemoveFramesForStream(QuicFrames* frames, QuicStreamId stream_id) { 85 void RemoveFramesForStream(QuicFrames* frames, QuicStreamId stream_id) {
92 QuicFrames::iterator it = frames->begin(); 86 QuicFrames::iterator it = frames->begin();
93 while (it != frames->end()) { 87 while (it != frames->end()) {
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 break; 134 break;
141 } 135 }
142 case PING_FRAME: { 136 case PING_FRAME: {
143 os << "type { PING_FRAME } "; 137 os << "type { PING_FRAME } ";
144 break; 138 break;
145 } 139 }
146 case MTU_DISCOVERY_FRAME: { 140 case MTU_DISCOVERY_FRAME: {
147 os << "type { MTU_DISCOVERY_FRAME } "; 141 os << "type { MTU_DISCOVERY_FRAME } ";
148 break; 142 break;
149 } 143 }
150 case PATH_CLOSE_FRAME: {
151 os << "type { PATH_CLOSE_FRAME } " << *(frame.path_close_frame);
152 break;
153 }
154 default: { 144 default: {
155 QUIC_LOG(ERROR) << "Unknown frame type: " << frame.type; 145 QUIC_LOG(ERROR) << "Unknown frame type: " << frame.type;
156 break; 146 break;
157 } 147 }
158 } 148 }
159 return os; 149 return os;
160 } 150 }
161 151
162 } // namespace net 152 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698