binutils.git
7 years agoMerge version 2.30-20+rpi1 and 2.30-21 to produce 2.30-21+rpi1 archive/raspbian/2.30-21+rpi1 raspbian/2.30-21+rpi1
Raspbian forward pporter [Tue, 5 Jun 2018 12:30:52 +0000 (13:30 +0100)]
Merge version 2.30-20+rpi1 and 2.30-21 to produce 2.30-21+rpi1

7 years agoMerge version 2.30-15+rpi1 and 2.30-20 to produce 2.30-20+rpi1 archive/raspbian/2.30-20+rpi1 raspbian/2.30-20+rpi1
Raspbian forward pporter [Thu, 31 May 2018 04:23:46 +0000 (05:23 +0100)]
Merge version 2.30-15+rpi1 and 2.30-20 to produce 2.30-20+rpi1

7 years agoMerge binutils (2.30-21) import into refs/heads/workingbranch
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
Merge binutils (2.30-21) import into refs/heads/workingbranch

7 years agoinfinity-notes
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
infinity-notes

# git clone https://gitlab.com/gbenson/binutils-gdb.git gdb/src
# git diff 1f1c02597cc199227226251a2ea51fe5f44b4d6d ec7642f5d7ba9bdbc35f08f3ffa3c360bd4618d0

Gbp-Pq: Name infinity-notes.diff

7 years agopr23056
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr23056

# DP: Fix PR gprof/23056, memory corruption in gprof.

bfd/

2018-04-23  Nick Clifton  <nickc@redhat.com>

PR 23056
* aoutx.h (aout_get_external_symbols): Allocate an extra byte at
the end of the string table, and zero it.

Gbp-Pq: Name pr23056.diff

7 years agopr23055
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr23055

# DP: Fix PR ld/23055, memory corruption in ld.

bfd/

2018-04-17  Nick Clifton  <nickc@redhat.com>

PR 23055
* aoutx.h (find_nearest_line): Check that the symbol name exists
and is long enough, before attempting to see if it is for a .o
file.
* hash.c (bfd_hash_hash): Add an assertion that the string is not
NULL.
* linker.c (bfd_link_hash_lookup): Fail if the table or string are
NULL.
(_bfd_generic_link_add_archive_symbols): Fail if an archive entry
has no name.

2018-04-17  H.J. Lu  <hongjiu.lu@intel.com>

PR ld/23055
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Use a
normal input file with compatible relocation.

Gbp-Pq: Name pr23055.diff

7 years agopr23054
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr23054

# DP: Fix PR binutils/23054, memory corruption in as.

gas/

2018-04-16  Nick Clifton  <nickc@redhat.com>

PR 23054
* cond.c (s_ifsef): Replace use of obstack_copy with obstack_alloc
followed by memcpy.
(s_if, s_ifb, s_ifc, s_ifeqs): Likewise.
* obj-elf.c (elf_adjust_symtab): Check for local symbols before
attempting to dereference the sy_next field of a symbol.
* stabs.c (get_stab_string_offset): Fail if there is no string
following the stab directive.

Gbp-Pq: Name pr23054.diff

7 years agoaarch64-uninit-mem
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
aarch64-uninit-mem

opcodes/

2018-05-01  Tamar Christina  <tamar.christina@arm.com>

* aarch64-dis.c (aarch64_opcode_decode): Moved memory clear code.

Gbp-Pq: Name aarch64-uninit-mem.diff

7 years agoPR22770: MIPS: Fix GOT page counter in multi-got links
James Cowgill [Thu, 1 Mar 2018 11:55:18 +0000 (11:55 +0000)]
PR22770: MIPS: Fix GOT page counter in multi-got links

The record_got_page_entry function records and updates the maximum
number of GOT page entries which may be required by an object. In the
case where an existing GOT page entry was expanded, only the entry
belonging to the master GOT would have its page count updated. This leaves
the entry belonging to the object GOT with the num_pages count of 1 it
was originally initialized with. Later on when GOTs are being merged in a
multi-got link, this causes the value of entry->num_pages in
add_got_page_entries to always be 1 and underestimates the number of pages
required for the new entry. This in turn leads to an assertion failure in
get_got_page_offset where we run out of pages.

Fix by not inserting Got_page_entrys into the object's GOT at all and
later on adding the total number of page entries recorded for the
object's GOT into the new merged GOT. This is safe because
got_page_entries_ is used for no other purpose in the object's GOT, and
page_gotno_ for the object's GOT should already be incremented by the correct
amount in record_got_page_entry. Remove Got_page_entry::num_pages which
is now unused.

gold/
2018-03-01  James Cowgill  <james.cowgill@mips.com>

PR gold/22770
* mips.cc (Mips_got_info::record_got_page_entry): Don't insert
Got_page_entry for object's GOT.
(Mips_got_info::add_got_page_entries): Add all pages from from's GOT.
Rename to add_got_page_count.
(Got_page_entry): Remove num_pages.

Gbp-Pq: Name pr22770-v3.patch

7 years agopr22905
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr22905

# DP: Prevent illegal memory accesses triggered by integer overflow
# DP: when parsing corrupt DWARF information on a 32-bit host.

From d11ae95ea3403559f052903ab053f43ad7821e37 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Thu, 1 Mar 2018 16:14:08 +0000
Subject: [PATCH] Prevent illegal memory accesses triggered by integer overflow
 when parsing corrupt DWARF information on a 32-bit host.

PR 22905
* dwarf.c (display_debug_ranges): Check that the offset loaded
from the range_entry structure is valid.

Gbp-Pq: Name pr22905.diff

7 years agopr22887
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr22887

# DP: PR22887, null pointer dereference in aout_32_swap_std_reloc_out

From 116acb2c268c89c89186673a7c92620d21825b25 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Wed, 28 Feb 2018 22:09:50 +1030
Subject: [PATCH] PR22887, null pointer dereference in
 aout_32_swap_std_reloc_out

PR 22887
* aoutx.h (swap_std_reloc_in): Correct r_index bound check.

Gbp-Pq: Name pr22887.diff

7 years agopr22895
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr22895

# DP: Catch integer overflows/underflows when parsing corrupt DWARF FORM blocks.

From 12c963421d045a127c413a0722062b9932c50aa9 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 28 Feb 2018 11:50:49 +0000
Subject: [PATCH] Catch integer overflows/underflows when parsing corrupt DWARF
 FORM blocks.

PR 22895
PR 22893
* dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
pointer.  Drop unused abfd parameter.  Check the size of the block
before initialising the data field.  Return the end pointer if the
size is invalid.
(read_attribute_value): Adjust invocations of read_n_bytes.

Gbp-Pq: Name pr22895.diff

7 years agopr22894
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr22894

# DP: Fix potential integer overflow when reading corrupt dwarf1

From eef104664efb52965d85a28bc3fc7c77e52e48e2 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 28 Feb 2018 10:13:54 +0000
Subject: [PATCH] Fix potential integer overflow when reading corrupt dwarf1
 debug information.

PR 22894
* dwarf1.c (parse_die): Check the length of form blocks before
advancing the data pointer.

Gbp-Pq: Name pr22894.diff

7 years agopr22741
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr22741

# DP: PR22741, objcopy segfault on fuzzed COFF object

From eb77f6a4621795367a39cdd30957903af9dbb815 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sat, 27 Jan 2018 08:19:33 +1030
Subject: [PATCH] PR22741, objcopy segfault on fuzzed COFF object

PR 22741
* coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
range before converting to a symbol table pointer.

Gbp-Pq: Name pr22741.diff

7 years agoPrevent attempts to call strncpy with a zero-length field by chacking the size of...
Nick Clifton [Tue, 6 Feb 2018 15:48:29 +0000 (15:48 +0000)]
Prevent attempts to call strncpy with a zero-length field by chacking the size of debuglink sections.

PR 22794
* opncls.c (bfd_get_debug_link_info_1): Check the size of the
section before attempting to read it in.
(bfd_get_alt_debug_link_info): Likewise.

Gbp-Pq: Name pr22794.diff

7 years agoPR22769, crash when running 32-bit objdump on corrupted file
Alan Modra [Thu, 1 Feb 2018 07:31:00 +0000 (18:01 +1030)]
PR22769, crash when running 32-bit objdump on corrupted file

PR 22769
* objdump.c (load_specific_debug_section): Check for overflow
when adding one to section size for a string section terminator.

Gbp-Pq: Name pr22769.diff

7 years agoPR22746, crash when running 32-bit objdump on corrupted file
Alan Modra [Thu, 25 Jan 2018 11:17:41 +0000 (21:47 +1030)]
PR22746, crash when running 32-bit objdump on corrupted file

Avoid unsigned int overflow by performing bfd_size_type multiplication.

PR 22746
* elfcode.h (elf_object_p): Avoid integer overflow.

Gbp-Pq: Name pr22746.diff

7 years agopr22734
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
pr22734

# DP: Fix PR binutils/22734, taken from the trunk.

2018-01-30  Nick Clifton  <nickc@redhat.com>

PR 22734
* doc/binutils.texi (nm): Update description to point out that
zero-initialized values can also be shown as type B, b, S or s
since they can be stored in the BSS section.

Gbp-Pq: Name pr22734.diff

7 years agogold-no-keep-files-mapped
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
gold-no-keep-files-mapped

# DP: gold on 32bit archs: Release mapped files after each pass.

Gbp-Pq: Name gold-no-keep-files-mapped.diff

7 years agostrings-whitespace-arg
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
strings-whitespace-arg

binutils/

* strings.c(long_options): include-all-whitespace does not take
an extra argument.

Gbp-Pq: Name strings-whitespace-arg.diff

7 years agoi18n-fr
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
i18n-fr

===================================================================

Gbp-Pq: Name i18n-fr.diff

7 years agogold-mips
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
gold-mips

# DP: Fix gold on mips64 targets.

gold/

2016-08-09  Aurelien Jarno  <aurelien@aurel32.net>

* configure.tgt: Add mips64el*-*-*|mips64le*-*-* and mips64*-*-*.

Gbp-Pq: Name gold-mips.diff

7 years agomips64-default-n64
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
mips64-default-n64

===================================================================

Gbp-Pq: Name mips64-default-n64.diff

7 years agoaarch64-libpath
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
aarch64-libpath

===================================================================

Gbp-Pq: Name aarch64-libpath.diff

7 years agogprof-build
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
gprof-build

# DP: Fix gprof build error.

Gbp-Pq: Name gprof-build.diff

7 years ago_ld_doc_remove_xref
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_ld_doc_remove_xref

# DP: In ld.texi, remove cross reference to BFD internals documentation.

Gbp-Pq: Name 164_ld_doc_remove_xref.diff

7 years ago_gold_dummy_zoption
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_gold_dummy_zoption

# DP: let gold accept a dummy -z buildd-<random-string> option.

Gbp-Pq: Name 161_gold_dummy_zoption.diff

7 years ago_ar_scripts_with_tilde
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_ar_scripts_with_tilde

===================================================================

Gbp-Pq: Name 157_ar_scripts_with_tilde.patch

7 years ago_bfd_pic
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_bfd_pic

Gbp-Pq: Name 136_bfd_pic.patch

7 years ago_bfd_version
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_bfd_version

Gbp-Pq: Name 135_bfd_version.patch

7 years ago_ld_bootstrap_testsuite
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_ld_bootstrap_testsuite

Upstream status: proposed patch

Gbp-Pq: Name 131_ld_bootstrap_testsuite.patch

7 years ago_gold_disable_testsuite_build
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_gold_disable_testsuite_build

Upstream status: local

Gbp-Pq: Name 130_gold_disable_testsuite_build.patch

7 years ago_multiarch_libpath
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_multiarch_libpath

# DP: Add multiarch directories to linker search path for ld and gold.

Gbp-Pq: Name 129_multiarch_libpath.patch

7 years ago_ppc64_powerpc_biarch
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_ppc64_powerpc_biarch

===================================================================

Gbp-Pq: Name 128_ppc64_powerpc_biarch.patch

7 years ago_bash_in_ld_testsuite
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_bash_in_ld_testsuite

===================================================================

Gbp-Pq: Name 013_bash_in_ld_testsuite.patch

7 years ago_check_ldrunpath_length
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_check_ldrunpath_length

cases where -rpath isn't specified. (#151024)

Gbp-Pq: Name 012_check_ldrunpath_length.patch

7 years ago_better_file_error
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_better_file_error

directory. (#45832)

Gbp-Pq: Name 006_better_file_error.patch

7 years ago_gprof_see_also_monitor
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_gprof_see_also_monitor

===================================================================

Gbp-Pq: Name 003_gprof_see_also_monitor.patch

7 years ago_gprof_profile_arcs
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_gprof_profile_arcs

===================================================================

Gbp-Pq: Name 002_gprof_profile_arcs.patch

7 years ago_ld_makefile_patch
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
_ld_makefile_patch

Upstream status: N/A
Date: ??

Gbp-Pq: Name 001_ld_makefile_patch.patch

7 years agobranch-version
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
branch-version

# DP: Don't bump the version when doing distro builds

git diff e43d51b14d0039506ec42941001f3ca56387a80e 8db5daf9efe8a6174d3b10ac7bba8c178836e9ce

Gbp-Pq: Name branch-version.diff

7 years agobranch-updates
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
branch-updates

# DP: updates from the binutils-2.30 branch

# git diff 8db5daf9efe8a6174d3b10ac7bba8c178836e9ce db3a39a3f60f8fe10ec2419163348f74978f35bd

Gbp-Pq: Name branch-updates.diff

7 years agobinutils (2.30-21) unstable; urgency=medium
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
binutils (2.30-21) unstable; urgency=medium

  * Update, taken from the 2.30 branch 20180529.
    - x86-64: Add TLSDESC fields to elf_x86_lazy_plt_layout.
    - PR binutils/23199, mark section in a section group with SHF_GROUP.
    - PR ld/23194, x86: Don't set eh->local_ref to 1 for versioned symbol.
    - PR ld/23189, x86: Don't set eh->local_ref to 1 for linker defined symbols.
    - PR binutils/23199, Invalid SHT_GROUP entry leads to group confusion.
  * Fix PR gprof/23056, memory corruption in gprof. LP: #1763098.
  * Fix PR binutils/23054, memory corruption in as. LP: #1763096.
  * Fix PR ld/23055, memory corruption in ld. LP: #1763094.

[dgit import unpatched binutils 2.30-21]

7 years agoImport binutils_2.30-21.debian.tar.xz
Matthias Klose [Tue, 29 May 2018 13:46:35 +0000 (14:46 +0100)]
Import binutils_2.30-21.debian.tar.xz

[dgit import tarball binutils 2.30-21 binutils_2.30-21.debian.tar.xz]

7 years agoMerge binutils (2.30-20) import into refs/heads/workingbranch
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
Merge binutils (2.30-20) import into refs/heads/workingbranch

7 years agoinfinity-notes
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
infinity-notes

# git clone https://gitlab.com/gbenson/binutils-gdb.git gdb/src
# git diff 1f1c02597cc199227226251a2ea51fe5f44b4d6d ec7642f5d7ba9bdbc35f08f3ffa3c360bd4618d0

Gbp-Pq: Name infinity-notes.diff

7 years agoaarch64-uninit-mem
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
aarch64-uninit-mem

opcodes/

2018-05-01  Tamar Christina  <tamar.christina@arm.com>

* aarch64-dis.c (aarch64_opcode_decode): Moved memory clear code.

Gbp-Pq: Name aarch64-uninit-mem.diff

7 years agoPR22770: MIPS: Fix GOT page counter in multi-got links
James Cowgill [Thu, 1 Mar 2018 11:55:18 +0000 (11:55 +0000)]
PR22770: MIPS: Fix GOT page counter in multi-got links

The record_got_page_entry function records and updates the maximum
number of GOT page entries which may be required by an object. In the
case where an existing GOT page entry was expanded, only the entry
belonging to the master GOT would have its page count updated. This leaves
the entry belonging to the object GOT with the num_pages count of 1 it
was originally initialized with. Later on when GOTs are being merged in a
multi-got link, this causes the value of entry->num_pages in
add_got_page_entries to always be 1 and underestimates the number of pages
required for the new entry. This in turn leads to an assertion failure in
get_got_page_offset where we run out of pages.

Fix by not inserting Got_page_entrys into the object's GOT at all and
later on adding the total number of page entries recorded for the
object's GOT into the new merged GOT. This is safe because
got_page_entries_ is used for no other purpose in the object's GOT, and
page_gotno_ for the object's GOT should already be incremented by the correct
amount in record_got_page_entry. Remove Got_page_entry::num_pages which
is now unused.

gold/
2018-03-01  James Cowgill  <james.cowgill@mips.com>

PR gold/22770
* mips.cc (Mips_got_info::record_got_page_entry): Don't insert
Got_page_entry for object's GOT.
(Mips_got_info::add_got_page_entries): Add all pages from from's GOT.
Rename to add_got_page_count.
(Got_page_entry): Remove num_pages.

Gbp-Pq: Name pr22770-v3.patch

7 years agopr22905
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
pr22905

# DP: Prevent illegal memory accesses triggered by integer overflow
# DP: when parsing corrupt DWARF information on a 32-bit host.

From d11ae95ea3403559f052903ab053f43ad7821e37 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Thu, 1 Mar 2018 16:14:08 +0000
Subject: [PATCH] Prevent illegal memory accesses triggered by integer overflow
 when parsing corrupt DWARF information on a 32-bit host.

PR 22905
* dwarf.c (display_debug_ranges): Check that the offset loaded
from the range_entry structure is valid.

Gbp-Pq: Name pr22905.diff

7 years agopr22887
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
pr22887

# DP: PR22887, null pointer dereference in aout_32_swap_std_reloc_out

From 116acb2c268c89c89186673a7c92620d21825b25 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Wed, 28 Feb 2018 22:09:50 +1030
Subject: [PATCH] PR22887, null pointer dereference in
 aout_32_swap_std_reloc_out

PR 22887
* aoutx.h (swap_std_reloc_in): Correct r_index bound check.

Gbp-Pq: Name pr22887.diff

7 years agopr22895
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
pr22895

# DP: Catch integer overflows/underflows when parsing corrupt DWARF FORM blocks.

From 12c963421d045a127c413a0722062b9932c50aa9 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 28 Feb 2018 11:50:49 +0000
Subject: [PATCH] Catch integer overflows/underflows when parsing corrupt DWARF
 FORM blocks.

PR 22895
PR 22893
* dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
pointer.  Drop unused abfd parameter.  Check the size of the block
before initialising the data field.  Return the end pointer if the
size is invalid.
(read_attribute_value): Adjust invocations of read_n_bytes.

Gbp-Pq: Name pr22895.diff

7 years agopr22894
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
pr22894

# DP: Fix potential integer overflow when reading corrupt dwarf1

From eef104664efb52965d85a28bc3fc7c77e52e48e2 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 28 Feb 2018 10:13:54 +0000
Subject: [PATCH] Fix potential integer overflow when reading corrupt dwarf1
 debug information.

PR 22894
* dwarf1.c (parse_die): Check the length of form blocks before
advancing the data pointer.

Gbp-Pq: Name pr22894.diff

7 years agopr22741
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
pr22741

# DP: PR22741, objcopy segfault on fuzzed COFF object

From eb77f6a4621795367a39cdd30957903af9dbb815 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sat, 27 Jan 2018 08:19:33 +1030
Subject: [PATCH] PR22741, objcopy segfault on fuzzed COFF object

PR 22741
* coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
range before converting to a symbol table pointer.

Gbp-Pq: Name pr22741.diff

7 years agoPrevent attempts to call strncpy with a zero-length field by chacking the size of...
Nick Clifton [Tue, 6 Feb 2018 15:48:29 +0000 (15:48 +0000)]
Prevent attempts to call strncpy with a zero-length field by chacking the size of debuglink sections.

PR 22794
* opncls.c (bfd_get_debug_link_info_1): Check the size of the
section before attempting to read it in.
(bfd_get_alt_debug_link_info): Likewise.

Gbp-Pq: Name pr22794.diff

7 years agoPR22769, crash when running 32-bit objdump on corrupted file
Alan Modra [Thu, 1 Feb 2018 07:31:00 +0000 (18:01 +1030)]
PR22769, crash when running 32-bit objdump on corrupted file

PR 22769
* objdump.c (load_specific_debug_section): Check for overflow
when adding one to section size for a string section terminator.

Gbp-Pq: Name pr22769.diff

7 years agoPR22746, crash when running 32-bit objdump on corrupted file
Alan Modra [Thu, 25 Jan 2018 11:17:41 +0000 (21:47 +1030)]
PR22746, crash when running 32-bit objdump on corrupted file

Avoid unsigned int overflow by performing bfd_size_type multiplication.

PR 22746
* elfcode.h (elf_object_p): Avoid integer overflow.

Gbp-Pq: Name pr22746.diff

7 years agopr22734
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
pr22734

# DP: Fix PR binutils/22734, taken from the trunk.

2018-01-30  Nick Clifton  <nickc@redhat.com>

PR 22734
* doc/binutils.texi (nm): Update description to point out that
zero-initialized values can also be shown as type B, b, S or s
since they can be stored in the BSS section.

Gbp-Pq: Name pr22734.diff

7 years agogold-no-keep-files-mapped
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
gold-no-keep-files-mapped

# DP: gold on 32bit archs: Release mapped files after each pass.

Gbp-Pq: Name gold-no-keep-files-mapped.diff

7 years agostrings-whitespace-arg
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
strings-whitespace-arg

binutils/

* strings.c(long_options): include-all-whitespace does not take
an extra argument.

Gbp-Pq: Name strings-whitespace-arg.diff

7 years agoi18n-fr
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
i18n-fr

===================================================================

Gbp-Pq: Name i18n-fr.diff

7 years agogold-mips
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
gold-mips

# DP: Fix gold on mips64 targets.

gold/

2016-08-09  Aurelien Jarno  <aurelien@aurel32.net>

* configure.tgt: Add mips64el*-*-*|mips64le*-*-* and mips64*-*-*.

Gbp-Pq: Name gold-mips.diff

7 years agomips64-default-n64
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
mips64-default-n64

===================================================================

Gbp-Pq: Name mips64-default-n64.diff

7 years agoaarch64-libpath
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
aarch64-libpath

===================================================================

Gbp-Pq: Name aarch64-libpath.diff

7 years agogprof-build
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
gprof-build

# DP: Fix gprof build error.

Gbp-Pq: Name gprof-build.diff

7 years ago_ld_doc_remove_xref
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_ld_doc_remove_xref

# DP: In ld.texi, remove cross reference to BFD internals documentation.

Gbp-Pq: Name 164_ld_doc_remove_xref.diff

7 years ago_gold_dummy_zoption
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_gold_dummy_zoption

# DP: let gold accept a dummy -z buildd-<random-string> option.

Gbp-Pq: Name 161_gold_dummy_zoption.diff

7 years ago_ar_scripts_with_tilde
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_ar_scripts_with_tilde

===================================================================

Gbp-Pq: Name 157_ar_scripts_with_tilde.patch

7 years ago_bfd_pic
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_bfd_pic

Gbp-Pq: Name 136_bfd_pic.patch

7 years ago_bfd_version
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_bfd_version

Gbp-Pq: Name 135_bfd_version.patch

7 years ago_ld_bootstrap_testsuite
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_ld_bootstrap_testsuite

Upstream status: proposed patch

Gbp-Pq: Name 131_ld_bootstrap_testsuite.patch

7 years ago_gold_disable_testsuite_build
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_gold_disable_testsuite_build

Upstream status: local

Gbp-Pq: Name 130_gold_disable_testsuite_build.patch

7 years ago_multiarch_libpath
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_multiarch_libpath

# DP: Add multiarch directories to linker search path for ld and gold.

Gbp-Pq: Name 129_multiarch_libpath.patch

7 years ago_ppc64_powerpc_biarch
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_ppc64_powerpc_biarch

===================================================================

Gbp-Pq: Name 128_ppc64_powerpc_biarch.patch

7 years ago_bash_in_ld_testsuite
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_bash_in_ld_testsuite

===================================================================

Gbp-Pq: Name 013_bash_in_ld_testsuite.patch

7 years ago_check_ldrunpath_length
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_check_ldrunpath_length

cases where -rpath isn't specified. (#151024)

Gbp-Pq: Name 012_check_ldrunpath_length.patch

7 years ago_better_file_error
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_better_file_error

directory. (#45832)

Gbp-Pq: Name 006_better_file_error.patch

7 years ago_gprof_see_also_monitor
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_gprof_see_also_monitor

===================================================================

Gbp-Pq: Name 003_gprof_see_also_monitor.patch

7 years ago_gprof_profile_arcs
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_gprof_profile_arcs

===================================================================

Gbp-Pq: Name 002_gprof_profile_arcs.patch

7 years ago_ld_makefile_patch
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
_ld_makefile_patch

Upstream status: N/A
Date: ??

Gbp-Pq: Name 001_ld_makefile_patch.patch

7 years agobranch-version
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
branch-version

# DP: Don't bump the version when doing distro builds

git diff e43d51b14d0039506ec42941001f3ca56387a80e 8db5daf9efe8a6174d3b10ac7bba8c178836e9ce

Gbp-Pq: Name branch-version.diff

7 years agobranch-updates
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
branch-updates

# DP: updates from the binutils-2.30 branch

# git diff 8db5daf9efe8a6174d3b10ac7bba8c178836e9ce 238fb05ff029973ef20c59aef6b197bb21d941e5

Gbp-Pq: Name branch-updates.diff

7 years agobinutils (2.30-20) unstable; urgency=medium
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
binutils (2.30-20) unstable; urgency=medium

  * Update, taken from the 2.30 branch 20180516.
    - Fix PR binutils/23109, disassembly mask for vector sdot on AArch64.
    - Fix uninitialised memory acccess in COFF bfd backend.
    - Update Portuguese translations.

[dgit import unpatched binutils 2.30-20]

7 years agoImport binutils_2.30-20.debian.tar.xz
Matthias Klose [Wed, 16 May 2018 14:21:19 +0000 (15:21 +0100)]
Import binutils_2.30-20.debian.tar.xz

[dgit import tarball binutils 2.30-20 binutils_2.30-20.debian.tar.xz]

7 years agoMerge version 2.30-8+rpi1 and 2.30-15 to produce 2.30-15+rpi1 archive/raspbian/2.30-15+rpi1 raspbian/2.30-15+rpi1
Raspbian forward pporter [Tue, 17 Apr 2018 03:49:39 +0000 (04:49 +0100)]
Merge version 2.30-8+rpi1 and 2.30-15 to produce 2.30-15+rpi1

7 years agoMerge binutils (2.30-15) import into refs/heads/workingbranch
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
Merge binutils (2.30-15) import into refs/heads/workingbranch

7 years agoinfinity-notes
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
infinity-notes

# git clone https://gitlab.com/gbenson/binutils-gdb.git gdb/src
# git diff 1f1c02597cc199227226251a2ea51fe5f44b4d6d ec7642f5d7ba9bdbc35f08f3ffa3c360bd4618d0

Gbp-Pq: Name infinity-notes.diff

7 years agoPR22770: MIPS: Fix GOT page counter in multi-got links
James Cowgill [Thu, 1 Mar 2018 11:55:18 +0000 (11:55 +0000)]
PR22770: MIPS: Fix GOT page counter in multi-got links

The record_got_page_entry function records and updates the maximum
number of GOT page entries which may be required by an object. In the
case where an existing GOT page entry was expanded, only the entry
belonging to the master GOT would have its page count updated. This leaves
the entry belonging to the object GOT with the num_pages count of 1 it
was originally initialized with. Later on when GOTs are being merged in a
multi-got link, this causes the value of entry->num_pages in
add_got_page_entries to always be 1 and underestimates the number of pages
required for the new entry. This in turn leads to an assertion failure in
get_got_page_offset where we run out of pages.

Fix by not inserting Got_page_entrys into the object's GOT at all and
later on adding the total number of page entries recorded for the
object's GOT into the new merged GOT. This is safe because
got_page_entries_ is used for no other purpose in the object's GOT, and
page_gotno_ for the object's GOT should already be incremented by the correct
amount in record_got_page_entry. Remove Got_page_entry::num_pages which
is now unused.

gold/
2018-03-01  James Cowgill  <james.cowgill@mips.com>

PR gold/22770
* mips.cc (Mips_got_info::record_got_page_entry): Don't insert
Got_page_entry for object's GOT.
(Mips_got_info::add_got_page_entries): Add all pages from from's GOT.
Rename to add_got_page_count.
(Got_page_entry): Remove num_pages.

Gbp-Pq: Name pr22770-v3.patch

7 years agopr22905
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
pr22905

# DP: Prevent illegal memory accesses triggered by integer overflow
# DP: when parsing corrupt DWARF information on a 32-bit host.

From d11ae95ea3403559f052903ab053f43ad7821e37 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Thu, 1 Mar 2018 16:14:08 +0000
Subject: [PATCH] Prevent illegal memory accesses triggered by integer overflow
 when parsing corrupt DWARF information on a 32-bit host.

PR 22905
* dwarf.c (display_debug_ranges): Check that the offset loaded
from the range_entry structure is valid.

Gbp-Pq: Name pr22905.diff

7 years agopr22887
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
pr22887

# DP: PR22887, null pointer dereference in aout_32_swap_std_reloc_out

From 116acb2c268c89c89186673a7c92620d21825b25 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Wed, 28 Feb 2018 22:09:50 +1030
Subject: [PATCH] PR22887, null pointer dereference in
 aout_32_swap_std_reloc_out

PR 22887
* aoutx.h (swap_std_reloc_in): Correct r_index bound check.

Gbp-Pq: Name pr22887.diff

7 years agopr22895
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
pr22895

# DP: Catch integer overflows/underflows when parsing corrupt DWARF FORM blocks.

From 12c963421d045a127c413a0722062b9932c50aa9 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 28 Feb 2018 11:50:49 +0000
Subject: [PATCH] Catch integer overflows/underflows when parsing corrupt DWARF
 FORM blocks.

PR 22895
PR 22893
* dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
pointer.  Drop unused abfd parameter.  Check the size of the block
before initialising the data field.  Return the end pointer if the
size is invalid.
(read_attribute_value): Adjust invocations of read_n_bytes.

Gbp-Pq: Name pr22895.diff

7 years agopr22894
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
pr22894

# DP: Fix potential integer overflow when reading corrupt dwarf1

From eef104664efb52965d85a28bc3fc7c77e52e48e2 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 28 Feb 2018 10:13:54 +0000
Subject: [PATCH] Fix potential integer overflow when reading corrupt dwarf1
 debug information.

PR 22894
* dwarf1.c (parse_die): Check the length of form blocks before
advancing the data pointer.

Gbp-Pq: Name pr22894.diff

7 years agopr22741
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
pr22741

# DP: PR22741, objcopy segfault on fuzzed COFF object

From eb77f6a4621795367a39cdd30957903af9dbb815 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sat, 27 Jan 2018 08:19:33 +1030
Subject: [PATCH] PR22741, objcopy segfault on fuzzed COFF object

PR 22741
* coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
range before converting to a symbol table pointer.

Gbp-Pq: Name pr22741.diff

7 years agoPrevent attempts to call strncpy with a zero-length field by chacking the size of...
Nick Clifton [Tue, 6 Feb 2018 15:48:29 +0000 (15:48 +0000)]
Prevent attempts to call strncpy with a zero-length field by chacking the size of debuglink sections.

PR 22794
* opncls.c (bfd_get_debug_link_info_1): Check the size of the
section before attempting to read it in.
(bfd_get_alt_debug_link_info): Likewise.

Gbp-Pq: Name pr22794.diff

7 years agoPR22769, crash when running 32-bit objdump on corrupted file
Alan Modra [Thu, 1 Feb 2018 07:31:00 +0000 (18:01 +1030)]
PR22769, crash when running 32-bit objdump on corrupted file

PR 22769
* objdump.c (load_specific_debug_section): Check for overflow
when adding one to section size for a string section terminator.

Gbp-Pq: Name pr22769.diff

7 years agoPR22746, crash when running 32-bit objdump on corrupted file
Alan Modra [Thu, 25 Jan 2018 11:17:41 +0000 (21:47 +1030)]
PR22746, crash when running 32-bit objdump on corrupted file

Avoid unsigned int overflow by performing bfd_size_type multiplication.

PR 22746
* elfcode.h (elf_object_p): Avoid integer overflow.

Gbp-Pq: Name pr22746.diff

7 years agopr22734
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
pr22734

# DP: Fix PR binutils/22734, taken from the trunk.

2018-01-30  Nick Clifton  <nickc@redhat.com>

PR 22734
* doc/binutils.texi (nm): Update description to point out that
zero-initialized values can also be shown as type B, b, S or s
since they can be stored in the BSS section.

Gbp-Pq: Name pr22734.diff

7 years agogold-no-keep-files-mapped
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
gold-no-keep-files-mapped

# DP: gold on 32bit archs: Release mapped files after each pass.

Gbp-Pq: Name gold-no-keep-files-mapped.diff

7 years agostrings-whitespace-arg
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
strings-whitespace-arg

binutils/

* strings.c(long_options): include-all-whitespace does not take
an extra argument.

Gbp-Pq: Name strings-whitespace-arg.diff

7 years agoi18n-fr
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
i18n-fr

===================================================================

Gbp-Pq: Name i18n-fr.diff

7 years agogold-mips
Matthias Klose [Sun, 8 Apr 2018 20:55:34 +0000 (21:55 +0100)]
gold-mips

# DP: Fix gold on mips64 targets.

gold/

2016-08-09  Aurelien Jarno  <aurelien@aurel32.net>

* configure.tgt: Add mips64el*-*-*|mips64le*-*-* and mips64*-*-*.

Gbp-Pq: Name gold-mips.diff