aboutsummaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorArmin Kuster <akuster@mvista.com>2018-08-06 13:56:36 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-08-15 10:22:27 +0100
commit56d6acf145cc7550377588ca3c654d6f86143dfe (patch)
tree38a9ca3350a87be9f2067490524a20df9dae86ce /meta
parent47c3add5dcc7a29d4647da2c0ad86d756323aa8f (diff)
downloadopenembedded-core-contrib-56d6acf145cc7550377588ca3c654d6f86143dfe.tar.gz
binutls: Security fix CVE-2017-14932
Signed-off-by: Armin Kuster <akuster@mvista.com>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-devtools/binutils/binutils-2.29.1.inc1
-rw-r--r--meta/recipes-devtools/binutils/binutils/CVE-2017-14932.patch46
2 files changed, 47 insertions, 0 deletions
diff --git a/meta/recipes-devtools/binutils/binutils-2.29.1.inc b/meta/recipes-devtools/binutils/binutils-2.29.1.inc
index 9e02325662..76c5c439cb 100644
--- a/meta/recipes-devtools/binutils/binutils-2.29.1.inc
+++ b/meta/recipes-devtools/binutils/binutils-2.29.1.inc
@@ -37,6 +37,7 @@ SRC_URI = "\
file://0015-sync-with-OE-libtool-changes.patch \
file://CVE-2017-17124.patch \
file://CVE-2017-14930.patch \
+ file://CVE-2017-14932.patch \
"
S = "${WORKDIR}/git"
diff --git a/meta/recipes-devtools/binutils/binutils/CVE-2017-14932.patch b/meta/recipes-devtools/binutils/binutils/CVE-2017-14932.patch
new file mode 100644
index 0000000000..a436031dc2
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils/CVE-2017-14932.patch
@@ -0,0 +1,46 @@
+From e338894dc2e603683bed2172e8e9f25b29051005 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Tue, 26 Sep 2017 09:32:18 +0930
+Subject: [PATCH] PR22204, Lack of DW_LNE_end_sequence causes "infinite" loop
+
+ PR 22204
+ * dwarf2.c (decode_line_info): Ensure line_ptr stays within
+ bounds in inner loop.
+
+Upstream-Status: Backport
+Affects: <= 2.29.1
+CVE: CVE-2017-14932
+Signed-off-by: Armin Kuster <akuster@mvista.com>
+
+---
+ bfd/ChangeLog | 6 ++++++
+ bfd/dwarf2.c | 2 +-
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+
+Index: git/bfd/dwarf2.c
+===================================================================
+--- git.orig/bfd/dwarf2.c
++++ git/bfd/dwarf2.c
+@@ -2269,7 +2269,7 @@ decode_line_info (struct comp_unit *unit
+ bfd_vma high_pc = 0;
+
+ /* Decode the table. */
+- while (! end_sequence)
++ while (!end_sequence && line_ptr < line_end)
+ {
+ op_code = read_1_byte (abfd, line_ptr, line_end);
+ line_ptr += 1;
+Index: git/bfd/ChangeLog
+===================================================================
+--- git.orig/bfd/ChangeLog
++++ git/bfd/ChangeLog
+@@ -1,3 +1,9 @@
++2017-09-26 Alan Modra <amodra@gmail.com>
++
++ PR 22204
++ * dwarf2.c (decode_line_info): Ensure line_ptr stays within
++ bounds in inner loop.
++
+ 2017-09-24 Alan Modra <amodra@gmail.com>
+
+ PR 22191