[ https://issues.apache.org/jira/browse/THRIFT-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14163467#comment-14163467 ]
Konrad Grochowski commented on THRIFT-2757: ------------------------------------------- 2) sry, must lost file in commit amend - good catch, I'll upload it right away also I've made some profiling and it's true - my version is 4 times slower. I'll restore previous one > 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: Konrad Grochowski > 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)