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