$NetBSD: patch-CVE-2017-17969,v 1.1 2019/07/18 10:03:26 nia Exp $ Fix CVE-2017-17969 - heap-based buffer overflow From https://sourceforge.net/p/p7zip/bugs/204/ --- CPP/7zip/Compress/ShrinkDecoder.cpp.orig 2016-05-18 17:31:02.000000000 +0000 +++ CPP/7zip/Compress/ShrinkDecoder.cpp @@ -121,8 +121,13 @@ HRESULT CDecoder::CodeReal(ISequentialIn { _stack[i++] = _suffixes[cur]; cur = _parents[cur]; + if (cur >= kNumItems || i >= kNumItems) + break; } - + + if (cur >= kNumItems || i >= kNumItems) + break; + _stack[i++] = (Byte)cur; lastChar2 = (Byte)cur;