Author: markt
Date: Mon Feb 20 23:42:13 2012
New Revision: 1291522
URL: http://svn.apache.org/viewvc?rev=1291522&view=rev
Log:
Ensure control frames are not fragmented
Modified:
tomcat/trunk/java/org/apache/catalina/websocket/StreamInbound.java
Modified: tomcat/trunk/java/org/apache/catalina/websocket/StreamInbound.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/websocket/StreamInbound.java?rev=1291522&r1=1291521&r2=1291522&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/websocket/StreamInbound.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/websocket/StreamInbound.java Mon Feb
20 23:42:13 2012
@@ -67,8 +67,10 @@ public abstract class StreamInbound impl
return SocketState.UPGRADED;
}
- // Must be a control from and they have limited pay load length
- if (wsIs.getPayloadLength() > 125) {
+ // Must be a control frame and control frames:
+ // - have a limited payload length
+ // - must not be fragmented
+ if (wsIs.getPayloadLength() > 125 || !wsIs.getFrameHeader().getFin()) {
getOutbound().close(1002, null);
return SocketState.CLOSED;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]