Fix memory access violations triggered by running objdump on fuzzed binaries.
[external/binutils.git] / bfd / ChangeLog
1 2015-01-15  Nick Clifton  <nickc@redhat.com>
2
3         PR binutils/17512
4         * elf-m10300.c (mn10300_info_to_howto): Replace assertion with an
5         error message.  Never return an invalid howto pointer.
6         * elf32-cr16.c (cr16_info_to_howto): Likewise.
7         * elf32-crx.c (elf_crx_info_to_howto): Likewise.
8         * elf32-i370.c (i370_elf_info_to_howto): Likewise.
9         * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
10         * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
11         * elf32-mips.c (mips_elf32_rtype_to_howto): Likewise.
12         * elf32-pj.c (pj_elf_info_to_howto): Likewise.
13         * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
14         * elf32-spu.c (spu_elf_info_to_howto): Likewise.
15         * elf32-v850.c (v850_elf_info_to_howto_rela): Likewise.
16         * elf32-vax.c (rtype_to_howto): Likewise.
17         * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
18         * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
19         * elfn32-mips.c (sh_elf_info_to_howto): Likewise.
20         * elf32-sh.c (sh_elf_info_to_howto): Likewise.
21         (sh_elf_reloc): Check that the reloc is in range.
22         * reloc.c (bfd_perform_relocation): Check that the section is big
23         enough for the entire reloc.
24         (bfd_generic_get_relocated_section_contents): Report unexpected
25         return values from perform_reloc.
26
27 2015-01-15  Nick Clifton  <nickc@redhat.com>
28
29         * elf32-msp430.c (msp430_elf_relax_section): Skip unhandled
30         relocs.  Include PC-relative adjustment for R_MSP430X_ABS16
31         relaxation.
32
33 2015-01-15  Alan Modra  <amodra@gmail.com>
34
35         * elflink.c (_bfd_elf_link_omit_section_dynsym): Return true for
36         any output section matching a linker created dynobj section.
37
38 2015-01-15  Alan Modra  <amodra@gmail.com>
39
40         PR 17842
41         * elflink.c (elf_link_output_sym): Assert elf_onesymtab set.
42         (bfd_elf_final_link): Always create a symbol table when emit_relocs.
43         Don't assign symtab file position unless symbols will be output.
44         Merge blocks with condition in common.  Don't call
45         elf_backend_output_arch_local_syms or elf_backend_output_arch_syms
46         unless other symbols are output.  Move assignment of symtab_shndx
47         file position.  Localize variable.
48
49 2015-01-14  Jiong Wang  <jiong.wang@arm.com>
50
51         * elf32-arm.c (elf32_arm_final_link_relocate): Reject R_ARM_32/_NOI when
52         trying to defer them to runtime.
53
54 2015-01-13  Thomas Preud'homme <thomas.preudhomme@arm.com>
55
56         * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use SYMBOLIC_BIND
57         to check if a symbol should be bound symbolically.
58
59 2015-01-13  Jiong Wang  <jiong.wang@arm.com>
60
61         * elfnn-aarch64.c: (elfNN_aarch64_howto_table): Enable overflow check
62         for TLSLE_MOVW_TPREL_G2.
63
64 2015-01-13  Jiong Wang  <jiong.wang@arm.com>
65
66         PR ld/17415
67         * elfnn-aarch64.c (elfNN_aarch64_howto_table): Mark
68         R_AARCH64_TLSLE_ADD_TPREL_HI12 as complain_overflow_unsigned.
69         * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Correct the
70         bit mask.
71
72 2015-01-12  Terry Guo  <terry.guo@arm.com>
73
74         * elflink.c (_bfd_elf_gc_mark_debug_special_section_group): New
75         function.
76         (_bfd_elf_gc_mark_extra_sections): Use it.
77
78 2015-01-11  H.J. Lu  <hongjiu.lu@intel.com>
79
80         PR ld/17827
81         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): For PIE,
82         only discard space for pc-relative relocs symbols which turn
83         out to need copy relocs.
84
85 2015-01-09  Nick Clifton  <nickc@redhat.com>
86
87         * tekhex.c (getvalue): Fix thinko in test for correct extraction
88         of value.
89         (getsym): Return false if there was not enough data to extract the
90         symbol.
91
92 2015-01-09  Anthony Green  <green@moxielogic.com>
93
94         * elf32-moxie.c (ELF_MACHINE_ALT1): Define.
95
96 2015-01-08  Nick Clifton  <nickc@redhat.com>
97
98         * elf32-msp430.c (msp430_elf_relax_section): Add relaxation of
99         16-bit absolute BR instructions to 10-bit pc-relative JMP
100         instructions.
101
102 2015-01-08  Nick Clifton  <nickc@redhat.com>
103
104         PR binutils/17512
105         * coffcode.h (coff_slurp_symbol_table): Return false if we failed
106         to load the line table.
107         * elf.c (_bfd_elf_map_sections_to_segments): Enforce a minimum
108         maxpagesize of 1.
109         * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if
110         the Data Directory Size is too large.
111
112 2015-01-06  H.J. Lu  <hongjiu.lu@intel.com>
113
114         PR binutils/17512
115         * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
116         * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
117
118 2015-01-06  Nick Clifton  <nickc@redhat.com>
119
120         PR binutils/17512
121         * mach-o.c (bfd_mach_o_read_symtab_strtab): Zero terminate the
122         string table.
123
124         * reloc.c (bfd_get_reloc_size): Handle a reloc size of -1.
125         (bfd_perform_relocation): Include the size of the reloc in the
126         test for an out of range relocation.
127         (bfd_generic_get_relocated_section_contents): Remove reloc range
128         test.
129
130         * coff-i860.c (CALC_ADDEND): Always set an addend value.
131         * tekhex.c (getvalue): Add an end pointer parameter.  Use it to
132         avoid reading off the end of the buffer.
133         (getsym): Likewise.
134         (first_phase): Likewise.
135         (pass_over): Pass an end pointer to the invoked function.
136
137 2015-01-05  H.J. Lu  <hongjiu.lu@intel.com>
138
139         PR binutils/17512
140         * elf32-i386.c (elf_i386_get_plt_sym_val): Return NULL on corrupt
141         input.
142         * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
143
144 2015-01-05  Nick Clifton  <nickc@redhat.com>
145
146         PR binutils/17512
147         * archive.c (do_slurp_bsd_armap): Make sure that the parsed sized
148         is at least big enough for the header to be read.
149         * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocs.
150         * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add range checks.
151         (bfd_mach_o_read_command): Prevetn duplicate error messages about
152         unrecognized commands.
153         * syms.c (_bfd_stab_section_find_nearest_line): Add range checks
154         when indexing into the string table.
155
156 2015-01-01  Alan Modra  <amodra@gmail.com>
157
158         Update year range in copyright notice of all files.
159
160 For older changes see ChangeLog-2014
161 \f
162 Copyright (C) 2015 Free Software Foundation, Inc.
163
164 Copying and distribution of this file, with or without modification,
165 are permitted in any medium without royalty provided the copyright
166 notice and this notice are preserved.
167
168 Local Variables:
169 mode: change-log
170 left-margin: 8
171 fill-column: 74
172 version-control: never
173 End: