Fix shift overflow when parsing an overlarge note value.
[external/binutils.git] / binutils / ChangeLog
1 2017-04-21  Nick Clifton  <nickc@redhat.com>
2
3         PR binutils/21378
4         * readelf.c (print_gnu_build_attribute_name): Check for an
5         overlarge name field.
6
7 2017-04-13  Nick Clifton  <nickc@redhat.com>
8
9         PR binutils/21379
10         * readelf.c (process_dynamic_section): Detect over large section
11         offsets in the DT_SYMTAB entry.
12
13 2017-04-13  Nick Clifton  <nickc@redhat.com>
14
15         PR binutils/21345
16         * readelf.c (process_mips_specific): Catch an unfeasible memory
17         allocation before it happens and print a suitable error message.
18
19 2017-04-13  Nick Clifton  <nickc@redhat.com>
20
21         * objcopy.c: Add --no-merge-notes option to disable note merging.
22         Add --[no-]merge-notes option to strip, and enable it by default.
23         (num_bytes): New function.
24         (merge_gnu_build_notes): Add code to merge stack size notes.
25         * binutils.texi: Update strip and objcopy documentation.
26         * readelf.c (print_gnu_build_attribute_name): Use defined
27         constants for note types.
28
29 2017-04-10  John Delsignor  <john.delsignore@roguewave.com>
30
31         PR binutils/21319
32         * dwarf.c (display_gdb_index): Correct test for a corrupt address
33         table size.
34
35 2017-04-05  Jiong Wang  <jiong.wang@arm.com>
36
37         * objcopy.c (struct redefine_node): Delete the field "next".
38         (redefine_sym_list): Deleted.
39         (redefine_specific_htab): New hash table.
40         (redefine_specific_reverse_htab): Likewise.
41         (eq_string_redefnode): New function.
42         (htab_hash_redefnode): Likewise.
43         (create_symbol2redef_htab): Likewise.
44         (add_specific_symbol_node): Likewise.
45         (create_symbol_htabs): Create redefine_specific_htab and
46         redefine_specific_reverse_htab.
47         (lookup_sym_redefinition): Use hash table instead of list.
48         (redefine_list_append): Likewise, and rename to add_redefine_and_check.
49         (copy_main): Use redefine_specific_htab instead of redefine_sym_list.
50         Update comments.
51
52 2017-04-04  H.J. Lu  <hongjiu.lu@intel.com>
53
54         * NEWS: Mention support for ELF SHF_GNU_MBIND and
55         PT_GNU_MBIND_XXX.
56         * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX.
57         (get_elf_section_flags): Handle SHF_GNU_MBIND.
58         (process_section_headers): Likewise.
59         * testsuite/binutils-all/mbind1.s: New file.
60         * testsuite/binutils-all/objcopy.exp: Run readelf test on
61         mbind1.s.
62
63 2017-04-03  Nick Clifton  <nickc@redhat.com>
64
65         PR binutils/21345
66         * readelf.c (get_program_headers): Check for there being too many
67         program headers before attempting to allocate space for them.
68
69 2017-04-03  Nick Clifton  <nickc@redhat.com>
70
71         PR binutils/21344
72         * readelf.c (process_mips_specific): Check for an out of range GOT
73         entry before reading the module pointer.
74
75 2017-04-03  Nick Clifton  <nickc@redhat.com>
76
77         PR binutils/21343
78         * readelf.c (get_unwind_section_word): Fix snafu checking for
79         invalid word offsets in ARM unwind information.
80
81 2017-03-31  Pip Cet  <pipcet@gmail.com>
82
83         * NEWS: Use "WebAssembly" consistently.
84         * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice.
85
86 2017-03-30  Pip Cet  <pipcet@gmail.com>
87
88         * readelf.c: Add support for wasm32 ELF format WebAssembly files.
89         (guess_is_rela): Likewise.
90         (dump_relocations): Likewise.
91         (is_32bit_abs_reloc): Likewise.
92         (is_none_reloc_): Likewise.
93         * NEWS: Mention the new support.
94         * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32
95         as ELF target.
96         (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE.
97         * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations.
98         * testsuite/binutils-all/wasm32: New directory.
99         * testsuite/binutils-all/wasm32/create-wasm.d: New file.
100         * testsuite/binutils-all/wasm32/create-wasm.s: Likewise.
101         * testsuite/binutils-all/wasm32/custom-section.d: Likewise.
102         * testsuite/binutils-all/wasm32/custom-section.s: Likewise.
103         * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise.
104         * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise.
105         * testsuite/binutils-all/wasm32/long-sections.d: Likewise.
106         * testsuite/binutils-all/wasm32/long-sections.s: Likewise.
107         * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise.
108         * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise.
109         * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise.
110         * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise.
111         * testsuite/binutils-all/wasm32/prepared-section.d: Likewise.
112         * testsuite/binutils-all/wasm32/prepared-section.s: Likewise.
113         * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests.
114
115 2017-03-29  Alan Modra  <amodra@gmail.com>
116
117         * doc/binutils.texi (objdump): Document PowerPC -M options.
118
119 2017-03-21  Andi Kleen  <ak@linux.intel.com>
120
121         * objdump.c (unwind_inlines): Add.
122         (option_values): Add OPTION_INLINES.
123         (show_line): Unwind inlines if requested.
124         (main): Parse OPTION_INLINES.
125         (usage): Document --inlines.
126         * doc/binutils.texi: Document --inlines.
127         * NEWS: Likewise.
128
129 2017-03-21  Nick Clifton  <nickc@redhat.com>
130
131         * readelf.c (print_gnu_build_attribute_name): Allow stack
132         protection notes to contain numeric values.  Use a colon rather
133         than a space to separate a string name from its values.  Decode
134         the numeric value of a stack protection note.
135         * objcopy.c (merge_gnu_build_notes): Allow version notes to
136         contain extra text after the protocol version number.
137
138 2017-03-20  Mark Wielaard  <mark@klomp.org>
139
140         * readelf.c (process_program_headers): Move dynamic_addr check
141         after .dynamic section cross check.
142
143 2017-03-17  Nick Clifton  <nickc@redhat.com>
144
145         * readelf.c (print_gnu_build_attribute_name): Fix off by one error
146         printing the value for a build note with an ascii name.
147
148 2017-03-16  Nick Clifton  <nickc@redhat.com>
149
150         * readelf.c (print_gnu_build_attribute_name): Add support for
151         GNU_BUILD_ATTRIBUTE_SHORT_ENUM.
152
153 2017-03-14  Nick Clifton  <nickc@redhat.com>
154
155         * readelf.c (print_gnu_build_attribute_description): Move symbol
156         printing code to...
157         (print_symbol_for_build_attribute): New function.  ...here.
158         Add to find the best symbol to associate with an OPEN note.
159         Add code to cache the symbol table and string table, so that they
160         are not loaded every time a note is displayed.
161         * testsuite/binutils-all/note-2-32.s: Add a function symbol.
162         * testsuite/binutils-all/note-2-64.s: Likewise.
163         * testsuite/binutils-all/note-2-32.d: Update expected note output.
164         * testsuite/binutils-all/note-2-64.d: Likewise.
165
166 2017-03-13  Alan Modra  <amodra@gmail.com>
167             Taeung Song <treeze.taeung@gmail.com>
168
169         * objdump.c (update_source_path): Add abfd param.  Add struct
170         stat var.  Pass to try_print_file_open.  Warn if source is more
171         recent than object.
172         (try_print_file_open, slurp_file): Add struct stat param to
173         return fstat.
174         (show_line): Call update_source_path with bfd.
175
176 2017-03-10  Chia-Hao Lo  <fcamel@gmail.com>
177
178         PR binutils/21235
179         * objdump.c (main): Set do_wide with --wide.
180
181 2017-03-10  Nick Clifton  <nickc@redhat.com>
182
183         * readelf.c (get_machine_name): Rearrange switch table in order of
184         increasing machine number.  Add missing entries.
185
186 2017-03-08  H.J. Lu  <hongjiu.lu@intel.com>
187
188         PR binutils/21231
189         * readelf.c (decode_x86_isa): Change argument to unsigned int.
190         (print_gnu_property_note): Retrieve property type and datasz as
191         4-byte integer.  Consolidate property datasz check.  Check
192         GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER.
193         * testsuite/binutils-all/i386/pr21231a.d: New file.
194         * testsuite/binutils-all/i386/pr21231a.s: Likewise.
195         * testsuite/binutils-all/i386/pr21231b.d: Likewise.
196         * testsuite/binutils-all/i386/pr21231b.s: Likewise.
197         * testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
198         * testsuite/binutils-all/x86-64/pr21231a.s: Likewise.
199         * testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
200         * testsuite/binutils-all/x86-64/pr21231b.s: Likewise.
201
202 2017-03-06  Nick Clifton  <nickc@redhat.com>
203
204         * readelf.c (print_gnu_build_attribute_name): Read byte values
205         from the name string as unsigned bytes.
206         (process_notes_at): Use memcpy to copy an unterminated name
207         string.
208
209 2017-03-06  Sam Thursfield  <sam.thursfield@codethink.co.uk>
210
211         * configure.ac (AC_CHECK_DECLS): Add asprintf.
212         * config.in: Regenerate.
213         * configure: Regenerate.
214
215 2017-03-02  Nick Clifton  <nickc@redhat.com>
216
217         * readelf.c (print_gnu_build_attribute_description): Use global
218         symbols for OPEN attributes if at all possible.
219         * objcopy.c (is_merged_note_section): Support build note sections
220         without the SHF_GNU_BUILD_NOTE section flag set.
221
222 2017-03-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
223
224         * dwarf.c (debug_displays_assert): New static assertion.
225
226 2017-03-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
227
228         * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists.
229
230 2017-03-01  Nick Clifton  <nickc@redhat.com>
231
232         * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs.
233         (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs.
234         (decode_x86_isa): New function.
235         (print_gnu_property_note): New function.
236         (print_gnu_note): Handle GNU_PROPERTY_NOTEs.
237         (print_gnu_build_attribute_description): New function.
238         (print_gnu_build_attribute_name): New function.
239         (process_note): Add support for GNU_BUILD_NOTEs.
240         * objcopy.c (--merge-notes): New command line option.
241         (copy_options): Add merge-notes.
242         (copy_usage): Likewise.
243         (is_merge_note_section): New function.
244         (merge_gnu_build_notes): New function.
245         (copy_object): Merge note sections if asked to do so.
246         (skip_section): Add skip_copy parameter.  Add support for skipping
247         merged note sections.
248         (copy_relocations_in_section): Update call to skip_section.
249         (copy_section): Likewise.
250         (copy_main): Add support for merge-notes option.
251         * doc/binutils.texi: Document the new option to objcopy.
252         * NEWS: Mention the new feature.
253         * testsuite/binutils-all/note-2-32.d: New test.  Checks note
254         merging on 32-bit targets.
255         * testsuite/binutils-all/note-2-32.s: New test source file.
256         * testsuite/binutils-all/note-2-64.d: New test.  Like note-2-32.d
257         but for 64-bit targets.
258         * testsuite/binutils-all/note-2-64.s: New test source file.
259         * testsuite/binutils-all/objcopy.exp: Run the new test.
260
261 2017-02-28  Peter Bergner  <bergner@vnet.ibm.com>
262
263         * objdump.c (main): Use remove_whitespace_and_extra_commas.
264
265 2017-02-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
266
267         Fix compilation with GCC 4.4.7.
268         * dwarf.c (display_loclists_list, display_debug_rnglists_list):
269         Initialize begin and end.
270
271 2017-02-25  Alan Modra  <amodra@gmail.com>
272
273         * testsuite/binutils-all/dw5.S: Replace .string with .asciz.
274         Support hpux .comm variant.
275         * testsuite/binutils-all/readelf.exp: Define HPUX when assembling
276         dw5 test for hppa64-hpux.
277
278 2017-02-24  Nick Clifton  <nickc@redhat.com>
279
280         * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms,
281         (do_reloc, do_sections, do_section_groups, do_section_details,
282         (do_segments, do_unwind, do_using_dynamic, do_header, do_dump,
283         (do_version, do_histogram, do_debugging, do_arch, do_notes,
284         (do_archive_index, is_32bit_elf, decompress_dumps): Use
285         bfd_boolean type.
286         (parse_args): Treat the do_* variables as booleans.
287         (print_vma): Return an unsigned int.
288         (print_symbol): Change width parameter to signed int.
289         (is_ia64_vms): Change return type to bfd_boolean.
290         (guess_is_rela): Likewise.
291         (slurp_rela_relocs): Likewise.
292         (slurp_rel_relocs): Likewise.
293         (dump_relocations): Likewise.
294         (process_file_header): Likewise.
295         (get_program_headers): Likewise.
296         (process_program_headers): Likewise.
297         (process_section_headers): Likewise.
298         (process_section_groups): Likewise.
299         (dump_ia64_vms_dynamic_fixups): Likewise.
300         (dump_ia64_vms_dynamic_relocs): Likewise.
301         (process_ia64_vms_dynamic_relocs): Likewise.
302         (process_relocs): Likewise.
303         (dump_ia64_unwind): Likewise.
304         (ia64_process_unwind): Likewise.
305         (dump_hppa_unwind): Likewise.
306         (slurp_hppa_unwind_table): Likewise.
307         (hppa_process_unwind): Likewise.
308         (decode_arm_unwind_bytecode): Likewise.
309         (decode_tic6x_unwind_bytecode): Likewise.
310         (decode_arm_unwind): Likewise.
311         (dump_arm_unwind): Likewise.
312         (arm_process_unwind): Likewise.
313         (process_unwind): Likewise.
314         (get_32bit_dynamic_section): Likewise.
315         (get_64bit_dynamic_section): Likewise.
316         (process_dynamic_section): Likewise.
317         (process_version_sections): Likewise.
318         (process_symbol_table): Likewise.
319         (process_syminfo): Likewise.
320         (apply_relocations): Likewise.
321         (disassemble_section): Likewise.
322         (dump_section_as_strings): Likewise.
323         (dump_section_as_bytes): Likewise.
324         (load_specific_debug_section): Likewise.
325         (load_debug_section): Likewise.
326         (display_debug_section): Likewise.
327         (process_section_contents): Likewise.
328         (process_attributes): Likewise.
329         (process_nds32_specific): Likewise.
330         (process_gnu_liblist): Likewise.
331         (print_core_note): Likewise.
332         (print_gnu_note): Likewise.
333         (print_v850_note): Likewise.
334         (process_netbsd_elf_note): Likewise.
335         (print_stapsdt_note): Likewise.
336         (print_ia64_vms_note): Likewise.
337         (process_note): Likewise.
338         (process_notes_at): Likewise.
339         (process_corefile_note_segments): Likewise.
340         (process_v850_notes): Likewise.
341         (process_note_sections): Likewise.
342         (process_notes): Likewise.
343         (process_arch_specific): Likewise.
344         (get_file_header): Likewise.
345         (process_object): Likewise.
346         (process_archive): Likewise.
347         (process_file): Likewise.
348         (section_subset): Make static.
349         (get_mips_reg_size): Return a signed integer.
350         (process_object): Reverse the logic of the return value.
351         (process_archive): Likewise.
352         (process_file): Likewise.
353         (process_program_headers): Fix snafu - if the program headers are
354         not available then this is not a cause to fail.
355         (process_corefile_note_segments): Likewise.
356
357 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
358
359         * readelf.c (get_ver_flags): Tidy the formatting of the string
360         returned
361
362 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
363
364         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Make
365         `isum' unsigned.
366         <SHT_GNU_verneed>: Likewise.
367
368 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
369
370         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Limit
371         the number of entries processed by the section size.  Don't
372         break out of the loop if `ent.vd_next' is 0.
373
374 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
375
376         * testsuite/binutils-all/dw5.S: New file.
377         * testsuite/binutils-all/dw5.W: New file.
378         * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test.
379
380 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
381
382         * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16.
383
384 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
385
386         * dwarf.c (display_debug_macro): Support DWARF-5.  Rename
387         DW_MACRO_GNU_*.
388
389 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
390
391         * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer,
392         DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert
393         and DW_OP_reinterpret.
394         (read_and_display_attr_value): Support DW_AT_call_value,
395         DW_AT_call_data_value, DW_AT_call_target and
396         DW_AT_call_target_clobbered.
397
398 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
399
400         * dwarf.c (fetch_indirect_line_string): New function.
401         (abbrev_attr): New field implicit_const.
402         (add_abbrev_attr): New parameter implicit_const.
403         (process_abbrev_section): Support DW_FORM_implicit_const.
404         (decode_location_expression): Support DW_OP_entry_value.
405         (read_and_display_attr_value): Add parameter implicit_const.  Support
406         DW_FORM_line_strp and DW_FORM_implicit_const.
407         (read_and_display_attr): Add parameter implicit_const.
408         (process_debug_info): Support line_str and DWARF-5.
409         (read_debug_line_header): Support DWARF-5.
410         (display_formatted_table): New function.
411         (display_debug_lines_raw): New parameter file.  Support DWARF-5.
412         (display_debug_lines_decoded): New parameter fileptr.  Support DWARF-5.
413         (display_debug_lines): Pass file parameter.
414         (display_debug_macro): Update read_and_display_attr_value caller.
415         (display_debug_abbrev): Support DW_FORM_implicit_const.
416         (display_loclists_list): New function.
417         (display_loc_list): Support .debug_loclists.
418         (display_debug_ranges_list): New function from display_debug_ranges.
419         (display_debug_rnglists_list): New function.
420         (display_debug_ranges): Support .debug_rnglists.
421         (debug_displays): Add .debug_line_str, .debug_loclists and
422         .debug_rnglists.
423         * dwarf.h: Include dwarf2.h
424         (DWARF2_Internal_LineInfo): Add li_offset_size.
425         (DWARF2_Internal_CompUnit): Add cu_unit_type.
426         (enum dwarf_section_display_enum): Add line_str.
427         * readelf.c (process_section_headers): Add rnglists and loclists.
428
429 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
430
431         * dwarf.c (display_block): Add parameter delimiter.
432         (decode_location_expression): Update display_block callers.
433         (read_and_display_attr_value): Add parameter delimiter.
434         (read_and_display_attr, display_debug_macro): Update
435         read_and_display_attr_value caller.
436
437 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
438
439         * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address
440         and off.
441         (display_loc_list_dwo): Use dwarf_vma for offset.
442         (display_debug_loc): Use dwarf_vma for offset, base_address.
443         (struct range_entry, range_entry_compar): Use dwarf_vma for
444         ranges_offset.
445         (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and
446         base_address.
447
448 2017-02-23  Nick Clifton  <nickc@redhat.com>
449
450         * readelf.c (display_tag_value): Use an explicit signed type for
451         the tag parameter.
452         (display_gnu_attributes): Use an unsigned integer type for
453         attribute tags.
454         (display_power_gnu_attribute): Likewise.
455         (display_s390_gnu_attribute): Likewise.
456         (display_sparc_hwcaps): Likewise.
457         (display_sparc_hwcaps2): Likewise.
458         (display_sparc_gnu_attribute): Likewise.
459         (display_mips_gnu_attribute): Likewise.
460         (display_tic6x_attribute): Likewise.
461         (display_raw_attribute): Likewise.
462         (process_attributes): Likewise.
463         (process_arm_specific): Delete redundant function.
464         (process_power_specific): Likewise.
465         (process_s390_specific): Likewise.
466         (process_sparc_specific): Likewise.
467         (process_tic6x_specific): Likewise.
468         (process_msp430x_specific): Likewise.
469         (display_public_gnu_attributes): New function.  Displays known
470         information about an unknown gnu attribute.
471         (display_generic_attribute): New function.  Calls
472         display_tag_value for non-nul tags.
473         (process_arch_specific): Call process_attributes even for
474         architectures not known to specifically support gnu attributes.
475
476 2017-02-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
477
478         * dwarf.c (decode_location_expression): Display also OP.
479
480 2017-02-22  Maciej W. Rozycki  <macro@imgtec.com>
481
482         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Print a
483         new line between the heading and the first version definition
484         entry.
485
486 2017-02-20  Nick Clifton  <nickc@redhat.com>
487
488         PR binutils/21156
489         * dwarf.c (cu_tu_indexes_read): Move into...
490         (load_cu_tu_indexes): ... here.  Change the variable into
491         tri-state.  Change the function into boolean, returning
492         false if the indicies could not be loaded.
493         (find_cu_tu_set): Return NULL if the indicies could not be
494         loaded.
495
496 2017-02-17  Nick Clifton  <nickc@redhat.com>
497
498         PR binutils/21156
499         * readelf.c (find_section_in_set): Test for invalid section
500         indicies.
501
502 2017-02-17  Nick Clifton  <nickc@redhat.com>
503
504         * readelf.c (get_section_type_name): Add decoding of GNU section
505         types.
506
507 2017-02-15  Nick Clifton  <nickc@redhat.com>
508
509         * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past
510         Maintainers section.
511
512 2017-02-14  Nick Clifton  <nickc@redhat.com>
513
514         PR binutils/21159
515         * readelf.c (dump_section_as_strings): Reset the start address if
516         no decompression is perfromed.
517         (dump_section_as_bytes): Likewise.
518
519 2017-02-14  Nick Clifton  <nickc@redhat.com>
520
521         PR binutils/21158
522         * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
523         empty symbol name.
524
525 2017-02-14  Nick Clifton  <nickc@redhat.com>
526
527         PR binutils/21157
528         * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
529         pairs.
530         (parse_number): Exit early if passed an empty string.
531
532 2017-02-14  Nick Clifton  <nickc@redhat.com>
533
534         PR binutils/21155
535         * readelf.c (IN_RANGE): New macro.  Tests for an address + offset
536         being within a given range.
537         (target_specific_reloc_handling): Use macro to test for underflow
538         as well as overflow of reloc offset.
539
540 2017-02-13  Nick Clifton  <nickc@redhat.com>
541
542         PR binutils/21150
543         * nm.c (file_symbol): Add test of string length before testing
544         string characters.
545
546 2017-02-13  Nick Clifton  <nickc@redhat.com>
547
548         PR binutils/21135
549         * readelf.c (dump_section_as_bytes): Handle the case where
550         uncompress_section_contents returns false.
551         (dump_section_as_bytes, load_specific_debug_section): Likewise.
552
553 2017-02-13  Nick Clifton  <nickc@redhat.com>
554
555         PR binutils/21149
556         * readelf.c (get_compression_header): Add size parameter.  Check
557         size against sizeof compression header before attempting to
558         extract the header.
559         (process_section_headers): Pass size to get_compression_header.
560         (dump_section_as_strings): Likewise.
561         (dump_section_as_bytes): Likewise.
562         (load_specific_debug_section): Likewise.
563
564 2017-02-13  Nick Clifton  <nickc@redhat.com>
565
566         PR binutils/21148
567         * readelf.c (process_version_sections): Include size of auxillary
568         version information when checking for buffer overflow.
569
570 2017-02-13  Nick Clifton  <nickc@redhat.com>
571
572         PR binutils/21147
573         * readelf.c (process_section_contents): Fix off by one error
574         reporting un-dumped sections.
575
576 2017-02-13  Nick Clifton  <nickc@redhat.com>
577
578         PR binutils/21139
579         * readelf.c (target_specific_reloc_handling): Add num_syms
580         parameter.  Check for symbol table overflow before accessing
581         symbol value.  If reloc pointer is NULL, discard all saved state.
582         (apply_relocations): Pass num_syms to target_specific_reloc_handling.
583         Call target_specific_reloc_handling with a NULL reloc pointer
584         after processing all of the relocs.
585
586 2017-02-13  Nick Clifton  <nickc@redhat.com>
587
588         PR binutils/21137
589         * readelf.c (target_specific_reloc_handling): Add end parameter.
590         Check for buffer overflow before writing relocated values.
591         (apply_relocations): Pass end to target_specific_reloc_handling.
592
593 2017-01-27  Dilyan Palauzov  <dilyan.palauzov@aegee.org>
594             Nick Clifton  <nickc@redhat.com>
595
596         PR 20343
597         * doc/binutils.texi (ar): Extend documentation of the --plugin
598         option.  Include a description of where the plugins should be
599         located.
600         (nm): Likewise.
601
602 2017-01-23  Nick Clifton  <nickc@redhat.com>
603
604         * MAINTAINERS: Add Bernd to Past Maintainers section.
605         (SCORE): Remove Mei Ligang as maintainer.  Add to Past Maintainers
606         section.
607
608 2017-01-23  Bernd Schmidt  <bschmidt@redhat.com>
609
610         * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer.
611
612 2017-01-20  Andrew Burgess  <andrew.burgess@embecosm.com>
613
614         * objdump.c (dump_section_header): Extract max section name length
615         from data parameter, use this when formatting output.
616         (find_longest_section_name): New function.
617         (dump_headers): Calculate longest section name when in wide mode,
618         reformat to unify printing of header line.
619
620 2017-01-18  Bernhard Rosenkranzer  <bero@lindev.ch>
621
622         PR 21059
623         * arlex.l: Support processing with flex 2.6.3.
624         * deflex.l: Likewise.
625
626 2017-01-17  Dmitry Timoshkov  <dmitry@baikal.ru>
627
628         * resbin.c: Optional dialog control data immediately follows
629         the control description without alignment.
630         * testsuite/binutils-all/windres/controldata.rc: New test.
631         source.
632         * testsuite/binutils-all/windres/controldata.rsd: New test.
633
634 2017-01-12  Nick Clifton  <nickc@redhat.com>
635
636         PR binutils/20876
637         * NEWS: Mention the new feature.
638         * testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
639         New proc to test the location of separate debug info files using
640         the build-id method.
641
642 2017-01-10  Nick Clifton  <nickc@redhat.com>
643
644         PR 21034
645         * stabs.c (parse_stab_members): Fix thinko checking for g++
646         version 1 stabs information.
647
648 2017-01-09  Nick Clifton  <nickc@redhat.com>
649
650         * objdump.c (display_file): Add new parameter 'last_file'.  If
651         last_file is true, do not call bfd_close at the end of the
652         function.
653         (main): Set the value of the last_file parameter when calling
654         display_file.
655
656 2017-01-09  Alan Modra  <amodra@gmail.com>
657
658         * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn
659         comment.
660
661 2017-01-06  Nick Clifton  <nickc@redhat.com>
662
663         * MAINTAINERS: Move Paul Brook to the Past Maintainers section.
664
665 2017-01-04  Dilan Palauzov  <dilyan.palauzov@aegee.org>
666
667         PR 20958
668         * syslex.l (option): Add noyywrap
669         (yywrap): Delete.
670
671 2017-01-02  Alan Modra  <amodra@gmail.com>
672
673         Update year range in copyright notice of all files.
674
675 For older changes see ChangeLog-2016
676 \f
677 Copyright (C) 2017 Free Software Foundation, Inc.
678
679 Copying and distribution of this file, with or without modification,
680 are permitted in any medium without royalty provided the copyright
681 notice and this notice are preserved.
682
683 Local Variables:
684 mode: change-log
685 left-margin: 8
686 fill-column: 74
687 version-control: never
688 End: