| Index: net/websockets/websocket_channel.cc
|
| diff --git a/net/websockets/websocket_channel.cc b/net/websockets/websocket_channel.cc
|
| index a9600986ecb382bca810cab968dff410158fa533..dc8eb8aa35c463c2d65649800e5f525fbf9eb5a3 100644
|
| --- a/net/websockets/websocket_channel.cc
|
| +++ b/net/websockets/websocket_channel.cc
|
| @@ -653,6 +653,12 @@ ChannelState WebSocketChannel::HandleFrame(
|
| kWebSocketErrorProtocolError,
|
| "Control message with FIN bit unset received");
|
| }
|
| + if (frame->header.reserved1 || frame->header.reserved2 ||
|
| + frame->header.reserved3) {
|
| + return FailChannel("Received a frame with an invalid reserved bit set.",
|
| + kWebSocketErrorProtocolError,
|
| + "Invalid reserved bit");
|
| + }
|
|
|
| // Respond to the frame appropriately to its type.
|
| return HandleFrameByState(
|
|
|