1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-08 17:19:20 +00:00

unzip: refresh patches

The patch tool will apply patches by default with "fuzz", which is where if the
hunk context isn't present but what is there is close enough, it will force the
patch in.

Whilst this is useful when there's just whitespace changes, when applied to
source it is possible for a patch applied with fuzz to produce broken code which
still compiles (see #10450).  This is obviously bad.

We'd like to eventually have do_patch() rejecting any fuzz on these grounds. For
that to be realistic the existing patches with fuzz need to be rebased and
reviewed.

(From OE-Core rev: b45ce6dbbd459ecc96eae76b5695927dbda1dbb4)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton
2017-11-15 16:45:42 +00:00
committed by Richard Purdie
parent d8de33b0c2
commit a6ca00f2af
@@ -9,9 +9,11 @@ CVE: CVE-2014-8140
Signed-off-by: Roy Li <rongqing.li@windriver.com>
--- a/extract.c
+++ b/extract.c
@@ -2232,10 +2232,17 @@
Index: unzip60/extract.c
===================================================================
--- unzip60.orig/extract.c
+++ unzip60/extract.c
@@ -2233,10 +2233,17 @@ static int test_compr_eb(__G__ eb, eb_si
if (compr_offset < 4) /* field is not compressed: */
return PK_OK; /* do nothing and signal OK */
@@ -30,5 +32,5 @@ Signed-off-by: Roy Li <rongqing.li@windriver.com>
+ ((eb_ucsize > 0L) && (eb_size <= (compr_offset + EB_CMPRHEADLEN))))
+ return IZ_EF_TRUNC; /* no/bad compressed data! */
if (
#ifdef INT_16BIT
method = makeword(eb + (EB_HEADSIZE + compr_offset));
if ((method == STORED) &&