]> code.ossystems Code Review - openembedded-core.git/commitdiff
binutils: CVE-2017-9747
authorThiruvadi Rajaraman <trajaraman@mvista.com>
Thu, 21 Sep 2017 13:47:24 +0000 (19:17 +0530)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sun, 7 Jan 2018 17:09:47 +0000 (17:09 +0000)
Source: binutils-gdb.git
MR: 74036
Type: Security Fix
Disposition: Backport from binutils-2_29
ChangeID: b25bffca0b51e9c13ba752534b64bd28a147a135
Description:

Fix address violation parsing a corrupt ieee binary.

PR binutils/21581
  (ieee_archive_p): Use a static buffer to avoid compiler bugs.

Affects: <= 2.28
Author: Nick Clifton <nickc@redhat.com>
Signed-off-by: Thiruvadi Rajaraman <trajaraman@mvista.com>
Reviewed-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
meta/recipes-devtools/binutils/binutils-2.27.inc
meta/recipes-devtools/binutils/binutils/CVE-2017-9747.patch [new file with mode: 0644]

index cb745b13ba40b6e92995c175314246b3cc2ca95e..24d4d5999e1ad56ec32a19a447fa2af0f621e453 100644 (file)
@@ -82,6 +82,7 @@ SRC_URI = "\
      file://CVE-2017-9749.patch \
      file://CVE-2017-9746.patch \
      file://CVE-2017-9748.patch \
+     file://CVE-2017-9747.patch \
 "
 S  = "${WORKDIR}/git"
 
diff --git a/meta/recipes-devtools/binutils/binutils/CVE-2017-9747.patch b/meta/recipes-devtools/binutils/binutils/CVE-2017-9747.patch
new file mode 100644 (file)
index 0000000..ee663b8
--- /dev/null
@@ -0,0 +1,40 @@
+commit 62b76e4b6e0b4cb5b3e0053d1de4097b32577049
+Author: Nick Clifton <nickc@redhat.com>
+Date:   Thu Jun 15 13:08:47 2017 +0100
+
+    Fix address violation parsing a corrupt ieee binary.
+    
+       PR binutils/21581
+       (ieee_archive_p): Use a static buffer to avoid compiler bugs.
+
+Upstream-Status: Backport
+
+CVE: CVE-2017-9747
+Signed-off-by: Thiruvadi Rajaraman <trajaraman@mvista.com>
+
+Index: git/bfd/ieee.c
+===================================================================
+--- git.orig/bfd/ieee.c        2017-09-21 14:37:12.152903139 +0530
++++ git/bfd/ieee.c     2017-09-21 14:37:12.208903477 +0530
+@@ -1353,7 +1353,7 @@
+ {
+   char *library;
+   unsigned int i;
+-  unsigned char buffer[512];
++  static unsigned char buffer[512];
+   file_ptr buffer_offset = 0;
+   ieee_ar_data_type *save = abfd->tdata.ieee_ar_data;
+   ieee_ar_data_type *ieee;
+Index: git/bfd/ChangeLog
+===================================================================
+--- git.orig/bfd/ChangeLog     2017-09-21 14:37:12.152903139 +0530
++++ git/bfd/ChangeLog  2017-09-21 14:45:57.020150977 +0530
+@@ -78,6 +78,8 @@
+        PR binutils/21582
+        * ieee.c (ieee_object_p): Use a static buffer to avoid compiler
+        bugs.
++       PR binutils/21581
++       (ieee_archive_p): Likewise.
+ 2017-04-29  Alan Modra  <amodra@gmail.com>