[ https://issues.apache.org/jira/browse/THRIFT-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14164984#comment-14164984 ]
Hudson commented on THRIFT-2757: -------------------------------- SUCCESS: Integrated in Thrift #1304 (See [https://builds.apache.org/job/Thrift/1304/]) THRIFT-2757: py - fixed checkIntegerLimits in TProtocol.py (hcorg: rev 07218673b0cd4ff9e90d6c04e4a035a7881962ef) * lib/py/src/protocol/TProtocol.py > TCompactProtocol and TJSONProtocol need boundary checking > --------------------------------------------------------- > > Key: THRIFT-2757 > URL: https://issues.apache.org/jira/browse/THRIFT-2757 > Project: Thrift > Issue Type: Bug > Components: Python - Library > Affects Versions: 0.9, 0.9.1, 0.9.2, 1.0 > Reporter: Bret Curtis > Assignee: Bret Curtis > Fix For: 0.9.2 > > > On the TCompactProtocol, using i16, i32, i64 there is currently no range > checking happening and funky results will happen as makeZigZag will do its > best to handle the input. i8 (byte) is effected as it uses pack/unpack which > handles the case correctly. > I wrote a test case for this using i8, i16, i32 and i64 and the result was > that the TJSONProtocol is also effected. It instead just took whatever value > it was sent regardless of type. > I then wrote a check_boundary function to raise an exception when feed bad > values in a certain bitness. This now raises an exception for both protocols. > I also further built out the IWriteXX functions for the TJSONProtocol. -- This message was sent by Atlassian JIRA (v6.3.4#6332)