- From: Simon Pieters <simonp@opera.com>
- Date: Fri, 07 May 2010 11:53:04 +0200
establish a WebSocket connection [[ 28. Read bytes from the server until either the connection closes, or a 0x0A byte is read. Let field be these bytes, including the 0x0A byte. If field is not at least seven bytes long, or if the last two bytes aren't 0x0D and 0x0A respectively, or if it does not contain at least two 0x20 bytes, then fail the WebSocket connection and abort these steps. User agents may apply a timeout to this step, failing the WebSocket connection if the server does not send back data in a suitable time period. 29. Let code be the substring of field that starts from the byte after the first 0x20 byte, and ends with the byte before the second 0x20 byte. ]] This makes it possible for servers to include 0x0D bytes before and after the status code, and potentially trick broken clients that aren't so fuzzy with new lines to misinterpret the handshake. Maybe we should read ahead to the first 0x0D byte and check if the next byte is 0x0A instead. -- Simon Pieters Opera Software
Received on Friday, 7 May 2010 02:53:04 UTC