summaryrefslogtreecommitdiff
path: root/packages/binutils/2.24/0001-dont-segv-on-initial-instructions-overflow.patch
diff options
context:
space:
mode:
authorChris Packham <judge.packham@gmail.com>2021-09-21 07:46:06 (GMT)
committerChris Packham <judge.packham@gmail.com>2021-09-21 09:24:31 (GMT)
commitfa992b41918a1dbf05f6830ba659f4ea6ffc5ffa (patch)
tree576b68e374538c4dedb835cff6f55a72f67f8f1f /packages/binutils/2.24/0001-dont-segv-on-initial-instructions-overflow.patch
parent836fb9165234e50a07094b2c11938c17f92cd356 (diff)
binutils: Remove obsolete versions
The following versions were marked obsolete in crosstool-ng-1.24.0, remove them. - binutils-linaro-2.23.2-2013.10-4 - binutils-linaro-2.24.0-2014.11-2 - binutils-linaro-2.25.0-2015.01-2 - binutils-2.23.2 - binutils-2.24 - binutils-2.25.1 Adjust the milestones now that the old versions have been removed. Signed-off-by: Chris Packham <judge.packham@gmail.com>
Diffstat (limited to 'packages/binutils/2.24/0001-dont-segv-on-initial-instructions-overflow.patch')
-rw-r--r--packages/binutils/2.24/0001-dont-segv-on-initial-instructions-overflow.patch68
1 files changed, 0 insertions, 68 deletions
diff --git a/packages/binutils/2.24/0001-dont-segv-on-initial-instructions-overflow.patch b/packages/binutils/2.24/0001-dont-segv-on-initial-instructions-overflow.patch
deleted file mode 100644
index 02c56b3..0000000
--- a/packages/binutils/2.24/0001-dont-segv-on-initial-instructions-overflow.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From: Alan Modra <amodra@gmail.com>
-Date: Fri, 20 Dec 2013 13:27:52 +0000 (+1030)
-Subject: Don't segv on cie.initial_instructions[] overflow.
-X-Git-Tag: gdb-7.7-release~148
-X-Git-Url: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff_plain;h=99d190fac4d2aab238cfc798dc5c28ab41456882
-
-Don't segv on cie.initial_instructions[] overflow.
-
-Don't attempt to merge CIEs with a larger number of insns than will
-fit in the buffer.
-
- * elf-eh-frame.c (cie_eq): Return false when initial_insn_length
- is too large.
- (cie_compute_hash): Don't exceed bounds of initial_instructions.
- (_bfd_elf_parse_eh_frame): Always set initial_insn_length, and
- save as much of insns to initial_instructions[] as will fit.
----
-
----
- bfd/elf-eh-frame.c | 16 ++++++++++------
- 1 file changed, 10 insertions(+), 6 deletions(-)
-
---- a/bfd/elf-eh-frame.c
-+++ b/bfd/elf-eh-frame.c
-@@ -235,6 +235,7 @@
- && c1->lsda_encoding == c2->lsda_encoding
- && c1->fde_encoding == c2->fde_encoding
- && c1->initial_insn_length == c2->initial_insn_length
-+ && c1->initial_insn_length <= sizeof (c1->initial_instructions)
- && memcmp (c1->initial_instructions,
- c2->initial_instructions,
- c1->initial_insn_length) == 0)
-@@ -254,6 +255,7 @@
- cie_compute_hash (struct cie *c)
- {
- hashval_t h = 0;
-+ size_t len;
- h = iterative_hash_object (c->length, h);
- h = iterative_hash_object (c->version, h);
- h = iterative_hash (c->augmentation, strlen (c->augmentation) + 1, h);
-@@ -267,7 +269,10 @@
- h = iterative_hash_object (c->lsda_encoding, h);
- h = iterative_hash_object (c->fde_encoding, h);
- h = iterative_hash_object (c->initial_insn_length, h);
-- h = iterative_hash (c->initial_instructions, c->initial_insn_length, h);
-+ len = c->initial_insn_length;
-+ if (len > sizeof (c->initial_instructions))
-+ len = sizeof (c->initial_instructions);
-+ h = iterative_hash (c->initial_instructions, len, h);
- c->hash = h;
- return h;
- }
-@@ -762,11 +767,10 @@
- cie->fde_encoding = DW_EH_PE_absptr;
-
- initial_insn_length = end - buf;
-- if (initial_insn_length <= sizeof (cie->initial_instructions))
-- {
-- cie->initial_insn_length = initial_insn_length;
-- memcpy (cie->initial_instructions, buf, initial_insn_length);
-- }
-+ cie->initial_insn_length = initial_insn_length;
-+ memcpy (cie->initial_instructions, buf,
-+ initial_insn_length <= sizeof (cie->initial_instructions)
-+ ? initial_insn_length : sizeof (cie->initial_instructions));
- insns = buf;
- buf += initial_insn_length;
- ENSURE_NO_RELOCS (buf);