mhlakhani opened a new pull request, #3205:
URL: https://github.com/apache/thrift/pull/3205

   <!-- Explain the changes in the pull request below: -->
   
   Fix a CI test issue exposed by OSS-fuzz integration in 
https://github.com/google/oss-fuzz/pull/13874
   
   I can reproduce this with the oss-fuzz build (by setting UBSan flags 
locally). I do not know why the issue only shows up then, but this fix is 
correct - the method signatures are the same as the Compact protocol factory. 
The factory is supposed to not be passed any argument, or the arguments that 
are passed should be the limits. This manifested as the below failure:
   
   ```
   2025-08-26T18:20:18.9632418Z /usr/local/bin/python test/thrift_TSerializer.py
   2025-08-26T18:20:19.0144330Z .E..
   2025-08-26T18:20:19.0145197Z 
======================================================================
   2025-08-26T18:20:19.0146549Z ERROR: test_TBinaryProtocolAccelerated 
(__main__.TestSerializer.test_TBinaryProtocolAccelerated)
   2025-08-26T18:20:19.0148344Z 
----------------------------------------------------------------------
   2025-08-26T18:20:19.0149187Z Traceback (most recent call last):
   2025-08-26T18:20:19.0158543Z   File 
"/src/thrift/lib/py/test/thrift_TSerializer.py", line 68, in 
test_TBinaryProtocolAccelerated
   2025-08-26T18:20:19.0159474Z     self.verify(self.binary_serialized, factory)
   2025-08-26T18:20:19.0160254Z   File 
"/src/thrift/lib/py/test/thrift_TSerializer.py", line 50, in verify
   2025-08-26T18:20:19.0160914Z     deserialize(Message(), serialized, 
factory).body,
   2025-08-26T18:20:19.0161739Z     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   2025-08-26T18:20:19.0162428Z   File 
"/src/thrift/lib/py/build/lib.linux-x86_64-cpython-311/thrift/TSerialization.py",
 line 37, in deserialize
   2025-08-26T18:20:19.0163082Z     base.read(protocol)
   2025-08-26T18:20:19.0163513Z   File 
"/src/thrift/lib/py/gen-py/TestServer/ttypes.py", line 45, in read
   2025-08-26T18:20:19.0164259Z     self.body = 
iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 
2 else iprot.readString()
   2025-08-26T18:20:19.0164897Z                                                 
                                                      ^^^^^^^^^^^^^^^^^^
   2025-08-26T18:20:19.0165620Z   File 
"/src/thrift/lib/py/build/lib.linux-x86_64-cpython-311/thrift/protocol/TProtocol.py",
 line 179, in readString
   2025-08-26T18:20:19.0166301Z     return self.readBinary().decode('utf-8')
   2025-08-26T18:20:19.0166624Z            ^^^^^^^^^^^^^^^^^
   2025-08-26T18:20:19.0167302Z   File 
"/src/thrift/lib/py/build/lib.linux-x86_64-cpython-311/thrift/protocol/TBinaryProtocol.py",
 line 234, in readBinary
   2025-08-26T18:20:19.0167990Z     self._check_string_length(size)
   2025-08-26T18:20:19.0168745Z   File 
"/src/thrift/lib/py/build/lib.linux-x86_64-cpython-311/thrift/protocol/TBinaryProtocol.py",
 line 48, in _check_string_length
   2025-08-26T18:20:19.0169531Z     
self._check_length(self.string_length_limit, length)
   2025-08-26T18:20:19.0170268Z   File 
"/src/thrift/lib/py/build/lib.linux-x86_64-cpython-311/thrift/protocol/TProtocol.py",
 line 57, in _check_length
   2025-08-26T18:20:19.0170906Z     if limit is not None and length > limit:
   2025-08-26T18:20:19.0171360Z                              ^^^^^^^^^^^^^^
   2025-08-26T18:20:19.0171764Z TypeError: '>' not supported between instances 
of 'int' and 'TBufferedTransport'
   2025-08-26T18:20:19.0172088Z 
   2025-08-26T18:20:19.0172231Z 
----------------------------------------------------------------------
   ```
   
   <!-- We recommend you review the checklist/tips before submitting a pull 
request. -->
   
   - [x] Did you create an [Apache 
Jira](https://issues.apache.org/jira/projects/THRIFT/issues/) ticket?  
([Request account here](https://selfserve.apache.org/jira-account.html), not 
required for trivial changes)
   - [ ] If a ticket exists: Does your pull request title follow the pattern 
"THRIFT-NNNN: describe my issue"?
   - [x] Did you squash your changes to a single commit?  (not required, but 
preferred)
   - [x] Did you do your best to avoid breaking changes?  If one was needed, 
did you label the Jira ticket with "Breaking-Change"?
   - [ ] If your change does not involve any code, include `[skip ci]` anywhere 
in the commit message to free up build resources.
   
   <!--
     The Contributing Guide at:
     https://github.com/apache/thrift/blob/master/CONTRIBUTING.md
     has more details and tips for committing properly.
   -->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to