From f9a2021fd501a1871e5940ad3a21b2ecfcdbb09c Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Sat, 26 Jul 2014 13:36:31 -0500 Subject: [PATCH] lz_hash_chains.c: Avoid buffer overrun if min_match_len > 3 --- src/lz_hash_chains.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lz_hash_chains.c b/src/lz_hash_chains.c index b6304d73..46ea8130 100644 --- a/src/lz_hash_chains.c +++ b/src/lz_hash_chains.c @@ -178,7 +178,7 @@ lz_hc_get_matches(struct lz_mf *_mf, struct lz_match matches[]) u32 hash; u32 cur_match; - if (unlikely(bytes_remaining <= LZ_HC_HASH_BYTES)) + if (unlikely(bytes_remaining <= mf->base.params.min_match_len)) goto out; /* Insert the current position into the appropriate hash chain and set @@ -263,7 +263,7 @@ lz_hc_skip_position(struct lz_hc *mf) const u32 bytes_remaining = lz_mf_get_bytes_remaining(&mf->base); u32 hash; - if (bytes_remaining <= LZ_HC_HASH_BYTES) + if (unlikely(bytes_remaining <= mf->base.params.min_match_len)) goto out; hash = mf->next_hash; -- 2.43.0