Ismaël Mejía created AVRO-4285:
----------------------------------

             Summary: [c++] Enforce a maximum decompressed block size
                 Key: AVRO-4285
                 URL: https://issues.apache.org/jira/browse/AVRO-4285
             Project: Apache Avro
          Issue Type: Sub-task
          Components: c++
    Affects Versions: 1.13.0
            Reporter: Ismaël Mejía


{{DataFileReaderBase::readDataBlock()}} in {{lang/c++/impl/DataFile.cc}} 
decompresses deflate/snappy blocks into a buffer that grows without an upper 
bound, and {{lang/c++/impl/ZstdDecompressWrapper.cc}} trusts the zstd frame 
content size. The existing {{BoundedInputStream}} bounds only the compressed 
input, not the decompressed output.

Enforce a configurable maximum decompressed size across the codecs before/while 
growing the output buffer, and fail decoding with a clear error when exceeded. 
Add a test with a high-ratio block.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to