summaryrefslogtreecommitdiffstats
path: root/vespalib/src/tests/compress/compress_test.cpp
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-11-19 14:00:19 +0100
committerGitHub <noreply@github.com>2023-11-19 14:00:19 +0100
commitf08f64eefbe294f7997d87d23bffed3ba60ba3f9 (patch)
tree9e187f5e52dea54619d601a2c8961c7d920322e1 /vespalib/src/tests/compress/compress_test.cpp
parenta1ca91a552fc679977eeae348c4822dd6f2d4acc (diff)
parent15e5129e06c8c17fc171125768ee60419801ef1e (diff)
Merge pull request #29377 from vespa-engine/toregge/avoid-reading-beyond-end-of-stack-dump-bufferv8.261.39
Avoid reading beyond end of stack dump buffer.
Diffstat (limited to 'vespalib/src/tests/compress/compress_test.cpp')
-rw-r--r--vespalib/src/tests/compress/compress_test.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/vespalib/src/tests/compress/compress_test.cpp b/vespalib/src/tests/compress/compress_test.cpp
index 04f71d5cc18..c4383a1c193 100644
--- a/vespalib/src/tests/compress/compress_test.cpp
+++ b/vespalib/src/tests/compress/compress_test.cpp
@@ -26,6 +26,9 @@ CompressTest::verifyPositiveNumber(uint64_t n, const uint8_t * expected, size_t
for (size_t i(0); i < sz; i++) {
EXPECT_EQUAL(expected[i], buf[i]);
}
+ EXPECT_FALSE(Integer::check_decompress_positive_space(expected, 0u));
+ EXPECT_FALSE(Integer::check_decompress_positive_space(expected, sz - 1));
+ EXPECT_TRUE(Integer::check_decompress_positive_space(expected, sz));
uint64_t v(0);
EXPECT_EQUAL(sz, Integer::decompressPositive(v, expected));
EXPECT_EQUAL(n, v);
@@ -39,6 +42,9 @@ CompressTest::verifyNumber(int64_t n, const uint8_t * expected, size_t sz) {
for (size_t i(0); i < sz; i++) {
EXPECT_EQUAL(expected[i], buf[i]);
}
+ EXPECT_FALSE(Integer::check_decompress_space(expected, 0u));
+ EXPECT_FALSE(Integer::check_decompress_space(expected, sz - 1));
+ EXPECT_TRUE(Integer::check_decompress_space(expected, sz));
int64_t v(0);
EXPECT_EQUAL(sz, Integer::decompress(v, expected));
EXPECT_EQUAL(n, v);