diff options
author | Joakim Erdfelt | 2016-01-29 19:46:58 +0000 |
---|---|---|
committer | Joakim Erdfelt | 2016-01-29 19:46:58 +0000 |
commit | 2902a134637f6c638ee76859324035c82e2583fe (patch) | |
tree | 6b6b0d84061eca62970e03cedaabfa08c4d3a6ab | |
parent | 14ec878d420986c7411a9ebef316a3aaa08546f1 (diff) | |
download | org.eclipse.jetty.project-2902a134637f6c638ee76859324035c82e2583fe.tar.gz org.eclipse.jetty.project-2902a134637f6c638ee76859324035c82e2583fe.tar.xz org.eclipse.jetty.project-2902a134637f6c638ee76859324035c82e2583fe.zip |
485469 - permessage-deflate extension causes protocol error in Firefox/Chrome
+ Ensure that CONTINUATION frames are marked without RSV1 bit set
during all code paths for permessage-deflate
2 files changed, 4 insertions, 0 deletions
diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/BinaryFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/BinaryFrame.java index b237b541e3..b7c930b2c7 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/BinaryFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/BinaryFrame.java @@ -51,6 +51,8 @@ public class BinaryFrame extends DataFrame @Override public Type getType() { + if (getOpCode() == OpCode.CONTINUATION) + return Type.CONTINUATION; return Type.BINARY; } } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/TextFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/TextFrame.java index 6fc40b8f63..8aeb325315 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/TextFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/TextFrame.java @@ -34,6 +34,8 @@ public class TextFrame extends DataFrame @Override public Type getType() { + if (getOpCode() == OpCode.CONTINUATION) + return Type.CONTINUATION; return Type.TEXT; } |