From ad73ab0250cd0a45de71100bd7f221146ef02097 Mon Sep 17 00:00:00 2001 From: Dominik Loidolt <dominik.loidolt@univie.ac.at> Date: Mon, 19 Feb 2024 12:54:53 +0100 Subject: [PATCH] Prevent buffer overflow in chunk compression --- lib/icu_compress/cmp_icu.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/icu_compress/cmp_icu.c b/lib/icu_compress/cmp_icu.c index 1423c2c..05a47e7 100644 --- a/lib/icu_compress/cmp_icu.c +++ b/lib/icu_compress/cmp_icu.c @@ -2678,6 +2678,8 @@ int32_t compress_chunk(void *chunk, uint32_t chunk_size, debug_print("Error: The chunk contains collections with an incompatible mix of subservices.\n"); return -1; } + if (read_bytes + cmp_col_get_size(col) > chunk_size) + break; cmp_size_byte = cmp_collection((uint8_t *)col, col_model, col_up_model, dst, dst_capacity, &cfg, cmp_size_byte); -- GitLab