From 722c61d4f4ce2a756e28c85a079d1f6bba201c12 Mon Sep 17 00:00:00 2001 From: Armin Kuster Date: Sun, 26 Nov 2017 11:42:46 -0800 Subject: [PATCH] binutils: Security fix CVE-2017-7223 Affects <= 2.28 (From OE-Core rev: 04ca81f0539a7549d4c527377c8a05b396247220) Signed-off-by: Armin Kuster Signed-off-by: Richard Purdie --- .../binutils/binutils-2.28.inc | 1 + .../binutils/binutils/CVE-2017-7223.patch | 52 +++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 meta/recipes-devtools/binutils/binutils/CVE-2017-7223.patch diff --git a/meta/recipes-devtools/binutils/binutils-2.28.inc b/meta/recipes-devtools/binutils/binutils-2.28.inc index 40b518bf7a..f09bcdc4c1 100644 --- a/meta/recipes-devtools/binutils/binutils-2.28.inc +++ b/meta/recipes-devtools/binutils/binutils-2.28.inc @@ -43,6 +43,7 @@ SRC_URI = "\ file://CVE-2017-6969_2.patch \ file://CVE-2017-7209.patch \ file://CVE-2017-7210.patch \ + file://CVE-2017-7223.patch \ " S = "${WORKDIR}/git" diff --git a/meta/recipes-devtools/binutils/binutils/CVE-2017-7223.patch b/meta/recipes-devtools/binutils/binutils/CVE-2017-7223.patch new file mode 100644 index 0000000000..c78c8bf00a --- /dev/null +++ b/meta/recipes-devtools/binutils/binutils/CVE-2017-7223.patch @@ -0,0 +1,52 @@ +From 69ace2200106348a1b00d509a6a234337c104c17 Mon Sep 17 00:00:00 2001 +From: Nick Clifton +Date: Thu, 1 Dec 2016 15:20:19 +0000 +Subject: [PATCH] Fix seg fault attempting to unget an EOF character. + + PR gas/20898 + * app.c (do_scrub_chars): Do not attempt to unget EOF. + +Affects: <= 2.28 +Upstream-Status: Backport +CVE: CVE-2017-7223 +Signed-off-by: Armin Kuster + +--- + gas/ChangeLog | 3 +++ + gas/app.c | 2 +- + 2 files changed, 4 insertions(+), 1 deletion(-) + +Index: git/gas/ChangeLog +=================================================================== +--- git.orig/gas/ChangeLog ++++ git/gas/ChangeLog +@@ -1,3 +1,8 @@ ++2016-12-01 Nick Clifton ++ ++ PR gas/20898 ++ * app.c (do_scrub_chars): Do not attempt to unget EOF. ++ + 2017-03-02 Tristan Gingold + + * configure: Regenerate. +@@ -198,7 +203,6 @@ + * config/tc-pru.c (md_number_to_chars): Fix parameter to be + valueT, as declared in tc.h. + (md_apply_fix): Fix to work on 32-bit hosts. +->>>>>>> 0115611... RISC-V/GAS: Correct branch relaxation for weak symbols. + + 2017-01-02 Alan Modra + +Index: git/gas/app.c +=================================================================== +--- git.orig/gas/app.c ++++ git/gas/app.c +@@ -1350,7 +1350,7 @@ do_scrub_chars (size_t (*get) (char *, s + PUT (ch); + break; + } +- else ++ else if (ch2 != EOF) + { + state = 9; + if (ch == EOF || !IS_SYMBOL_COMPONENT (ch))