Re: readelf looping in process_archive
[deliverable/binutils-gdb.git] / binutils / ChangeLog
1 2020-03-27 Alan Modra <amodra@gmail.com>
2
3 * readelf.c (process_archive): Don't double free qualified_name.
4 Don't break out of loop with "negative" archive_file_size, just
5 set file offset to max.
6
7 2020-03-25 Alan Modra <amodra@gmail.com>
8
9 * readelf.c (process_archive): Prevent endless loop.
10
11 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
12
13 PR binutils/25708
14 * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name
15 with bfd_get_symbol_version_string.
16 (print_symbo): Pass TRUE to bfd_get_symbol_version_string.
17 * objdump.c (objdump_print_symname): Likewise.
18
19 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
20
21 PR binutils/25708
22 * nm.c (SYM_NAME): Removed.
23 (print_symname): Add a pointer to struct extended_symbol_info
24 argument. Call _bfd_elf_get_symbol_version_name to get symbol
25 version.
26 (print_symdef_entry): Pass NULL to print_symname.
27 (print_symbol_info_bsd): Update call to print_symname.
28 (print_symbol_info_sysv): Likewise.
29 (print_symbol_info_posix): Likewise.
30
31 2020-03-24 Alan Modra <amodra@gmail.com>
32
33 * readelf.c (process_mips_specific): Free iconf on error path.
34
35 2020-03-23 Nick Clifton <nickc@redhat.com>
36
37 PR 25714
38 * wrstabs.c (stab_pop_type): Replace assertion with error return.
39 * write_stabs_in_sections_debugging_info: Likewise.
40 * stab_enum_type: Likewise.
41 * stab_modify_type: Likewise.
42 * stab_struct_field: Likewise.
43 * stab_end_struct_type: Likewise.
44 * stab_start_class_type: Likewise.
45 * stab_class_static_member: Likewise.
46 * stab_class_baseclass: Likewise.
47 * stab_class_start_method: Likewise.
48 * stab_class_method_var: Likewise.
49 * stab_class_end_method: Likewise.
50 * stab_end_class_type: Likewise.
51 * stab_typedef_type: Likewise.
52 * stab_start_function: Likewise.
53 * stab_end_block: Likewise.
54 * stab_lineno: Likewise.
55
56 2020-03-20 Nick Clifton <nickc@redhat.com>
57
58 * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT.
59 (process_section_headers): Check the return value from
60 get_compression_header.
61 (dump_section_as_strings): Likewise.
62 (dump_section_as_bytes): Likewise.
63 (load_specific_debug_section): Likewise.
64
65 2020-03-20 H.J. Lu <hongjiu.lu@intel.com>
66
67 * ar.c (main): Update bfd_plugin_set_program_name call.
68 * nm.c (main): Likewise.
69
70 2020-03-19 Nick Clifton <nickc@redhat.com>
71
72 PR 25676
73 * testsuite/binutils-all/dw4.s: New test source file.
74 * testsuite/binutils-all/nm.exp: Run the new test.
75
76 2020-03-19 H.J. Lu <hongjiu.lu@intel.com>
77
78 * readelf.c (process_symbol_table): Use unsigned long for si.
79
80 2020-03-19 Alan Modra <amodra@gmail.com>
81
82 * elfcomm.c: Don't include bfd.h or bucomm.h.
83 (program_name): Declare.
84 (process_archive_index_and_symbols): Replace bfd_boolean with int,
85 and substitute FALSE and TRUE.
86 (setup_archive, setup_nested_archive): Likewise.
87 * elfcomm.h: Likewise.
88
89 2020-03-19 Alan Modra <amodra@gmail.com>
90
91 * readelf.c (process_archive): Always return via path freeing
92 memory. Formatting.
93
94 2020-03-19 Alan Modra <amodra@gmail.com>
95
96 * readelf.c (process_netbsd_elf_note): Validate descsz before
97 accessing descdata. Formatting.
98
99 2020-03-19 Alan Modra <amodra@gmail.com>
100
101 * elfcomm.c (setup_archive): Make file_size an off_t. Comment.
102 * elfcomm.h (setup_archive): Update prototype.
103
104 2020-03-16 Alan Modra <amodra@gmail.com>
105
106 * readelf.c (get_symbols): New function.
107 (process_relocs, ia64_process_unwind, hppa_process_unwind),
108 (arm_process_unwind, get_symbol_for_build_attribute): Use it.
109
110 2020-03-16 Alan Modra <amodra@gmail.com>
111
112 * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts.
113 Detect shift overflows and check that terminating byte is found.
114 Print an error on a bad uleb128.
115
116 2020-03-14 Alan Modra <amodra@gmail.com>
117
118 * readelf.c (process_file): Clean ba_cache.
119
120 2020-03-14 Alan Modra <amodra@gmail.com>
121
122 * elfcomm.h (setup_archive): Update prototype.
123 * elfcomm.c (setup_archive): Add file_size parameter and sanity
124 check longnames_size.
125 (setup_nested_archive): Get file size and pass to setup_archive.
126 * elfedit.c (process_archive): Likewise.
127 * readelf.c (process_archive): Pass filedata->file_size to
128 setup_archive.
129
130 2020-03-14 Alan Modra <amodra@gmail.com>
131
132 * readelf.c (dump_section_as_strings): Free memory on error exit.
133 (dump_section_as_bytes, process_notes_at): Likewise.
134 (get_build_id): Free enote.
135
136 2020-03-13 Kamil Rytarowski <n54@gmx.com>
137
138 * readelf.c (get_netbsd_elfcore_note_type): Add support for
139 NT_NETBSDCORE_LWPSTATUS notes.
140
141 2020-03-13 Alan Modra <amodra@gmail.com>
142
143 * elfcomm.c (get_archive_member_name): Always return malloc'd
144 string or NULL.
145 * elfedit.c (process_archive): Tidy memory on all return paths.
146 * readelf.c (process_archive): Likewise.
147 (process_symbol_table): Likewise.
148 (ba_cache): New, replacing ..
149 (get_symbol_for_build_attribute): ..static vars here. Free
150 strtab and symtab before loading new ones. Reject symtab without
151 valid strtab in loop, breaking out of loop on valid symtab.
152 (process_file): Free ba_cache symtab and strtab here, resetting
153 ba_cache.
154
155 2020-03-12 Alan Modra <amodra@gmail.com>
156
157 * readelf.c (process_section_headers): Don't just set
158 filedata->section_headers NULL, free it first. Similarly for
159 dynamic_symbols, dynamic_strings, dynamic_syminfo and
160 symtab_shndx_list. Zero associated counts too.
161 (process_object): Free symtab_shndx_list.
162 (process_file): Free various allocated filedata tables.
163
164 2020-03-11 Nick Clifton <nickc@redhat.com>
165
166 PR 25611
167 PR 25614
168 * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and
169 li_segment_size fields.
170 * dwarf.c (read_debug_line_header): Record the address size and
171 segment selector size values (if present) in the lineinfo
172 structure.
173 (display_formatted_table): Warn if the format count is empty but
174 the table itself is not empty.
175 Display the format count and entry count at the start of the table
176 dump.
177 (display_debug_lines_raw): Display the address size and segement
178 selector size fields, if present.
179 * testsuite/binutils-all/dw5.W: Update expected output.
180
181 2020-03-11 Alan Modra <amodra@gmail.com>
182
183 PR 25651
184 * objcopy.c (copy_object): Test "gaps" not gap_fill_set or
185 pad_to_set on second block of code dealing with padding.
186 Replace "c" with "num_sec" and don't recalculate number of
187 sections on second block. Size arrays using sizeof (element)
188 rather than sizeof (element type).
189
190 2020-03-10 Alan Modra <amodra@gmail.com>
191
192 * objdump.c (disassemble_section): Don't call qsort unless
193 sym count is at least two.
194 (disassemble_data): Don't call memcpy with NULL src.
195
196 2020-03-09 Alan Modra <amodra@gmail.com>
197
198 PR 25645
199 * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb
200 to get_data rather than multiplying.
201 (dump_ia64_vms_dynamic_relocs): Likewise.
202 (process_version_sections): Correct order of size and nmemb args
203 in get_data call.
204 (process_mips_specific): Likewise.
205
206 2020-03-08 H.J. Lu <hongjiu.lu@intel.com>
207
208 * readelf.c (get_dynamic_data): Replace "memory chekers" with
209 "memory checkers" in comments.
210
211 2020-03-06 Simon Marchi <simon.marchi@efficios.com>
212
213 PR 25491
214 * doc/Makefile.am: Rename MOSTLYCLEANFILES to MAINTAINERCLEANFILES.
215 * doc/Makefile.in: Re-generate.
216
217 2020-03-06 Nick Clifton <nickc@redhat.com>
218
219 * objcopy.c (check_new_section_flags): New function. Reject the
220 SEC_COFF_SHARED flag if the target is not a COFF binary.
221 (copy_object): Call check_new_section_flags.
222 (setup_section): Likewise.
223 * doc/binutils.texi (objcopy): Add a note that the 'share' section
224 flag cannot be applied to ELF binaries.
225
226 2020-03-06 Alan Modra <amodra@gmail.com>
227
228 PR 25637
229 * objcopy.c (filter_symbols): Correct rem_leading_char logic.
230
231 2020-03-05 Alan Modra <amodra@gmail.com>
232
233 PR 25629
234 * objcopy.c (filter_symbols): Don't segfault on NULL
235 prefix_symbols_string.
236
237 2020-03-04 Christian Eggers <ceggers@gmx.de>
238
239 * objcopy.c (copy_object): Convert from bytes to octets for
240 --gap-fill and --pad-to.
241
242 2020-03-03 Nick Clifton <nickc@redhat.com>
243
244 PR 25625
245 * prdbg.c (pr_tag_type): Remove call to abort.
246
247 2020-03-02 Aaron Merey <amerey@redhat.com>
248
249 * binutils/testsuite/binutils-all/debuginfod.exp: Improve port
250 selection.
251
252 2020-03-02 Nick Clifton <nickc@redhat.com>
253
254 PR 25543
255 * readelf.c (dump_section_as_strings): Display new-line characters
256 as \n and then insert a line break.
257 * testsuite/binutils-all/pr25543.s: New test.
258 * testsuite/binutils-all/pr25543.d: Test driver.
259 * testsuite/binutils-all/readelf.exp: Run the new test.
260
261 2020-02-27 Nick Clifton <nickc@redhat.com>
262
263 PR 25526
264 * readelf.c (process_ia64_vms_dynamic_relocs): Check to see if
265 get_data is unable to load the string table.
266
267 2020-02-26 Alan Modra <amodra@gmail.com>
268
269 * elfedit.c: Indent labels correctly.
270 * readelf.c: Likewise.
271 * resres.c: Likewise.
272
273 2020-02-25 H.J. Lu <hongjiu.lu@intel.com>
274
275 PR binutils/25584
276 * ar.c (main): Pass 0 to bfd_plugin_set_program_name.
277 * nm.c (main): Pass 1 to bfd_plugin_set_program_name.
278
279 2020-02-24 Nick Clifton <nickc@redhat.com>
280
281 PR 25499
282 * doc/binutils.texi (objdump): Fix typo in description of
283 objdump's -g option.
284
285 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
286
287 * dwarf.c (regname_internal_riscv): Updated since the DECLARE_CSR
288 is changed.
289
290 2020-02-19 Jordan Rupprecht <rupprecht@google.com>
291
292 * objdump.c (show_line): call bfd_demangle when using do_demangle.
293
294 2020-02-19 Andrew Burgess <andrew.burgess@embecosm.com>
295
296 * configure: Regenerate.
297
298 2020-02-10 Fangrui Song <maskray@google.com>
299
300 * objcopy.c (parse_flags): Handle "exclude".
301 * doc/binutils.texi: Document the support.
302
303 2020-02-10 Aaron Merey <amerey@redhat.com>
304
305 * binutils/testsuite/binutils-all/debuginfod.exp:
306 Replace set ::env with setenv.
307 Start server before setting environment variable.
308 Specify tmpdir as the location of the server's
309 database.
310 Check additional server metrics at start-up.
311
312 2020-02-07 Nick Clifton <nickc@redhat.com>
313
314 * README-how-to-make-a-release: Add note about updating the
315 GAS/NEWS URL in the next release.
316
317 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
318
319 PR 25469
320 * readelf.c (get_machine_flags): Add support for Z80N machine
321 number.
322
323 2020-02-07 Nick Clifton <nickc@redhat.com>
324
325 * dwarf.c (display_debug_lines_decoded): Force a NUL termination
326 of the truncated file name.
327
328 2020-02-06 Andrew Burgess <andrew.burgess@embecosm.com>
329
330 * objdump.c (print_jump_visualisation): New function.
331 (disassemble_bytes): Call new function.
332
333 2020-02-06 Alan Modra <amodra@gmail.com>
334
335 * testsuite/lib/binutils-common.exp (match_target): Accept '!' before
336 TCL procedure.
337 (supports_gnu_osabi): New procedure.
338 (is_generic): New, from ld-lib.exp.
339 (supports_gnu_unique): Use the above.
340
341 2020-02-04 Alan Modra <amodra@gmail.com>
342
343 * Makefile.am (CFILES): Add od-elf32_avr.c.
344 * Makefile.in: Regenerate.
345 * po/POTFILES.in: Regenerate.
346
347 2020-02-03 Andreas Schwab <schwab@linux-m68k.org>
348
349 * readelf.c (dump_relocations, dump_relocations)
350 (decode_arm_unwind_bytecode, process_dynamic_section)
351 (get_symbol_visibility, get_alpha_symbol_other): Add newline to
352 error message.
353
354 2020-02-03 Sergei Trofimovich <siarheit@google.com>
355
356 * coffdump.c (program_name): Drop redundant definition.
357 * srconv.c (program_name): Likewise
358 * sysdump.c (program_name): Likewise
359
360 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
361
362 PR gas/25380
363 * objdump.c (sym_ok): Return FALSE if 2 sections are in the
364 same file with different section pointers.
365
366 2020-02-01 Nick Clifton <nickc@redhat.com>
367
368 * README-how-to-make-a-release: Update with more details on the
369 release making process.
370
371 2020-01-31 Nick Clifton <nickc@redhat.com>
372
373 * po/sv.po: Updated Swedish translation.
374
375 2020-01-28 Nick Clifton <nickc@redhat.com>
376
377 * readelf.c (get_build_id): Simplify warning message about corrupt
378 notes encountered whilst scanning for the build-id.
379
380 2020-01-27 Roland McGrath <mcgrathr@google.com>
381
382 * objcopy.c (compare_gnu_build_notes): Fix comparison results
383 for overlapping ranges so that (A == B) == (B == A) holds.
384
385 2020-01-27 Alan Modra <amodra@gmail.com>
386
387 * testsuite/lib/binutils-common.exp (big_or_little_endian): Replace
388 case statement with switch statement.
389
390 2020-01-24 Nick Clifton <nickc@redhat.com>
391
392 * readelf.c (get_build_id): Fix warning messages about corrupt
393 notes.
394
395 2020-01-23 Nick Clifton <nickc@redhat.com>
396
397 * po/fr.po: Updated French translation.
398
399 2020-01-22 Yuri Chornoivan <yurchor@mageia.org>
400
401 PR 25417
402 * readelf.c (get_alpha_symbol_other): Fix error message typo.
403
404 2020-01-20 Nick Clifton <nickc@redhat.com>
405
406 * po/pt.po: Updated Portuguese translation.
407 * po/uk.po: Updated Ukranian translation.
408
409 2020-01-18 Nick Clifton <nickc@redhat.com>
410
411 * README-how-to-make-a-release: Update notes on how to cut a
412 branch for a release.
413
414 2020-01-18 Nick Clifton <nickc@redhat.com>
415
416 * configure: Regenerate.
417 * po/binutils.pot: Regenerate.
418
419 2020-01-18 Nick Clifton <nickc@redhat.com>
420
421 Binutils 2.34 branch created.
422
423 2020-01-17 Thomas Troeger <tstroege@gmx.de>
424
425 * objdump.c (jump_info_visualize_address): Discard jumps that are
426 no longer needed.
427 (disassemble_bytes): Only compute the maximum level if jumps were
428 detected.
429
430 2020-01-13 Nick Clifton <nickc@redhat.com>
431
432 * objdump.c (disassemble_bytes): Remove C99-ism.
433 * testsuite/binutils-all/debuginfod.exp: New tests.
434
435 2020-01-13 Thomas Troeger <tstroege@gmx.de>
436
437 * objdump.c (visualize_jumps, color_output, extended_color_output)
438 (detected_jumps): New variables.
439 (usage): Add the new jump visualization options.
440 (option_values): Add new option value.
441 (long_options): Add the new option.
442 (jump_info_new, jump_info_free): New functions.
443 (jump_info_min_address, jump_info_max_address): Likewise.
444 (jump_info_end_address, jump_info_is_start_address): Likewise.
445 (jump_info_is_end_address, jump_info_size): Likewise.
446 (jump_info_unlink, jump_info_insert): Likewise.
447 (jump_info_add_front, jump_info_move_linked): Likewise.
448 (jump_info_intersect, jump_info_merge): Likewise.
449 (jump_info_sort, jump_info_visualize_address): Likewise.
450 (disassemble_jumps): New function - used to locate jumps.
451 (disassemble_bytes): Add ascii art generation.
452 (disassemble_section): Add scan to locate jumps.
453 (main): Parse the new visualization option.
454 * doc/binutils.texi: Document the new feature.
455 * NEWS: Mention the new feature.
456
457 2020-01-13 Alan Modra <amodra@gmail.com>
458
459 PR 25360
460 PR 25361
461 * dwarf.c (display_debug_frames): Move fde_fc earlier. Free
462 fde_fc col_type and col_offset.
463 * readelf.c (apply_relocations): Move symsec check earlier.
464 (free_debug_section): Free reloc_info.
465 (process_notes_at): Free pnotes on error path.
466 (process_object): Free dump_sects here..
467 (process_archive): ..not here.
468
469 2020-01-13 Alan Modra <amodra@gmail.com>
470
471 PR 25362
472 * nm.c (display_rel_file): Free dyn_syms.
473
474 2020-01-09 Nick Clifton <nickc@redhat.com>
475
476 PR 25220
477 * objcopy.c (empty_name): New variable.
478 (need_sym_before): Prevent an attempt to free a static variable.
479 (filter_symbols): Avoid strcmp test by checking for pointer
480 equality.
481
482 2020-01-09 Nick Clifton <nickc@redhat.com>
483
484 * po/zh_TW.po: Updated Traditional Chinese translation.
485
486 2020-01-09 Aaron Merey <amerey@redhat.com>
487
488 * Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod.
489 * Makefile.in: Regenerate.
490 * NEWS: Update.
491 * config.in: Regenerate.
492 * configure: Regenerate.
493 * configure.ac: Call AC_DEBUGINFOD.
494 * doc/Makefile.in: Regenerate.
495 * doc/binutils.texi: Add section on using binutils
496 with debuginfod.
497 * dwarf.c (debuginfod_fetch_separate_debug_info): New function.
498 Query debuginfod servers for the target debug file.
499 (load_separate_debug_info): Call
500 debuginfod_fetch_separate_debug_info if configured with
501 debuginfod.
502 (load_separate_debug_files): Add file argument to
503 load_separate_debug_info calls.
504 * dwarf.h (get_build_id): Add declaration.
505 * objdump.c (get_build_id): New function. Get build-id of file.
506 * readelf.c (get_build_id): Likewise.
507 * testsuite/binutils-all/debuginfod.exp: New tests.
508 * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id
509 section.
510
511 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
512
513 * readelf.c: Add support for new Z*) relocations and machine
514 types.
515
516 2020-01-01 Alan Modra <amodra@gmail.com>
517
518 Update year range in copyright notice of all files.
519
520 For older changes see ChangeLog-2019
521 \f
522 Copyright (C) 2020 Free Software Foundation, Inc.
523
524 Copying and distribution of this file, with or without modification,
525 are permitted in any medium without royalty provided the copyright
526 notice and this notice are preserved.
527
528 Local Variables:
529 mode: change-log
530 left-margin: 8
531 fill-column: 74
532 version-control: never
533 End:
This page took 0.041978 seconds and 5 git commands to generate.