diff options
Diffstat (limited to 'meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch')
-rw-r--r-- | meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch b/meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch new file mode 100644 index 0000000000..42fa68caeb --- /dev/null +++ b/meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | From 2c8c83b9731ff822fad6cc8c670ea5519c366a14 Mon Sep 17 00:00:00 2001 | ||
2 | From: Joerg Sonnenberger <joerg@bec.de> | ||
3 | Date: Thu, 19 Jul 2018 21:14:53 +0200 | ||
4 | Subject: [PATCH] Reject LHA archive entries with negative size. | ||
5 | |||
6 | CVE: CVE-2017-14503 | ||
7 | Upstream-Status: Backport [https://github.com/libarchive/libarchive/commit/2c8c83b9731ff822fad6cc8c670ea5519c366a14] | ||
8 | |||
9 | Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com> | ||
10 | --- | ||
11 | libarchive/archive_read_support_format_lha.c | 6 ++++++ | ||
12 | 1 file changed, 6 insertions(+) | ||
13 | |||
14 | diff --git a/libarchive/archive_read_support_format_lha.c b/libarchive/archive_read_support_format_lha.c | ||
15 | index b8ef4ae1..95c99bb1 100644 | ||
16 | --- a/libarchive/archive_read_support_format_lha.c | ||
17 | +++ b/libarchive/archive_read_support_format_lha.c | ||
18 | @@ -701,6 +701,12 @@ archive_read_format_lha_read_header(struct archive_read *a, | ||
19 | * Prepare variables used to read a file content. | ||
20 | */ | ||
21 | lha->entry_bytes_remaining = lha->compsize; | ||
22 | + if (lha->entry_bytes_remaining < 0) { | ||
23 | + archive_set_error(&a->archive, | ||
24 | + ARCHIVE_ERRNO_FILE_FORMAT, | ||
25 | + "Invalid LHa entry size"); | ||
26 | + return (ARCHIVE_FATAL); | ||
27 | + } | ||
28 | lha->entry_offset = 0; | ||
29 | lha->entry_crc_calculated = 0; | ||
30 | |||
31 | -- | ||
32 | 2.13.3 | ||
33 | |||