Changeset 108439 in webkit
- Timestamp:
- Feb 21, 2012 8:26:26 PM (12 years ago)
- Location:
- trunk
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r108427 r108439 1 2012-02-21 Kenichi Ishibashi <bashi@chromium.org> 2 3 Rename "reserved1" flag of WebSocketFrame to compress 4 https://bugs.webkit.org/show_bug.cgi?id=79187 5 6 Reviewed by Kent Tamura. 7 8 * http/tests/websocket/tests/hybi/reserved-bits-expected.txt: Revised to follow the change in meaning rsv1 bit. 9 * http/tests/websocket/tests/hybi/reserved-bits.html: Ditto. 10 1 11 2012-02-21 Gavin Barraclough <barraclough@apple.com> 2 12 -
trunk/LayoutTests/http/tests/websocket/tests/hybi/reserved-bits-expected.txt
r104803 r108439 1 CONSOLE MESSAGE: One or more reserved bits are on: reserved1 = 1, reserved2 = 0, reserved3 = 0 2 CONSOLE MESSAGE: One or more reserved bits are on: reserved1 = 0, reserved2 = 1, reserved3 = 0 3 CONSOLE MESSAGE: One or more reserved bits are on: reserved1 = 0, reserved2 = 0, reserved3 = 1 1 CONSOLE MESSAGE: One or more reserved bits are on: reserved2 = 1, reserved3 = 0 2 CONSOLE MESSAGE: One or more reserved bits are on: reserved2 = 0, reserved3 = 1 4 3 Test whether WebSocket rejects frames whose reserved bit is on. 5 4 6 5 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". 7 6 8 Bit 1: Test started.9 onopen() was called.10 onclose() was called.11 PASS closeEvent.wasClean is false12 7 Bit 2: Test started. 13 8 onopen() was called. -
trunk/LayoutTests/http/tests/websocket/tests/hybi/reserved-bits.html
r99258 r108439 16 16 var closeEvent; 17 17 18 // bitNumber must be 1, 2,or 3.18 // bitNumber must be 2 or 3. 19 19 function doTest(bitNumber) 20 20 { … … 47 47 } 48 48 49 doTest( 1);49 doTest(2); 50 50 51 51 </script> -
trunk/Source/WebCore/ChangeLog
r108438 r108439 1 2012-02-21 Kenichi Ishibashi <bashi@chromium.org> 2 3 Rename "reserved1" flag of WebSocketFrame to compress 4 https://bugs.webkit.org/show_bug.cgi?id=79187 5 6 WebSocket deflate-frame extension draft specification defines COMP bit. 7 http://tools.ietf.org/html/draft-tyoshino-hybi-websocket-perframe-deflate-05#page-11 8 9 Reviewed by Kent Tamura. 10 11 No new tests. http/tests/websocket/tests/hybi/reserved-bits.html is revised to follow the change. 12 13 * websockets/WebSocketChannel.cpp: 14 (WebCore): 15 (WebCore::WebSocketChannel::parseFrame): "reserved1" renamed "compress". 16 (WebCore::WebSocketChannel::processFrame): Removed reserved1 flag check. 17 (WebCore::makeFrameData): 18 (WebCore::WebSocketChannel::sendFrame): 19 * websockets/WebSocketFrame.h: "reserved1" flag renamed "compress". 20 (WebCore::WebSocketFrame::WebSocketFrame): 21 (WebSocketFrame): 22 1 23 2012-02-21 Yael Aharon <yael.aharon@nokia.com> 2 24 -
trunk/Source/WebCore/websockets/WebSocketChannel.cpp
r108240 r108439 71 71 // Constants for hybi-10 frame format. 72 72 const unsigned char finalBit = 0x80; 73 const unsigned char reserved1Bit = 0x40;73 const unsigned char compressBit = 0x40; 74 74 const unsigned char reserved2Bit = 0x20; 75 75 const unsigned char reserved3Bit = 0x10; … … 548 548 549 549 bool final = firstByte & finalBit; 550 bool reserved1 = firstByte & reserved1Bit;550 bool compress = firstByte & compressBit; 551 551 bool reserved2 = firstByte & reserved2Bit; 552 552 bool reserved3 = firstByte & reserved3Bit; … … 597 597 frame.opCode = static_cast<WebSocketFrame::OpCode>(opCode); 598 598 frame.final = final; 599 frame. reserved1 = reserved1;599 frame.compress = compress; 600 600 frame.reserved2 = reserved2; 601 601 frame.reserved3 = reserved3; … … 625 625 } 626 626 627 if (frame.reserved 1 || frame.reserved2 || frame.reserved3) {628 fail("One or more reserved bits are on: reserved 1 = " + String::number(frame.reserved1) + ", reserved2 = " + String::number(frame.reserved2) + ", reserved3 = " + String::number(frame.reserved3));627 if (frame.reserved2 || frame.reserved3) { 628 fail("One or more reserved bits are on: reserved2 = " + String::number(frame.reserved2) + ", reserved3 = " + String::number(frame.reserved3)); 629 629 return false; 630 630 } … … 980 980 { 981 981 unsigned char firstByte = (frame.final ? finalBit : 0) | frame.opCode; 982 if (frame.compress) 983 firstByte |= compressBit; 982 984 frameData.append(firstByte); 983 985 if (frame.payloadLength <= maxPayloadLengthWithoutExtendedLengthField) … … 1009 1011 1010 1012 ASSERT(!(opCode & ~opCodeMask)); // Checks whether "opCode" fits in the range of opCodes. 1011 WebSocketFrame frame(opCode, true, true, data, dataLength);1013 WebSocketFrame frame(opCode, true, false, true, data, dataLength); 1012 1014 Vector<char> frameData; 1013 1015 makeFrameData(frame, frameData); -
trunk/Source/WebCore/websockets/WebSocketFrame.h
r108240 r108439 52 52 static bool isReservedOpCode(OpCode opCode) { return !isNonControlOpCode(opCode) && !isControlOpCode(opCode); } 53 53 54 WebSocketFrame(OpCode opCode = OpCodeInvalid, bool final = false, bool masked = false, const char* payload = 0, size_t payloadLength = 0)54 WebSocketFrame(OpCode opCode = OpCodeInvalid, bool final = false, bool compress = false, bool masked = false, const char* payload = 0, size_t payloadLength = 0) 55 55 : opCode(opCode) 56 56 , final(final) 57 , reserved1(false)57 , compress(compress) 58 58 , reserved2(false) 59 59 , reserved3(false) … … 66 66 OpCode opCode; 67 67 bool final; 68 bool reserved1;68 bool compress; 69 69 bool reserved2; 70 70 bool reserved3;
Note: See TracChangeset
for help on using the changeset viewer.