[html5] r5179 - [] (0) Allow implementation differences that are only observable as differences [...]

whatwg at whatwg.org whatwg at whatwg.org
Thu Jul 22 00:21:57 PDT 2010


Author: ianh
Date: 2010-07-22 00:21:56 -0700 (Thu, 22 Jul 2010)
New Revision: 5179

Modified:
   complete.html
   source
Log:
[] (0) Allow implementation differences that are only observable as differences in when the connection terminates, with no semantic difference.

Modified: complete.html
===================================================================
--- complete.html	2010-07-22 06:52:55 UTC (rev 5178)
+++ complete.html	2010-07-22 07:21:56 UTC (rev 5179)
@@ -73660,8 +73660,30 @@
 
    </li>
 
-  </ol><h6 id=data-framing><span class=secno>10.3.4.4.2 </span>Data framing</h6>
+  </ol><p>Where the algorithm above requires that a user agent <a href=#fail-the-websocket-connection>fail
+  the WebSocket connection</a>, the user agent may first read an
+  arbitrary number of further bytes from the connection (and then
+  discard them) before actually <a href=#fail-the-websocket-connection title="fail the WebSocket
+  connection">failing the WebSocket connection</a>. Similarly, if a
+  user agent can show that the bytes read from the connection so far
+  are such that there is no subsequent sequence of bytes that the
+  server can send that would not result in the user agent being
+  required to <a href=#fail-the-websocket-connection>fail the WebSocket connection</a>, the user
+  agent may immediately <a href=#fail-the-websocket-connection>fail the WebSocket connection</a>
+  without waiting for those bytes.</p>
 
+  <p class=note>The previous paragraph is intended to make it
+  conforming for user agents to implement the algorithm in subtlely
+  different ways that are equivalent in all ways except that they
+  terminate the connection at earlier or later points. For example, it
+  enables an implementation to buffer the entire handshake response
+  before checking it, or to verify each field as it is received rather
+  than collecting all the fields and then checking them as a
+  block.</p>
+
+
+  <h6 id=data-framing><span class=secno>10.3.4.4.2 </span>Data framing</h6>
+
   <p>Once a <a href=#websocket-connection-is-established>WebSocket connection is established</a>, the user
   agent must run through the following state machine for the bytes
   sent by the server. If at any point during these steps a read is
@@ -74563,7 +74585,6 @@
   connection</a> arbitrarily.</p>
 
 
-
   <h5 id=security-considerations><span class=secno>10.3.4.7 </span>Security considerations</h5>
 
   <p>While this protocol is intended to be used by scripts in Web

Modified: source
===================================================================
--- source	2010-07-22 06:52:55 UTC (rev 5178)
+++ source	2010-07-22 07:21:56 UTC (rev 5179)
@@ -82890,7 +82890,28 @@
 
   </ol>
 
+  <p>Where the algorithm above requires that a user agent <span>fail
+  the WebSocket connection</span>, the user agent may first read an
+  arbitrary number of further bytes from the connection (and then
+  discard them) before actually <span title="fail the WebSocket
+  connection">failing the WebSocket connection</span>. Similarly, if a
+  user agent can show that the bytes read from the connection so far
+  are such that there is no subsequent sequence of bytes that the
+  server can send that would not result in the user agent being
+  required to <span>fail the WebSocket connection</span>, the user
+  agent may immediately <span>fail the WebSocket connection</span>
+  without waiting for those bytes.</p>
 
+  <p class="note">The previous paragraph is intended to make it
+  conforming for user agents to implement the algorithm in subtlely
+  different ways that are equivalent in all ways except that they
+  terminate the connection at earlier or later points. For example, it
+  enables an implementation to buffer the entire handshake response
+  before checking it, or to verify each field as it is received rather
+  than collecting all the fields and then checking them as a
+  block.</p>
+
+
   <h6>Data framing</h6>
 
   <p>Once a <span>WebSocket connection is established</span>, the user
@@ -83930,7 +83951,6 @@
   connection</span> arbitrarily.</p>
 
 
-
   <h5>Security considerations</h5>
 
   <p>While this protocol is intended to be used by scripts in Web




More information about the Commit-Watchers mailing list