binutils: CVE-2017-7223

Source: git://sourceware.org/git/binutils-gdb.git
MR: 74322
Type: Security Fix
Disposition: Backport from binutils-2_29-branch
ChangeID: c7e14cdaab09996e736a6294834d3470ac9ddb6c
Description:

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.29

(From OE-Core rev: b35c5c25947daf47b5cbccd8836e22234baa6f0f)

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>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Thiruvadi Rajaraman
2017-09-04 13:52:14 +05:30
committed by Richard Purdie
parent 281b2e20bf
commit 39722ae3c6
2 changed files with 41 additions and 0 deletions

View File

@@ -59,6 +59,7 @@ SRC_URI = "\
file://CVE-2017-12451.patch \
file://CVE-2017-12450_12452_12453_12454_12456_1.patch \
file://CVE-2017-12450_12452_12453_12454_12456.patch \
file://CVE-2017-7223.patch \
"
S = "${WORKDIR}/git"

View File

@@ -0,0 +1,40 @@
commit 69ace2200106348a1b00d509a6a234337c104c17
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Dec 1 15:20:19 2016 +0000
Fix seg fault attempting to unget an EOF character.
PR gas/20898
* app.c (do_scrub_chars): Do not attempt to unget EOF.
Upstream-Status: backport
CVE: CVE-2017-7223
Signed-off-by: Thiruvadi Rajaraman <trajaraman@mvista.com>
Index: git/gas/ChangeLog
===================================================================
--- git.orig/gas/ChangeLog 2017-09-04 12:42:08.941602299 +0530
+++ git/gas/ChangeLog 2017-09-04 12:48:28.863820763 +0530
@@ -1,3 +1,8 @@
+2016-12-01 Nick Clifton <nickc@redhat.com>
+
+ PR gas/20898
+ * app.c (do_scrub_chars): Do not attempt to unget EOF.
+
2016-08-05 Nick Clifton <nickc@redhat.com>
PR gas/20364
Index: git/gas/app.c
===================================================================
--- git.orig/gas/app.c 2017-09-04 12:42:05.261580103 +0530
+++ git/gas/app.c 2017-09-04 12:47:19.923428673 +0530
@@ -1187,7 +1187,7 @@
state = -2;
break;
}
- else
+ else if (ch2 != EOF)
{
UNGET (ch2);
}