leerho opened a new pull request, #538: URL: https://github.com/apache/datasketches-cpp/pull/538
Following #536, this applies the same kind of input validation to more deserializers, so that malformed or truncated serialized sketches are rejected with an exception before any field is read or used: - **VarOpt union:** require the full non-empty preamble before reading it. - **Count-Min:** include the preamble in the size check, and compute the table size in 64 bits. - **Compact Theta, serial version 4:** compute the packed data size in 64 bits, and validate the entry-bits and num-entries-bytes header fields, for both byte and stream deserialization. - **CPC:** validate `lg_k`, the coupon count and the number of table entries; bound decoding by the size of the compressed data; check decoded row and column indices; check the input size before allocating. Each change has regression tests. All test suites pass, including under AddressSanitizer. This is the last change planned for 5.3.0. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
