commit | e043a9ec4b91ef5373681e966753d5172d56e79f | [log] [tgz] |
---|---|---|
author | Bryan Duxbury <bryanduxbury@apache.org> | Fri May 22 20:17:04 2009 +0000 |
committer | Bryan Duxbury <bryanduxbury@apache.org> | Fri May 22 20:17:04 2009 +0000 |
tree | b3ea259c4e46697526621b95a5f21be916b1dfc1 | |
parent | 4b86e62eb6bb9230985c53c121e6aa34642162cb [diff] |
THRIFT-516. rb: If TFramedTransport reads a negative frame size, throw a TTransportException descendant instead of the default NegativeArraySizeException Throw a TTransportException when the frame size read from the wire is < 0. git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@777690 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/java/src/org/apache/thrift/transport/TFramedTransport.java b/lib/java/src/org/apache/thrift/transport/TFramedTransport.java index c83748a..3600a2b 100644 --- a/lib/java/src/org/apache/thrift/transport/TFramedTransport.java +++ b/lib/java/src/org/apache/thrift/transport/TFramedTransport.java
@@ -96,6 +96,10 @@ ((i32rd[2] & 0xff) << 8) | ((i32rd[3] & 0xff)); + if (size < 0) { + throw new TTransportException("Read a negative frame size (" + size + ")!"); + } + byte[] buff = new byte[size]; transport_.readAll(buff, 0, size); readBuffer_ = new ByteArrayInputStream(buff);