More fixes for illegal memory accesses triggered by running objdump on fuzzed binaries.
[external/binutils.git] / bfd / ChangeLog
1 2015-02-03  Nick Clifton  <nickc@redhat.com>
2
3         PR binutils/17512
4         * ecoff.c: Use bfd_alloc2 to allocate space for structure arrays.
5         (_bfd_ecoff_slurp_symbol_table): Check for a negative symbol
6         index or an out of range fdr index.
7         * elf-m10300.c (mn10300_info_to_howto): Fix typo in error message.
8         * elf32-arc.c (arc_info_to_howto_rel): Likewise.
9         * elf32-avr.c (avr_info_to_howto_rela): Likewise.
10         * elf32-cr16.c (elf_cr16_info_to_howto): Likewise.
11         * elf32-cr16c.c (elf_cr16c_info_to_howto_rel): Likewise.
12         * elf32-cris.c (cris_info_to_howto_rela): Likewise.
13         * elf32-crx.c (elf_crx_info_to_howto): Likewise.
14         * elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
15         * elf32-d30v.c (d30v_info_to_howto_rel): Likewise.
16         * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
17         * elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
18         * elf32-frv.c (frv_info_to_howto_rela): Likewise.
19         * elf32-i370.c (i370_elf_info_to_howto): Likewise.
20         * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
21         * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
22         * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
23         * elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
24         * elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
25         * elf32-m32r.c (m32r_info_to_howto_rel): Likewise.
26         * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
27         * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
28         * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
29         * elf32-mep.c (mep_info_to_howto_rela): Likewise.
30         * elf32-metag.c (metag_info_to_howto_rela): Likewise.
31         * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
32         * elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
33         * elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
34         * elf32-mt.c (mt_info_to_howto_rela): Likewise.
35         * elf32-nds32.c (nds32_info_to_howto_rel): Likewise.
36         * elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
37         * elf32-pj.c (pj_elf_info_to_howto): Likewise.
38         * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
39         * elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
40         * elf32-rx.c (rx_info_to_howto_rela): Likewise.
41         * elf32-sh.c (sh_elf_info_to_howto): Likewise.
42         * elf32-spu.c (spu_elf_info_to_howto): Likewise.
43         * elf32-v850.c (v850_elf_perform_relocation): Likewise.
44         * elf32-vax.c (rtype_to_howto): Likewise.
45         * elf32-visium.c (visium_info_to_howto_rela): Likewise.
46         * elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
47         * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
48         * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
49         * elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
50         * mach-o.c: Use bfd_alloc2 to allocate space for structure arrays.
51         (bfd_mach_o_canonicalize_one_reloc): Fix check on out
52         of range symbol indicies.
53         (bfd_mach_o_canonicalize_relocs): Check for out of range alloc.
54         (bfd_mach_o_canonicalize_dynamic_reloc): Likewise.
55         (bfd_mach_o_build_dysymtab): Likewise.
56         (bfd_mach_o_write_symtab_content): Set the string table size to
57         zero upon error.
58         (bfd_mach_o_read_symtab_symbols): Reset the nsyms value if the
59         read fails.
60         * peXXigen.c (pe_print_edata):  Check for numeric overflow in edt
61         fields.
62         * tekhex.c (first_phase): Check for src pointer reaching end of
63         buffer.
64
65 2015-02-03  Will Newton  <will.newton@linaro.org>
66
67         * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol):
68         Set st_value to zero for undefined symbols if the reference
69         is weak or pointer_equality_needed is FALSE.
70
71         * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Improve
72           comment discussing why we clear st_value for some symbols.
73
74 2015-02-02  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
75
76         * elf32-nds32.c (nds32_get_section_contents): Add one more argument.
77         (nds32_elf_relocate_section): Do not relocate R_NDS32_LONGJUMP7.
78
79 2015-01-29  Alan Modra  <amodra@gmail.com>
80
81         * elf64-ppc.c (ppc64_elf_relocate_section): Correct GOT_TLSLD
82         optimization.  Tidy mask for GOT_TLSGD optimization.
83         * elf32-ppc.c (ppc_elf_relocate_section): Likewise.  Correct
84         location of nop zapping high insn too.
85
86 2015-01-28  Alan Modra  <amodra@gmail.com>
87
88         * elf64-ppc.h (struct ppc64_elf_params): Add "object_in_toc".
89         * elf64-ppc.c (ppc64_elf_add_symbol_hook): Assume that global symbols
90         in .toc indicate xlc compiled code that might require a rw .toc.
91
92 2015-01-28  James Bowman  <james.bowman@ftdichip.com>
93
94         * Makefile.am: Add FT32 files.
95         * archures.c (enum bfd_architecture): Add bfd_arch_ft32.
96         (bfd_mach_ft32): Define.
97         (bfd_ft32_arch): Declare.
98         (bfd_archures_list): Add bfd_ft32_arch.
99         * config.bfd: Handle FT32.
100         * configure.ac: Likewise.
101         * cpu-ft32.c: New file.
102         * elf32-ft32.c: New file.
103         * reloc.c (BFD_RELOC_FT32_10, BFD_RELOC_FT32_20, BFD_RELOC_FT32_17,
104         BFD_RELOC_FT32_18): Define.
105         * targets.c (_bfd_target_vector): Add ft32_elf32_vec.
106         * bfd-in2.h: Regenerate.
107         * libbfd.h: Regenerate.
108         * Makefile.in: Regenerate.
109         * configure: Regenerate.
110         * po/SRC-POTFILES.in: Regenerate.
111
112 2015-01-27  Nick Clifton  <nickc@redhat.com>
113
114         PR binutils/17512
115         * pdp11.c (aout_get_external_symbols): Return false if there are
116         no symbols.
117
118         * dwarf2.c (concat_filename): Check for an empty directory table.
119         (scan_unit_for_symbols): Check for reading off the end of the
120         unit.
121         (parse_comp_unit): Check for a DW_AT_comp_dir attribute with a
122         non-string form.
123         * elf64-ppc.c (opd_entry_value): Fail if there are no relocs
124         available.
125
126 2015-01-26  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
127
128         * elf32-nds32.c (nds32_elf_pick_relax): Fix again setting.
129
130 2015-01-22  DJ Delorie  <dj@redhat.com>
131
132         * elf32-m32c.c (m32c_apply_reloc_24): New.
133         (m32c_elf_howto_table): Use it for R_M32C_24.
134         (m32c_elf_relocate_section): Handle R_M32C_24 specially.
135
136 2015-01-22  Nick Clifton  <nickc@redhat.com>
137
138         PR binutils/17512
139         * coffcode.h (handle_COMDAT): When searching for the section
140         symbol, make sure that there is space left in the symbol table.
141         * vms-alpha.c (_bfd_vms_slurp_ehdr): Add range checks.
142
143 2015-01-21  Nick Clifton  <nickc@redhat.com>
144
145         PR binutils/17512
146         * coffcode.h (coff_set_arch_mach_hook): Check return value from
147         bfd_malloc.
148         (coff_slurp_line_table): Return FALSE if the line number
149         information was corrupt.
150         (coff_slurp_symbol_table): Return FALSE if the symbol information
151         was corrupt.
152         * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Always
153         initialise the fields of the dyld_info structure.
154         (bfd_mach_o_build_exec_seg_command): Replace assertion with an
155         error message and a return value.
156         (bfd_mach_o_layout_commands): Change the function to boolean.
157         Return FALSE if the function fails.
158         (bfd_mach_o_build_commands): Fail if bfd_mach_o_layout_commands
159         fails.
160         (bfd_mach_o_read_command): Fail if an unrecognised command is
161         encountered.
162         * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Set bfd_error if the
163         read fails.
164         (slurp_symtab): Check the return from bfd_malloc.
165         (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if the copy
166         encountered an error.
167         (_bfd_XXi_final_link_postscript): Fail if a section could not be
168         copied.
169         * peicode.h (pe_bfd_object_p): Fail if the header could not be
170         swapped in.
171         * tekhex.c (first_phase): Fail if the section is too big.
172         * versados.c (struct esdid): Add content_size field.
173         (process_otr): Use and check the new field.
174         (versados_get_section_contents): Check that the section exists and
175         that the requested data is available.
176
177 2015-01-20  Chung-Lin Tang  <cltang@codesourcery.com>
178
179         * elf32-nios2.c (elf_backend_default_execstack): Define as 0.
180
181 2015-01-20  Alan Modra  <amodra@gmail.com>
182
183         PR ld/17615
184         * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Don't drop
185         ELF_COMMON_DEF syms.
186
187 2015-01-19  Alan Modra  <amodra@gmail.com>
188
189         PR ld/17615
190         * elf-bfd.h (ELF_COMMON_DEF_P): Note that this might be true for
191         linker script assignments too.
192         * elflink.c (elf_gc_sweep_symbol): Don't drop ELF_COMMON_DEF syms.
193         (bfd_elf_gc_mark_dynamic_ref_symbol): Similarly.
194
195 2015-01-19  Alan Modra  <amodra@gmail.com>
196
197         * elf32-bfin.c (bfin_bfd_reloc_type_lookup): Correct loop iteration
198         to allow return of first howto.
199         * elf32-fr30.c (fr30_reloc_type_lookup): Likewise.
200         * elf32-m32c.c (m32c_reloc_type_lookup): Likewise.
201         * elf32-moxie.c (moxie_reloc_type_lookup): Likewise.
202         * elf32-or1k.c (or1k_reloc_type_lookup): Likewise.
203         * elf32-rl78.c (rl78_reloc_type_lookup): Likewise.
204         * elf32-rx.c (rx_reloc_type_lookup): Likewise.
205         * elf32-tilepro.c (tilepro_reloc_type_lookup): Likewise.
206         * elf32-xstormy16.c (xstormy16_reloc_type_lookup): Likewise.
207         * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
208         * elf32-nios2.c (nios2_reloc_map): Add mapping for R_NIOS2_NONE.
209         * elf32-spu.c (spu_elf_bfd_to_reloc_type): Allow return of R_SPU_NONE.
210         (spu_elf_reloc_type_lookup): Adjust to suit.
211
212 2015-01-19  Alan Modra  <amodra@gmail.com>
213
214         * bfd-in.h (bfd_get_section_limit_octets): New define, extracted from..
215         (bfd_get_section_limit): ..here.
216         * reloc.c (bfd_perform_relocation): Correct bfd_reloc_outofrange check.
217         (bfd_install_relocation, _bfd_final_link_relocate): Add same check here.
218         * elf32-sh.c (sh_elf_reloc): Correct bfd_reloc_outofrange check.
219         * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Remove duplicated
220         bfd_reloc_outofrange check.
221         * bfd-in2.h: Regenerate.
222
223         * cpu-ns32k.c (_bfd_do_ns32k_reloc_contents): Return bfd_reloc_ok
224         on zero size relocs.
225         * ecoff.c (ecoff_reloc_link_order): Likewise.
226         * elf32-nds32.c (nds32_relocate_contents): Likewise.
227         * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
228
229         * reloc.c (_bfd_relocate_contents): Don't bomb on zero size relocs.
230         (_bfd_clear_contents): Likewise.
231         * elfxx-mips.c (mips_elf_obtain_contents): Likewise.
232         (mips_elf_perform_relocation): Likewise.
233
234         * aoutx.h (aout_link_reloc_link_order): Allow for NULL return
235         from malloc on zero size alloc.
236         * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
237         * elflink.c (elf_reloc_link_order): Likewise.
238         * linker.c (_bfd_generic_reloc_link_order): Likewise.
239         * pdp11.c (aout_link_reloc_link_order): Likewise.
240         * xcofflink.c (xcoff_reloc_link_order): Likewise.
241
242         * aoutx.h (howto_table_ext): Ensure NONE relocs have size 3,
243         bitsize 0, and complain_overflow_dont.
244         * coff-sparc.c (coff_sparc_howto_table): Likewise.
245         * elf-hppa.h (elf_hppa_howto_table): Likewise.
246         * elf-m10200.c (elf_mn10200_howto_table): Likewise.
247         * elf-m10300.c (elf_mn10300_howto_table): Likewise.
248         * elf32-arc.c (elf_arc_howto_table): Likewise.
249         * elf32-arm.c (elf32_arm_howto_table_1): Likewise.
250         * elf32-avr.c (elf_avr_howto_table): Likewise.
251         * elf32-bfin.c (bfin_howto_table): Likewise.
252         * elf32-cr16.c (cr16_elf_howto_table): Likewise.
253         * elf32-cris.c (cris_elf_howto_table): Likewise.
254         * elf32-crx.c (crx_elf_howto_table): Likewise.
255         * elf32-d10v.c (elf_d10v_howto_table): Likewise.
256         * elf32-d30v.c (elf_d30v_howto_table): Likewise.
257         * elf32-dlx.c (dlx_elf_howto_table): Likewise.
258         * elf32-epiphany.c (epiphany_elf_howto_table): Likewise.
259         * elf32-fr30.c (fr30_elf_howto_table): Likewise.
260         * elf32-frv.c (elf32_frv_howto_table): Likewise.
261         * elf32-h8300.c (h8_elf_howto_table): Likewise.
262         * elf32-i370.c (i370_elf_howto_raw): Likewise.
263         * elf32-i386.c (elf_howto_table): Likewise.
264         * elf32-i860.c (elf32_i860_howto_table): Likewise.
265         * elf32-i960.c (elf32_i960_relocate): Likewise.
266         * elf32-ip2k.c (ip2k_elf_howto_table): Likewise.
267         * elf32-iq2000.c (iq2000_elf_howto_table): Likewise.
268         * elf32-lm32.c (lm32_elf_howto_table): Likewise.
269         * elf32-m32c.c (m32c_elf_howto_table): Likewise.
270         * elf32-m32r.c (m32r_elf_howto_table): Likewise.
271         * elf32-m68hc11.c (elf_m68hc11_howto_table): Likewise.
272         * elf32-m68hc12.c (elf_m68hc11_howto_table): Likewise.
273         * elf32-m68k.c (howto_table): Likewise.
274         * elf32-mcore.c (mcore_elf_howto_raw): Likewise.
275         * elf32-mep.c (mep_elf_howto_table): Likewise.
276         * elf32-metag.c (elf_metag_howto_table): Likewise.
277         * elf32-microblaze.c (microblaze_elf_howto_raw): Likewise.
278         * elf32-mips.c (elf_mips_howto_table_rel): Likewise.
279         * elf32-moxie.c (moxie_elf_howto_table): Likewise.
280         * elf32-msp430.c (elf_msp430_howto_table): Likewise.
281         * elf32-mt.c (mt_elf_howto_table): Likewise.
282         * elf32-nds32.c (nds32_elf_howto_table): Likewise.
283         * elf32-nios2.c (elf_nios2_howto_table_rel): Likewise.
284         * elf32-or1k.c (or1k_elf_howto_table): Likewise.
285         * elf32-pj.c (pj_elf_howto_table): Likewise.
286         * elf32-ppc.c (ppc_elf_howto_raw): Likewise.
287         * elf32-rl78.c (rl78_elf_howto_table): Likewise.
288         * elf32-rx.c (rx_elf_howto_table): Likewise.
289         * elf32-s390.c (elf_howto_table): Likewise.
290         * elf32-score.c (elf32_score_howto_table): Likewise.
291         * elf32-score7.c (elf32_score_howto_table): Likewise.
292         * elf32-sh-relocs.h (R_SH_NONE): Likewise.
293         * elf32-spu.c (elf_howto_table): Likewise.
294         * elf32-tic6x.c (elf32_tic6x_howto_table): Likewise.
295         * elf32-tilepro.c (tilepro_elf_howto_table): Likewise.
296         * elf32-v850.c (v850_elf_howto_table): Likewise.
297         * elf32-vax.c (howto_table): Likewise.
298         * elf32-visium.c (visium_elf_howto_table): Likewise.
299         * elf32-xc16x.c (xc16x_elf_howto_table): Likewise.
300         * elf32-xgate.c (elf_xgate_howto_table): Likewise.
301         * elf32-xstormy16.c (xstormy16_elf_howto_table): Likewise.
302         * elf32-xtensa.c (elf_howto_table): Likewise.
303         * elf64-alpha.c (elf64_alpha_howto_table): Likewise.
304         * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
305         * elf64-mmix.c (elf_mmix_howto_table): Likewise.
306         * elf64-ppc.c (ppc64_elf_howto_raw): Likewise.
307         * elf64-s390.c (elf_howto_table): Likewise.
308         * elf64-sh64.c (sh_elf64_howto_table): Likewise.
309         * elf64-x86-64.c (x86_64_elf_howto_table): Likewise.
310         * elfn32-mips.c (elf_mips_howto_table_rel): Likewise.
311         * elfnn-aarch64.c (elfNN_aarch64_howto_table): Likewise.
312         (elfNN_aarch64_howto_none): Likewise.
313         * elfxx-ia64.c (ia64_howto_table): Likewise.
314         * elfxx-sparc.c (_bfd_sparc_elf_howto_table): Likewise.
315         * elfxx-tilegx.c (tilegx_elf_howto_table): Likewise.
316         * nlm32-sparc.c (nlm32_sparc_howto_table): Likewise.
317
318 2015-01-15  H.J. Lu  <hongjiu.lu@intel.com>
319
320         PR ld/17847
321         * elf64-x86-64.c (elf_x86_64_relocate_section): Don't complain
322         about -fPIC if the symbol is undefined when building executable.
323
324 2015-01-15  Nick Clifton  <nickc@redhat.com>
325
326         PR binutils/17512
327         * elf-m10300.c (mn10300_info_to_howto): Replace assertion with an
328         error message.  Never return an invalid howto pointer.
329         * elf32-cr16.c (cr16_info_to_howto): Likewise.
330         * elf32-crx.c (elf_crx_info_to_howto): Likewise.
331         * elf32-i370.c (i370_elf_info_to_howto): Likewise.
332         * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
333         * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
334         * elf32-mips.c (mips_elf32_rtype_to_howto): Likewise.
335         * elf32-pj.c (pj_elf_info_to_howto): Likewise.
336         * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
337         * elf32-spu.c (spu_elf_info_to_howto): Likewise.
338         * elf32-v850.c (v850_elf_info_to_howto_rela): Likewise.
339         * elf32-vax.c (rtype_to_howto): Likewise.
340         * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
341         * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
342         * elfn32-mips.c (sh_elf_info_to_howto): Likewise.
343         * elf32-sh.c (sh_elf_info_to_howto): Likewise.
344         (sh_elf_reloc): Check that the reloc is in range.
345         * reloc.c (bfd_perform_relocation): Check that the section is big
346         enough for the entire reloc.
347         (bfd_generic_get_relocated_section_contents): Report unexpected
348         return values from perform_reloc.
349
350 2015-01-15  Nick Clifton  <nickc@redhat.com>
351
352         * elf32-msp430.c (msp430_elf_relax_section): Skip unhandled
353         relocs.  Include PC-relative adjustment for R_MSP430X_ABS16
354         relaxation.
355
356 2015-01-15  Alan Modra  <amodra@gmail.com>
357
358         * elflink.c (_bfd_elf_link_omit_section_dynsym): Return true for
359         any output section matching a linker created dynobj section.
360
361 2015-01-15  Alan Modra  <amodra@gmail.com>
362
363         PR 17842
364         * elflink.c (elf_link_output_sym): Assert elf_onesymtab set.
365         (bfd_elf_final_link): Always create a symbol table when emit_relocs.
366         Don't assign symtab file position unless symbols will be output.
367         Merge blocks with condition in common.  Don't call
368         elf_backend_output_arch_local_syms or elf_backend_output_arch_syms
369         unless other symbols are output.  Move assignment of symtab_shndx
370         file position.  Localize variable.
371
372 2015-01-14  Jiong Wang  <jiong.wang@arm.com>
373
374         * elf32-arm.c (elf32_arm_final_link_relocate): Reject R_ARM_32/_NOI when
375         trying to defer them to runtime.
376
377 2015-01-13  Thomas Preud'homme <thomas.preudhomme@arm.com>
378
379         * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use SYMBOLIC_BIND
380         to check if a symbol should be bound symbolically.
381
382 2015-01-13  Jiong Wang  <jiong.wang@arm.com>
383
384         * elfnn-aarch64.c: (elfNN_aarch64_howto_table): Enable overflow check
385         for TLSLE_MOVW_TPREL_G2.
386
387 2015-01-13  Jiong Wang  <jiong.wang@arm.com>
388
389         PR ld/17415
390         * elfnn-aarch64.c (elfNN_aarch64_howto_table): Mark
391         R_AARCH64_TLSLE_ADD_TPREL_HI12 as complain_overflow_unsigned.
392         * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Correct the
393         bit mask.
394
395 2015-01-12  Terry Guo  <terry.guo@arm.com>
396
397         * elflink.c (_bfd_elf_gc_mark_debug_special_section_group): New
398         function.
399         (_bfd_elf_gc_mark_extra_sections): Use it.
400
401 2015-01-11  H.J. Lu  <hongjiu.lu@intel.com>
402
403         PR ld/17827
404         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): For PIE,
405         only discard space for pc-relative relocs symbols which turn
406         out to need copy relocs.
407
408 2015-01-09  Nick Clifton  <nickc@redhat.com>
409
410         * tekhex.c (getvalue): Fix thinko in test for correct extraction
411         of value.
412         (getsym): Return false if there was not enough data to extract the
413         symbol.
414
415 2015-01-09  Anthony Green  <green@moxielogic.com>
416
417         * elf32-moxie.c (ELF_MACHINE_ALT1): Define.
418
419 2015-01-08  Nick Clifton  <nickc@redhat.com>
420
421         * elf32-msp430.c (msp430_elf_relax_section): Add relaxation of
422         16-bit absolute BR instructions to 10-bit pc-relative JMP
423         instructions.
424
425 2015-01-08  Nick Clifton  <nickc@redhat.com>
426
427         PR binutils/17512
428         * coffcode.h (coff_slurp_symbol_table): Return false if we failed
429         to load the line table.
430         * elf.c (_bfd_elf_map_sections_to_segments): Enforce a minimum
431         maxpagesize of 1.
432         * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if
433         the Data Directory Size is too large.
434
435 2015-01-06  H.J. Lu  <hongjiu.lu@intel.com>
436
437         PR binutils/17512
438         * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
439         * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
440
441 2015-01-06  Nick Clifton  <nickc@redhat.com>
442
443         PR binutils/17512
444         * mach-o.c (bfd_mach_o_read_symtab_strtab): Zero terminate the
445         string table.
446
447         * reloc.c (bfd_get_reloc_size): Handle a reloc size of -1.
448         (bfd_perform_relocation): Include the size of the reloc in the
449         test for an out of range relocation.
450         (bfd_generic_get_relocated_section_contents): Remove reloc range
451         test.
452
453         * coff-i860.c (CALC_ADDEND): Always set an addend value.
454         * tekhex.c (getvalue): Add an end pointer parameter.  Use it to
455         avoid reading off the end of the buffer.
456         (getsym): Likewise.
457         (first_phase): Likewise.
458         (pass_over): Pass an end pointer to the invoked function.
459
460 2015-01-05  H.J. Lu  <hongjiu.lu@intel.com>
461
462         PR binutils/17512
463         * elf32-i386.c (elf_i386_get_plt_sym_val): Return NULL on corrupt
464         input.
465         * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
466
467 2015-01-05  Nick Clifton  <nickc@redhat.com>
468
469         PR binutils/17512
470         * archive.c (do_slurp_bsd_armap): Make sure that the parsed sized
471         is at least big enough for the header to be read.
472         * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocs.
473         * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add range checks.
474         (bfd_mach_o_read_command): Prevetn duplicate error messages about
475         unrecognized commands.
476         * syms.c (_bfd_stab_section_find_nearest_line): Add range checks
477         when indexing into the string table.
478
479 2015-01-01  Alan Modra  <amodra@gmail.com>
480
481         Update year range in copyright notice of all files.
482
483 For older changes see ChangeLog-2014
484 \f
485 Copyright (C) 2015 Free Software Foundation, Inc.
486
487 Copying and distribution of this file, with or without modification,
488 are permitted in any medium without royalty provided the copyright
489 notice and this notice are preserved.
490
491 Local Variables:
492 mode: change-log
493 left-margin: 8
494 fill-column: 74
495 version-control: never
496 End: