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

Side by Side Diff: net/websockets/websocket_stream.h

Issue 177403002: net::WebSocketChannel should reject reserved bits (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Fix typo. Created 6 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
« no previous file with comments | « net/websockets/websocket_channel_test.cc ('k') | no next file » | 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 #ifndef NET_WEBSOCKETS_WEBSOCKET_STREAM_H_ 5 #ifndef NET_WEBSOCKETS_WEBSOCKET_STREAM_H_
6 #define NET_WEBSOCKETS_WEBSOCKET_STREAM_H_ 6 #define NET_WEBSOCKETS_WEBSOCKET_STREAM_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 // If the connection is closed in the middle of receiving an incomplete frame, 127 // If the connection is closed in the middle of receiving an incomplete frame,
128 // ReadFrames may discard the incomplete frame. Since the renderer will 128 // ReadFrames may discard the incomplete frame. Since the renderer will
129 // discard any incomplete messages when the connection is closed, this makes 129 // discard any incomplete messages when the connection is closed, this makes
130 // no difference to the overall semantics. 130 // no difference to the overall semantics.
131 // 131 //
132 // Implementations of ReadFrames() must be able to handle being deleted during 132 // Implementations of ReadFrames() must be able to handle being deleted during
133 // the execution of callback.Run(). In practice this means that the method 133 // the execution of callback.Run(). In practice this means that the method
134 // calling callback.Run() (and any calling methods in the same object) must 134 // calling callback.Run() (and any calling methods in the same object) must
135 // return immediately without any further method calls or access to member 135 // return immediately without any further method calls or access to member
136 // variables. Implementors should write test(s) for this case. 136 // variables. Implementors should write test(s) for this case.
137 //
138 // Extensions which use reserved header bits should clear them when they are
139 // set correctly. If the reserved header bits are set incorrectly, it is okay
140 // to leave it to the caller to report the error.
137 virtual int ReadFrames(ScopedVector<WebSocketFrame>* frames, 141 virtual int ReadFrames(ScopedVector<WebSocketFrame>* frames,
138 const CompletionCallback& callback) = 0; 142 const CompletionCallback& callback) = 0;
139 143
140 // Writes WebSocket frame data. 144 // Writes WebSocket frame data.
141 // 145 //
142 // |frames| must be valid until the operation completes or Close() is called. 146 // |frames| must be valid until the operation completes or Close() is called.
143 // 147 //
144 // This function must not be called while a previous call of WriteFrames() is 148 // This function must not be called while a previous call of WriteFrames() is
145 // still pending. 149 // still pending.
146 // 150 //
(...skipping 29 matching lines...) Expand all
176 protected: 180 protected:
177 WebSocketStream(); 181 WebSocketStream();
178 182
179 private: 183 private:
180 DISALLOW_COPY_AND_ASSIGN(WebSocketStream); 184 DISALLOW_COPY_AND_ASSIGN(WebSocketStream);
181 }; 185 };
182 186
183 } // namespace net 187 } // namespace net
184 188
185 #endif // NET_WEBSOCKETS_WEBSOCKET_STREAM_H_ 189 #endif // NET_WEBSOCKETS_WEBSOCKET_STREAM_H_
OLDNEW
« no previous file with comments | « net/websockets/websocket_channel_test.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698