mirror of
https://git.yoctoproject.org/poky
synced 2026-03-11 17:59:39 +01:00
affects <= 2.29.1 (From OE-Core rev: 47c3add5dcc7a29d4647da2c0ad86d756323aa8f) Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
54 lines
1.5 KiB
Diff
54 lines
1.5 KiB
Diff
From a26a013f22a19e2c16729e64f40ef8a7dfcc086e Mon Sep 17 00:00:00 2001
|
|
From: Alan Modra <amodra@gmail.com>
|
|
Date: Sun, 24 Sep 2017 17:10:14 +0930
|
|
Subject: [PATCH] PR22191, memory leak in dwarf2.c
|
|
|
|
table->sequences is a linked list before it is replaced by a bfd_alloc
|
|
array in sort_line_sequences.
|
|
|
|
PR 22191
|
|
* dwarf2.c (decode_line_info): Properly free line sequences on error.
|
|
|
|
Upstream-Status: Backport
|
|
Affects: <= 2.29.1
|
|
CVE: CVE-2017-14930
|
|
Signed-off-by: Armin Kuster <akuster@mvista.com>
|
|
|
|
---
|
|
bfd/ChangeLog | 5 +++++
|
|
bfd/dwarf2.c | 8 ++++++--
|
|
2 files changed, 11 insertions(+), 2 deletions(-)
|
|
|
|
Index: git/bfd/dwarf2.c
|
|
===================================================================
|
|
--- git.orig/bfd/dwarf2.c
|
|
+++ git/bfd/dwarf2.c
|
|
@@ -2473,8 +2473,12 @@ decode_line_info (struct comp_unit *unit
|
|
return table;
|
|
|
|
fail:
|
|
- if (table->sequences != NULL)
|
|
- free (table->sequences);
|
|
+ while (table->sequences != NULL)
|
|
+ {
|
|
+ struct line_sequence* seq = table->sequences;
|
|
+ table->sequences = table->sequences->prev_sequence;
|
|
+ free (seq);
|
|
+ }
|
|
if (table->files != NULL)
|
|
free (table->files);
|
|
if (table->dirs != NULL)
|
|
Index: git/bfd/ChangeLog
|
|
===================================================================
|
|
--- git.orig/bfd/ChangeLog
|
|
+++ git/bfd/ChangeLog
|
|
@@ -1,3 +1,8 @@
|
|
+2017-09-24 Alan Modra <amodra@gmail.com>
|
|
+
|
|
+ PR 22191
|
|
+ * dwarf2.c (decode_line_info): Properly free line sequences on error.
|
|
+
|
|
2017-11-28 Nick Clifton <nickc@redhat.com>
|
|
|
|
PR 22507
|