]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - binutils/ChangeLog
asan: readelf: stack buffer overflow
[thirdparty/binutils-gdb.git] / binutils / ChangeLog
1 2020-07-06 Alan Modra <amodra@gmail.com>
2
3 * readelf.c (print_dynamic_symbol): Don't sprintf to buffer to
4 find string length.
5
6 2020-07-04 Nick Clifton <nickc@redhat.com>
7
8 * configure: Regenerate.
9 * po/binutils.pot: Regenerate.
10
11 2020-07-04 Nick Clifton <nickc@redhat.com>
12
13 Binutils 2.35 branch created.
14
15 2020-07-02 Nick Clifton <nickc@redhat.com>
16
17 PR 26028
18 * readelf.c (print_symbol): Handle truncation of symbol names.
19 (options): Add -T/--silent-truncation option.
20 (parse_args): Handle the option.
21 (print_dynamic_symbol): Correct calculation of width available to
22 display symbol name.
23 * doc/binutils.texi: Document the -T option to readelf.
24 * NEWS: Mention the new feature.
25
26 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
27
28 * NEWS: Mention x86 NaCl target support removal.
29 * dwarf.c (init_dwarf_regnames_by_bfd_arch_and_mach): Remove
30 x86 NaCl target support.
31 * testsuite/binutils-all/elfedit-1.d: Likewise.
32 * testsuite/binutils-all/i386/i386.exp: Likewise.
33 * testsuite/binutils-all/x86-64/objects.exp: Likewise.
34 * testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise.
35 * testsuite/binutils-all/x86-64/pr23494a.d: Likewise.
36 * testsuite/binutils-all/x86-64/pr23494b-x32.d: Likewise.
37 * testsuite/binutils-all/x86-64/pr23494b.d: Likewise.
38 * testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise.
39 * testsuite/binutils-all/x86-64/pr23494c.d: Likewise.
40 * testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise.
41 * testsuite/binutils-all/x86-64/pr23494d.d: Likewise.
42 * testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise.
43 * testsuite/binutils-all/x86-64/pr23494e.d: Likewise.
44 * testsuite/binutils-all/x86-64/x86-64.exp: Likewise.
45
46 2020-06-30 Nick Clifton <nickc@redhat.com>
47
48 * dwarf.c (read_and_display_attr_value): Support
49 DW_FORM_GNU_strp_alt when used with DW_AT_dwo_name and
50 DW_AT_comp_dir.
51
52 2020-06-30 Alan Modra <amodra@gmail.com>
53
54 * testsuite/binutils-all/readelf.exp (readelf_dump_test): Remove
55 xfail for nds32.
56
57 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
58
59 * dwarf.c (display_debug_str_offsets): Rename local variable
60 index to idx. Move to top of function.
61
62 2020-06-29 Alan Modra <amodra@gmail.com>
63
64 * dwarf.c: Use C style comments.
65 * resrc.c: Likewise.
66
67 2020-06-27 Alan Modra <amodra@gmail.com>
68
69 * elfcomm.c (setup_nested_archive): Set nested_arch->file to NULL
70 after freeing.
71 (release_archive): Set fields of arch to NULL after freeing.
72
73 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
74
75 * readelf.c (dump_section_as_ctf): Support .ctf archives using
76 ctf_arc_bufopen. Automatically load the .ctf member of such
77 archives as the parent of all other members, unless specifically
78 overridden via --ctf-parent. Split out dumping code into...
79 (dump_ctf_archive_member): ... here, as in objdump, and call
80 it once per archive member.
81 (dump_ctf_indent_lines): Code style fix.
82
83 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
84
85 * configure.ac [--enable-libctf]: New, default yes.
86 Set ENABLE_LIBCTF accordingly.
87 * Makefile.am [!ENABLE_LIBCTF]: Empty LIBCTF and LIBCTF_NOBFD.
88 * configure: Regenerate.
89 * config.in: Regenerate.
90 * Makefile.in: Regenerate.
91 * aclocal.m4: Regenerate.
92 * objdump.c (usage): Conditionalize portions on ENABLE_LIBCTF.
93 (option_values): Likewise.
94 (long_options): Likewise.
95 (main): Likewise.
96 (dump_ctf_indent_lines): Conditionalize out when !ENABLE_LIBCTF.
97 (make_ctfsect): Likewise.
98 (dump_ctf_archive_member): Likewise.
99 (dump_ctf) [ENABLE_LIBCTF]: Likewise.
100 (dump_ctf) [!ENABLE_LIBCTF]: New empty stub.
101 * readelf.c (options): Conditionalize portions on ENABLE_LIBCTF.
102 (usage): Likewise.
103 (process_section_contents): Likewise.
104 (shdr_to_ctf_sect): Conditionalize out when !ENABLE_LIBCTF.
105 (dump_ctf_indent_lines): Likewise.
106 (dump_section_as_ctf) [ENABLE_LIBCTF]: Likewise.
107
108 2020-06-26 Jan Beulich <jbeulich@suse.com>
109
110 * doc/binutils.texi: Adjust description of x86's -Msuffix. Drop
111 redundant text from x86 specific part of -M section.
112
113 2020-06-26 Pat Bernardi <bernardi@adacore.com>
114
115 * readelf.c (display_m68k_gnu_attribute): New function.
116 (process_arch_specific): Call display_m68k_gnu_attribute for EM_68K.
117
118 2020-06-23 H.J. Lu <hongjiu.lu@intel.com>
119
120 PR binutils/26160
121 * testsuite/binutils-all/pr26160.dwp.bz2: New file.
122 * testsuite/binutils-all/pr26160.r: Likewise.
123 * testsuite/binutils-all/readelf.exp: Run PR binutils/26160 test.
124
125 2020-06-23 Nick Clifton <nickc@redhat.com>
126
127 PR 26160
128 * dwarf.c (fetch_indexed_string): Detect and handle old style
129 .debug_str_offset tables.
130 (display_debug_str_offsets): Likewise. Also add support for
131 .debug_str_offsets.dwo sections.
132
133 2020-06-23 H.J. Lu <hongjiu.lu@intel.com>
134
135 PR binutils/26112
136 * testsuite/binutils-all/pr26112.o.bz2: New file.
137 * testsuite/binutils-all/pr26112.r: Likewise.
138 * testsuite/binutils-all/readelf.exp: Run PR binutils/26112 test.
139
140 2020-06-23 Alan Modra <amodra@gmail.com>
141
142 * testsuite/binutils-all/objdump.exp (bintest.a): Correct
143 remote_file delete command.
144
145 2020-06-22 Nick Clifton <nickc@redhat.com>
146
147 PR 26112
148 * dwarf.c (display_debug_str_offsets): Add code to display the
149 contents of the .debug_str_offsets section.
150 (display_debug_macro): Add support for DW_MACRO_define_strx and
151 DW_MACRO_undef_strx.
152
153 2020-06-22 Saagar Jha <saagar@saagarjha.com>
154
155 * od-macho.c: Dump linkedit data for new load commands.
156
157 2020-06-19 Alan Modra <amodra@gmail.com>
158
159 * testsuite/config/default.exp (ld_elf_shared_opt): Don't set.
160 * testsuite/lib/binutils-common.exp (check_relro_support): New proc.
161 (run_dump_test): Use check_relro_support to decide whether to pass
162 extra ld option "-z norelro".
163
164 2020-06-11 Alan Modra <amodra@gmail.com>
165
166 * readelf.c (process_mips_specific): Don't alloc memory for
167 Elf_Internal_Options.
168
169 2020-06-11 Alan Modra <amodra@gmail.com>
170
171 * readelf.c (process_mips_specific): Assert size of internal
172 types match size of external types, and simplify allocation of
173 internal buffer. Catch possible integer overflow when sanity
174 checking option size. Don't assume options are a regular array.
175 Sanity check reginfo option against option size. Use PRI macros
176 when printing.
177
178 2020-06-10 Ralf Habacker <ralf.habacker@freenet.de>
179
180 PR 26082
181 * mclex.c (yylex): Reject lines that reach end-of-file without a
182 terminating newline character.
183
184 2020-06-08 Nick Clifton <nickc@redhat.com>
185
186 PR 26093
187 * doc/binutils.texi (strings): Fix typo.
188
189 2020-06-08 Nick Clifton <nickc@redhat.com>
190
191 PR 26086
192 * dwarf.c (process_debug_info): Check that there is space in the
193 debug_information array before filling in an entry.
194
195 2020-06-06 Alan Modra <amodra@gmail.com>
196
197 * doc/binutils.texi (PowerPC -M option): Mention power10 and pwr10.
198
199 2020-06-05 Joel Anderson <joelanderson333@gmail.com>
200
201 PR 26082
202 * mclex.c (yylex): Add test for an empty input stream.
203
204 2020-06-04 Stephen Casner <casner@acm.org>
205
206 * testsuite/binutils-all/pr25662-pdp11.s: Alternate source file
207 for test using section pseudo-ops compatible with pdp11.
208 * testsuite/binutils-all/objcopy.exp: Select alternate source.
209
210 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
211
212 * objdump.c (disassemble_data): Set disasm_info.endian_code to
213 disasm_info.endian after the latter is initialized to the
214 endianness reported by BFD.
215
216 2020-06-04 Alan Modra <amodra@gmail.com>
217
218 * testsuite/binutils-all/i386/i386.exp: Remove global directive
219 outside proc body.
220 * testsuite/binutils-all/x86-64/objects.exp: Likewise.
221 * testsuite/binutils-all/x86-64/x86-64.exp: Likewise.
222
223 2020-06-03 Joel Anderson <joelanderson333@gmail.com>
224
225 * windmc.h (struct mc_node): Add id_typecast field.
226 * mcparse.y (message): Initialise the id_typecast field.
227 * windmc.c (write_dbg): Use the id_typecast field as a parameter
228 when calling write_dbg_define.
229 (write_header): Likewise.
230
231 2020-06-03 Alan Modra <amodra@gmail.com>
232
233 PR 26069
234 * objcopy.c (copy_relocations_in_section): Free relpp on error.
235 Don't accidentally free isection->orelocation.
236
237 2020-06-02 Alan Modra <amodra@gmail.com>
238
239 * testsuite/binutils-all/ar.exp (obj): Set up object file name
240 extension. Use throughout. Don't completely exclude non-ELF
241 alpha targets. Run long_filenames test for tic30. Exclude thin
242 archive tests for aix, ecoff and vms.
243 * estsuite/binutils-all/objdump.exp (obj): Set up object file name
244 extension. Use throughout. Don't exclude non-ELF alpha targets
245 from "bintest.a".
246
247 2020-05-28 Max Filippov <jcmvbkbc@gmail.com>
248
249 * MAINTAINERS (Xtensa): Add myself as maintainer.
250
251 2020-05-23 Alan Modra <amodra@gmail.com>
252
253 * testsuite/binutils-all/ar.exp (many_files): New test.
254
255 2020-05-21 Alan Modra <amodra@gmail.com>
256
257 * addr2line.c: Replace "if (x) free (x)" with "free (x)" throughout.
258 * dlltool.c: Likewise.
259 * elfcomm.c: Likewise.
260 * rddbg.c: Likewise.
261 * readelf.c: Likewise.
262 * stabs.c: Likewise.
263 * windmc.c: Likewise.
264 * windres.c: Likewise.
265 * wrstabs.c: Likewise.
266
267 2020-05-21 Alan Modra <amodra@gmail.com>
268
269 * readelf.c (get_num_dynamic_syms): Bounds check mipsxlat array
270 access.
271
272 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
273
274 * dwarf.c: Updated since DECLARE_CSR is changed.
275
276 2020-05-19 H.J. Lu <hjl.tools@gmail.com>
277
278 PR binutils/25809
279 * readelf.c (process_program_headers): Warn if the PT_DYNAMIC
280 segment doesn't match the .dynamic section and checks are
281 enabled.
282 (struct filedata): Add dynamic_symtab_section and
283 dynamic_strtab_section fields.
284 (process_section_headers): Set dynamic_symtab_section to the
285 .dynsym section. Set dynamic_strtab_section to the .dynstr
286 section.
287 (process_dynamic_section): Warn if the .dynsym section doesn't
288 match DT_SYMTAB and DT_SYMENT or the .dynstr section doesn't
289 DT_STRTAB and DT_STRSZ. But only if checks are enabled.
290
291 2020-05-19 Alan Modra <amodra@gmail.com>
292
293 * ar.c (map_over_members, get_pos_bfd, delete_members, move_members),
294 (replace_members): Use bfd_get_filename rather than accessing
295 bfd->filename directly.
296 * arsup.c (map_over_list, ar_delete, ar_replace, ar_extract): Likewise.
297 * binemul.c (do_ar_emul_append): Likewise.
298 * coffgrok.c (coff_grok): Likewise.
299
300 2020-05-18 Stafford Horne <shorne@gmail.com>
301
302 * MAINTAINERS (OR1K): Add myself as maintainer.
303
304 2020-05-07 Andrew Burgess <andrew.burgess@embecosm.com>
305
306 * doc/binutils.texi: Mention 'entry address' in the set-start and
307 adjust-start options descriptions.
308
309 2020-05-05 Nick Clifton <nickc@redhat.com>
310
311 * dwarf.c (do_checks): New global variable.
312 (display_formatted_table): Warn about an unexpected number of
313 columns in the table, if checks are enabled. Do not complain
314 about the lack of data following the number of entries in the
315 table if the table is empty.
316 (display_debug_lines_decoded): Only warn about an unexpected
317 number of columns in a table if checks are enabled.
318 * dwarf.h (do_checks): Add a prototype.
319 * elfcomm.c (error): Remove weak attribute.
320 (warn): Likewise.
321 * readelf.c (do_checks): Delete.
322 (warn): Delete.
323 (process_section_headers): Only warn about empty sections if
324 checks are enabled.
325
326 2020-05-04 Fangrui Song <maskray@google.com>
327
328 * objcopy.c (copy_object): Allow empty section.
329 * testsuite/binutils-all/update-section.exp: Add test.
330
331 2020-05-04 Nick Clifton <nickc@redhat.com>
332
333 PR 25917
334 * dwarf.c (display_debug_lines_decoded): Warn if encountering a
335 supicious number of entries for DWARF-5 format directory and file
336 name tables. Do not display file name table header if the table
337 is empty. Do not allocate space for empty tables.
338
339 2020-05-04 Alan Modra <amodra@gmail.com>
340
341 * readelf.c (process_nds32_specific): Check size of .nds32_e_flags
342 section. Don't assume endian of host matches nds32 target. Free
343 buffer.
344
345 2020-05-01 Alan Modra <amodra@gmail.com>
346 Haim Shimonovich <Haim.Shimonovich@ceva-dsp.com>
347
348 * objdump.c (disassemble_bytes): Don't scan for zeros when
349 disassembling zeros. Translate "resuming at file offset" message.
350 Formatting. Replace some signed variables with unsigned.
351
352 2020-04-30 Alex Coplan <alex.coplan@arm.com>
353
354 * testsuite/binutils-all/aarch64/in-order-all.d: Update to use new
355 disassembly.
356 * testsuite/binutils-all/aarch64/out-of-order-all.d: Likewise.
357
358 2020-04-30 Nick Clifton <nickc@redhat.com>
359
360 * testsuite/lib/binutils-common.exp (check_pie_support): New
361 proc.
362
363 2020-04-29 Andrew Burgess <andrew.burgess@embecosm.com>
364
365 * dwarf.c (display_debug_ranges): Ignore duplicate entries in
366 range_entries for the same offset.
367
368 2020-04-29 Nick Clifton <nickc@redhat.com>
369
370 * readelf.c (warn): New function - like elfcomm.c version but only
371 produces output if warnings are enabled.
372 (struct options): Add --lint and --enable-checks.
373 (usage): Add entry for --lint.
374 (parse_args): Handle -L. If checks are enabled but no dumps have
375 been selected then enable all dumps.
376 (process_section_headers): Replace long if-then-else sequence with
377 a switch. Add warning messages for empty SHT_REL, SHT_RELA and
378 SHT_PROGBITS sections.
379 (process_file): Do not complain if the file is an archive and lint
380 mode has been enabled.
381 * elfcomm.c (error): Make the function weak.
382 (warn): Likewise.
383 * NEWS: Mention the new feature.
384 * doc/binutils.texi: Document the new feature.
385 * dwarf.h (report_leb_status): Add file name and line number
386 parameters. Include them in the diagnostic output.
387 (READ_ULEB): Pass file and line number to report_leb_status.
388 (READ_SLEB): Likewise.
389 * dwarf.c (read_and_print_leb128): Pass file and line number to
390 report_leb_status.
391 * testsuite/binutils-all/readelf.exp: Add test of new feature.
392 * testsuite/binutils-all/zero-sec.s: New test source file.
393 * testsuite/binutils-all/zero-sec.r: Expected output from new
394 test.
395
396 2020-04-29 Nick Clifton <nickc@redhat.com>
397
398 * po/sr.po: Updated Serbian translation.
399
400 2020-04-26 Alan Modra <amodra@gmail.com>
401
402 * readelf.c (get_num_dynamic_syms): Check DT_MIPS_XHASH was
403 read before dereferencing, and gracefully return. Remove
404 gnu_hash_error variable. Free gnu hash arrays if number of
405 syms found is zero.
406
407 2020-04-24 Alan Modra <amodra@gmail.com>
408
409 * readelf.c (get_num_dynamic_syms): Check for nbuckets and nchains
410 non-zero.
411 (process_dynamic_section): Call get_num_dynamic_syms once rather
412 than in segment loop. Break out of segment loop on a successful
413 load of dynamic symbols. Formatting.
414 (process_object): Return error status from process_dynamic_section.
415
416 2020-04-23 Anton Kolesov <anton.kolesov@synopsys.com>
417
418 * elf-bfd.h (elfcore_write_arc_v2): Add prototype.
419 * elf.c (elfcore_grok_arc_v2): New function.
420 (elfcore_grok_note): Call the new function to handle the corresponding
421 note.
422 (elfcore_write_arc_v2): New function.
423 (elfcore_write_register_note): Call the new function to handle the
424 corresponding pseudo-sections.
425
426 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
427
428 PR ld/25861
429 * readelf.c (is_none_reloc): Recognize
430 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
431 BFD_RELOC_XTENSA_NDIFF{8,16,32}.
432
433 2020-04-22 Nick Clifton <nickc@redhat.com>
434
435 * MAINTAINERS: Remove Chris Faylor as the ix86 PE maintainer.
436
437 2020-04-22 Alan Modra <amodra@gmail.com>
438
439 * readelf.c (archive_file_offset, archive_file_size, dynamic_addr),
440 (dynamic_size, dynamic_nent, dynamic_strings, dynamic_strings_length),
441 (num_dynamic_syms, nbuckets, nchains, buckets, chains),
442 (ngnubuckets, gnubuckets, gnuchains, mipsxlat, ngnuchains),
443 (gnusymidx, dynamic_symbols, dynamic_syminfo, dynamic_syminfo_offset),
444 (dynamic_syminfo_nent, program_interpreter, dynamic_info),
445 (dynamic_info_DT_GNU_HASH, dynamic_info_DT_MIPS_XHASH, version_info),
446 (dynamic_section, symtab_shndx_list, group_count, section_groups),
447 (section_headers_groups): Move to struct filedata. Update use
448 throughout file.
449
450 2020-04-22 Alan Modra <amodra@gmail.com>
451
452 * readelf.c (struct dump_data): New, used..
453 (cmdline): ..here, and..
454 (struct filedata): ..here. Adjust all uses.
455 (request_dump_bynumber, request_dump, parse_args): Pass in a
456 struct dump_data* rather than Filedata*. Adjust callers.
457 (main): Don't set cmdline.file_name.
458
459 2020-04-20 Alan Modra <amodra@gmail.com>
460
461 * readelf.c (process_symbol_table): Clear ngnuchains, ngnubuckets
462 and nbuckets.
463
464 2020-04-20 Alan Modra <amodra@gmail.com>
465
466 * readelf.c (process_section_headers): Free dynamic symbols etc.
467 earlier.
468
469 2020-04-20 Alan Modra <amodra@gmail.com>
470
471 * readelf.c (get_num_dynamic_syms): Formatting. Don't return
472 on error without freeing.
473 (process_dynamic_section): Don't recreate dynamic symbols from
474 dynamic tag info when the dynamic symbols have already been
475 read via section headers.
476
477 2020-04-17 Fredrik Strupe <fredrik@strupe.net>
478
479 * testsuite/binutils-all/arm/vdup-cond.d: New test for testing that
480 conditional VDUP instructions are disassembled correctly.
481 * testsuite/binutils-all/arm/vdup-cond.s: New file used by
482 vdup-cond.d.
483 * testsuite/binutils-all/arm/vdup-thumb.d: New test for testing
484 that VDUP instructions (which are conditional in A32) can be
485 disassembled in thumb mode.
486 * testsuite/binutils-all/arm/vdup-cond.s: New file used by
487 vdup-thumb.d.
488
489 2020-04-17 Alan Modra <amodra@gmail.com>
490
491 PR 25840
492 * debug.c (debug_class_type_samep): Don't segfault on NULL type.
493
494 2020-04-16 Alan Modra <amodra@gmail.com>
495
496 * doc/binutils.texi: Mention --no-show-raw-insn in objdump
497 --no-addresses description.
498
499 2020-04-15 Alan Modra <amodra@gmail.com>
500
501 * objdump.c (no_addresses): New static var.
502 (usage): Print help for --no-addresses.
503 (long_options): Add --no-addresses entry.
504 (objdump_print_addr_with_sym, objdump_print_addr): Omit symbol address.
505 (disassemble_bytes): Don't print current line address, or reloc
506 address.
507 * doc/binutils.texi: Document objdump --no-addresses.
508
509 2020-04-15 Alan Modra <amodra@gmail.com>
510
511 PR 25822
512 * readelf.c (get_num_dynamic_syms): Don't set num_of_syms when
513 reading buckets or chains fails.
514
515 2020-04-15 Alan Modra <amodra@gmail.com>
516
517 * readelf.c (process_symbol_table): Zero gnubuckets, gnuchains
518 etc. after freeing.
519
520 2020-04-15 Alan Modra <amodra@gmail.com>
521
522 * readelf.c (get_group_flags): Translate text.
523 (get_file_type, get_symbol_binding, get_symbol_type),
524 (get_ppc64_symbol_other, get_symbol_other): Increase size of buffer.
525
526 2020-04-15 Alan Modra <amodra@gmail.com>
527
528 PR 25821
529 * readelf.c (get_num_dynamic_syms): Typo fix.
530
531 2020-04-14 Alan Modra <amodra@gmail.com>
532
533 * readelf.c (process_mips_specific): Free eopt and iopt. Avoid
534 possibility of overflow when checking number of conflicts.
535
536 2020-04-14 H.J. Lu <hongjiu.lu@intel.com>
537
538 PR binutils/25707
539 * readelf.c (nbuckets): New.
540 (nchains): Likewise.
541 (buckets): Likewise.
542 (chains): Likewise.
543 (ngnubuckets): Likewise.
544 (gnubuckets): Likewise.
545 (gnuchains): Likewise.
546 (mipsxlat): Likewise.
547 (ngnuchains): Likewise.
548 (gnusymidx): Likewise.
549 (VALID_SYMBOL_NAME): Likewise.
550 (VALID_DYNAMIC_NAME): Use it.
551 (get_dynamic_data): Moved before process_dynamic_section.
552 (get_num_dynamic_syms): New function.
553 (process_dynamic_section): Use DT_SYMTAB, DT_SYMENT, DT_HASH,
554 DT_GNU_HASH and DT_MIPS_XHASH to reconstruct dynamic symbol
555 table. Use DT_STRTAB and DT_STRSZ to reconstruct dynamic string
556 table.
557 (get_symbol_index_type): Don't print "bad section index" when
558 there is no section header.
559 (print_dynamic_symbol): Rewrite.
560 (process_symbol_table): Call print_dynamic_symbol to dump dynamic
561 symbol table.
562
563 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
564
565 * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't
566 enable on *-*-solaris*.
567
568 2020-03-30 Nick Clifton <nickc@redhat.com>
569
570 PR binutils/25662
571 * objcopy.c (copy_object): When copying PE format files set the
572 timestamp field in the pe_data structure if the preserve_dates
573 flag is set.
574 * testsuite/binutils-all/objcopy.exp (objcopy_test) Use
575 --preserve-dates in place of the -p option, in order to make its
576 effect more obvious.
577
578 2020-03-28 Alan Modra <amodra@gmail.com>
579
580 * testsuite/binutils-all/objcopy.exp (objcopy_test): Only
581 clear_xfail hppa*-*-*elf*. Revert mips xfails.
582
583 2020-03-28 Alan Modra <amodra@gmail.com>
584
585 * testsuite/binutils-all/objcopy.exp (objcopy_test): Move xfails
586 from here to calls. Remove "m8*-*-*" entry. Don't xfail tic54x
587 but do xfail spu, mipstx39 and mips-sgi-irix for the executable
588 test. Pass "-p" to objcopy for the executable test.
589
590 2020-03-27 Jozef Lawrynowicz <jozef.l@mittosystems.com>
591
592 PR binutils/25662
593 * testsuite/binutils-all/objcopy.exp (objcopy_test): Add argument to
594 specify whether an object file or executable should be built and tested.
595 Change test names to report whether an object file or executable is
596 being tested.
597 * testsuite/binutils-all/pr25662.ld: New test.
598 * testsuite/binutils-all/pr25662.s: New test.
599
600 2020-03-27 Alan Modra <amodra@gmail.com>
601
602 * readelf.c (process_archive): Don't double free qualified_name.
603 Don't break out of loop with "negative" archive_file_size, just
604 set file offset to max.
605
606 2020-03-25 Alan Modra <amodra@gmail.com>
607
608 * readelf.c (process_archive): Prevent endless loop.
609
610 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
611
612 PR binutils/25708
613 * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name
614 with bfd_get_symbol_version_string.
615 (print_symbo): Pass TRUE to bfd_get_symbol_version_string.
616 * objdump.c (objdump_print_symname): Likewise.
617
618 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
619
620 PR binutils/25708
621 * nm.c (SYM_NAME): Removed.
622 (print_symname): Add a pointer to struct extended_symbol_info
623 argument. Call _bfd_elf_get_symbol_version_name to get symbol
624 version.
625 (print_symdef_entry): Pass NULL to print_symname.
626 (print_symbol_info_bsd): Update call to print_symname.
627 (print_symbol_info_sysv): Likewise.
628 (print_symbol_info_posix): Likewise.
629
630 2020-03-24 Alan Modra <amodra@gmail.com>
631
632 * readelf.c (process_mips_specific): Free iconf on error path.
633
634 2020-03-23 Nick Clifton <nickc@redhat.com>
635
636 PR 25714
637 * wrstabs.c (stab_pop_type): Replace assertion with error return.
638 * write_stabs_in_sections_debugging_info: Likewise.
639 * stab_enum_type: Likewise.
640 * stab_modify_type: Likewise.
641 * stab_struct_field: Likewise.
642 * stab_end_struct_type: Likewise.
643 * stab_start_class_type: Likewise.
644 * stab_class_static_member: Likewise.
645 * stab_class_baseclass: Likewise.
646 * stab_class_start_method: Likewise.
647 * stab_class_method_var: Likewise.
648 * stab_class_end_method: Likewise.
649 * stab_end_class_type: Likewise.
650 * stab_typedef_type: Likewise.
651 * stab_start_function: Likewise.
652 * stab_end_block: Likewise.
653 * stab_lineno: Likewise.
654
655 2020-03-20 Nick Clifton <nickc@redhat.com>
656
657 * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT.
658 (process_section_headers): Check the return value from
659 get_compression_header.
660 (dump_section_as_strings): Likewise.
661 (dump_section_as_bytes): Likewise.
662 (load_specific_debug_section): Likewise.
663
664 2020-03-20 H.J. Lu <hongjiu.lu@intel.com>
665
666 * ar.c (main): Update bfd_plugin_set_program_name call.
667 * nm.c (main): Likewise.
668
669 2020-03-19 Nick Clifton <nickc@redhat.com>
670
671 PR 25676
672 * testsuite/binutils-all/dw4.s: New test source file.
673 * testsuite/binutils-all/nm.exp: Run the new test.
674
675 2020-03-19 H.J. Lu <hongjiu.lu@intel.com>
676
677 * readelf.c (process_symbol_table): Use unsigned long for si.
678
679 2020-03-19 Alan Modra <amodra@gmail.com>
680
681 * elfcomm.c: Don't include bfd.h or bucomm.h.
682 (program_name): Declare.
683 (process_archive_index_and_symbols): Replace bfd_boolean with int,
684 and substitute FALSE and TRUE.
685 (setup_archive, setup_nested_archive): Likewise.
686 * elfcomm.h: Likewise.
687
688 2020-03-19 Alan Modra <amodra@gmail.com>
689
690 * readelf.c (process_archive): Always return via path freeing
691 memory. Formatting.
692
693 2020-03-19 Alan Modra <amodra@gmail.com>
694
695 * readelf.c (process_netbsd_elf_note): Validate descsz before
696 accessing descdata. Formatting.
697
698 2020-03-19 Alan Modra <amodra@gmail.com>
699
700 * elfcomm.c (setup_archive): Make file_size an off_t. Comment.
701 * elfcomm.h (setup_archive): Update prototype.
702
703 2020-03-16 Alan Modra <amodra@gmail.com>
704
705 * readelf.c (get_symbols): New function.
706 (process_relocs, ia64_process_unwind, hppa_process_unwind),
707 (arm_process_unwind, get_symbol_for_build_attribute): Use it.
708
709 2020-03-16 Alan Modra <amodra@gmail.com>
710
711 * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts.
712 Detect shift overflows and check that terminating byte is found.
713 Print an error on a bad uleb128.
714
715 2020-03-14 Alan Modra <amodra@gmail.com>
716
717 * readelf.c (process_file): Clean ba_cache.
718
719 2020-03-14 Alan Modra <amodra@gmail.com>
720
721 * elfcomm.h (setup_archive): Update prototype.
722 * elfcomm.c (setup_archive): Add file_size parameter and sanity
723 check longnames_size.
724 (setup_nested_archive): Get file size and pass to setup_archive.
725 * elfedit.c (process_archive): Likewise.
726 * readelf.c (process_archive): Pass filedata->file_size to
727 setup_archive.
728
729 2020-03-14 Alan Modra <amodra@gmail.com>
730
731 * readelf.c (dump_section_as_strings): Free memory on error exit.
732 (dump_section_as_bytes, process_notes_at): Likewise.
733 (get_build_id): Free enote.
734
735 2020-03-13 Kamil Rytarowski <n54@gmx.com>
736
737 * readelf.c (get_netbsd_elfcore_note_type): Add support for
738 NT_NETBSDCORE_LWPSTATUS notes.
739
740 2020-03-13 Alan Modra <amodra@gmail.com>
741
742 * elfcomm.c (get_archive_member_name): Always return malloc'd
743 string or NULL.
744 * elfedit.c (process_archive): Tidy memory on all return paths.
745 * readelf.c (process_archive): Likewise.
746 (process_symbol_table): Likewise.
747 (ba_cache): New, replacing ..
748 (get_symbol_for_build_attribute): ..static vars here. Free
749 strtab and symtab before loading new ones. Reject symtab without
750 valid strtab in loop, breaking out of loop on valid symtab.
751 (process_file): Free ba_cache symtab and strtab here, resetting
752 ba_cache.
753
754 2020-03-12 Alan Modra <amodra@gmail.com>
755
756 * readelf.c (process_section_headers): Don't just set
757 filedata->section_headers NULL, free it first. Similarly for
758 dynamic_symbols, dynamic_strings, dynamic_syminfo and
759 symtab_shndx_list. Zero associated counts too.
760 (process_object): Free symtab_shndx_list.
761 (process_file): Free various allocated filedata tables.
762
763 2020-03-11 Nick Clifton <nickc@redhat.com>
764
765 PR 25611
766 PR 25614
767 * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and
768 li_segment_size fields.
769 * dwarf.c (read_debug_line_header): Record the address size and
770 segment selector size values (if present) in the lineinfo
771 structure.
772 (display_formatted_table): Warn if the format count is empty but
773 the table itself is not empty.
774 Display the format count and entry count at the start of the table
775 dump.
776 (display_debug_lines_raw): Display the address size and segement
777 selector size fields, if present.
778 * testsuite/binutils-all/dw5.W: Update expected output.
779
780 2020-03-11 Alan Modra <amodra@gmail.com>
781
782 PR 25651
783 * objcopy.c (copy_object): Test "gaps" not gap_fill_set or
784 pad_to_set on second block of code dealing with padding.
785 Replace "c" with "num_sec" and don't recalculate number of
786 sections on second block. Size arrays using sizeof (element)
787 rather than sizeof (element type).
788
789 2020-03-10 Alan Modra <amodra@gmail.com>
790
791 * objdump.c (disassemble_section): Don't call qsort unless
792 sym count is at least two.
793 (disassemble_data): Don't call memcpy with NULL src.
794
795 2020-03-09 Alan Modra <amodra@gmail.com>
796
797 PR 25645
798 * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb
799 to get_data rather than multiplying.
800 (dump_ia64_vms_dynamic_relocs): Likewise.
801 (process_version_sections): Correct order of size and nmemb args
802 in get_data call.
803 (process_mips_specific): Likewise.
804
805 2020-03-08 H.J. Lu <hongjiu.lu@intel.com>
806
807 * readelf.c (get_dynamic_data): Replace "memory chekers" with
808 "memory checkers" in comments.
809
810 2020-03-06 Simon Marchi <simon.marchi@efficios.com>
811
812 PR 25491
813 * doc/Makefile.am: Rename MOSTLYCLEANFILES to MAINTAINERCLEANFILES.
814 * doc/Makefile.in: Re-generate.
815
816 2020-03-06 Nick Clifton <nickc@redhat.com>
817
818 * objcopy.c (check_new_section_flags): New function. Reject the
819 SEC_COFF_SHARED flag if the target is not a COFF binary.
820 (copy_object): Call check_new_section_flags.
821 (setup_section): Likewise.
822 * doc/binutils.texi (objcopy): Add a note that the 'share' section
823 flag cannot be applied to ELF binaries.
824
825 2020-03-06 Alan Modra <amodra@gmail.com>
826
827 PR 25637
828 * objcopy.c (filter_symbols): Correct rem_leading_char logic.
829
830 2020-03-05 Alan Modra <amodra@gmail.com>
831
832 PR 25629
833 * objcopy.c (filter_symbols): Don't segfault on NULL
834 prefix_symbols_string.
835
836 2020-03-04 Christian Eggers <ceggers@gmx.de>
837
838 * objcopy.c (copy_object): Convert from bytes to octets for
839 --gap-fill and --pad-to.
840
841 2020-03-03 Nick Clifton <nickc@redhat.com>
842
843 PR 25625
844 * prdbg.c (pr_tag_type): Remove call to abort.
845
846 2020-03-02 Aaron Merey <amerey@redhat.com>
847
848 * binutils/testsuite/binutils-all/debuginfod.exp: Improve port
849 selection.
850
851 2020-03-02 Nick Clifton <nickc@redhat.com>
852
853 PR 25543
854 * readelf.c (dump_section_as_strings): Display new-line characters
855 as \n and then insert a line break.
856 * testsuite/binutils-all/pr25543.s: New test.
857 * testsuite/binutils-all/pr25543.d: Test driver.
858 * testsuite/binutils-all/readelf.exp: Run the new test.
859
860 2020-02-27 Nick Clifton <nickc@redhat.com>
861
862 PR 25526
863 * readelf.c (process_ia64_vms_dynamic_relocs): Check to see if
864 get_data is unable to load the string table.
865
866 2020-02-26 Alan Modra <amodra@gmail.com>
867
868 * elfedit.c: Indent labels correctly.
869 * readelf.c: Likewise.
870 * resres.c: Likewise.
871
872 2020-02-25 H.J. Lu <hongjiu.lu@intel.com>
873
874 PR binutils/25584
875 * ar.c (main): Pass 0 to bfd_plugin_set_program_name.
876 * nm.c (main): Pass 1 to bfd_plugin_set_program_name.
877
878 2020-02-24 Nick Clifton <nickc@redhat.com>
879
880 PR 25499
881 * doc/binutils.texi (objdump): Fix typo in description of
882 objdump's -g option.
883
884 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
885
886 * dwarf.c (regname_internal_riscv): Updated since the DECLARE_CSR
887 is changed.
888
889 2020-02-19 Jordan Rupprecht <rupprecht@google.com>
890
891 * objdump.c (show_line): call bfd_demangle when using do_demangle.
892
893 2020-02-19 Andrew Burgess <andrew.burgess@embecosm.com>
894
895 * configure: Regenerate.
896
897 2020-02-10 Fangrui Song <maskray@google.com>
898
899 * objcopy.c (parse_flags): Handle "exclude".
900 * doc/binutils.texi: Document the support.
901
902 2020-02-10 Aaron Merey <amerey@redhat.com>
903
904 * binutils/testsuite/binutils-all/debuginfod.exp:
905 Replace set ::env with setenv.
906 Start server before setting environment variable.
907 Specify tmpdir as the location of the server's
908 database.
909 Check additional server metrics at start-up.
910
911 2020-02-07 Nick Clifton <nickc@redhat.com>
912
913 * README-how-to-make-a-release: Add note about updating the
914 GAS/NEWS URL in the next release.
915
916 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
917
918 PR 25469
919 * readelf.c (get_machine_flags): Add support for Z80N machine
920 number.
921
922 2020-02-07 Nick Clifton <nickc@redhat.com>
923
924 * dwarf.c (display_debug_lines_decoded): Force a NUL termination
925 of the truncated file name.
926
927 2020-02-06 Andrew Burgess <andrew.burgess@embecosm.com>
928
929 * objdump.c (print_jump_visualisation): New function.
930 (disassemble_bytes): Call new function.
931
932 2020-02-06 Alan Modra <amodra@gmail.com>
933
934 * testsuite/lib/binutils-common.exp (match_target): Accept '!' before
935 TCL procedure.
936 (supports_gnu_osabi): New procedure.
937 (is_generic): New, from ld-lib.exp.
938 (supports_gnu_unique): Use the above.
939
940 2020-02-04 Alan Modra <amodra@gmail.com>
941
942 * Makefile.am (CFILES): Add od-elf32_avr.c.
943 * Makefile.in: Regenerate.
944 * po/POTFILES.in: Regenerate.
945
946 2020-02-03 Andreas Schwab <schwab@linux-m68k.org>
947
948 * readelf.c (dump_relocations, dump_relocations)
949 (decode_arm_unwind_bytecode, process_dynamic_section)
950 (get_symbol_visibility, get_alpha_symbol_other): Add newline to
951 error message.
952
953 2020-02-03 Sergei Trofimovich <siarheit@google.com>
954
955 * coffdump.c (program_name): Drop redundant definition.
956 * srconv.c (program_name): Likewise
957 * sysdump.c (program_name): Likewise
958
959 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
960
961 PR gas/25380
962 * objdump.c (sym_ok): Return FALSE if 2 sections are in the
963 same file with different section pointers.
964
965 2020-02-01 Nick Clifton <nickc@redhat.com>
966
967 * README-how-to-make-a-release: Update with more details on the
968 release making process.
969
970 2020-01-31 Nick Clifton <nickc@redhat.com>
971
972 * po/sv.po: Updated Swedish translation.
973
974 2020-01-28 Nick Clifton <nickc@redhat.com>
975
976 * readelf.c (get_build_id): Simplify warning message about corrupt
977 notes encountered whilst scanning for the build-id.
978
979 2020-01-27 Roland McGrath <mcgrathr@google.com>
980
981 * objcopy.c (compare_gnu_build_notes): Fix comparison results
982 for overlapping ranges so that (A == B) == (B == A) holds.
983
984 2020-01-27 Alan Modra <amodra@gmail.com>
985
986 * testsuite/lib/binutils-common.exp (big_or_little_endian): Replace
987 case statement with switch statement.
988
989 2020-01-24 Nick Clifton <nickc@redhat.com>
990
991 * readelf.c (get_build_id): Fix warning messages about corrupt
992 notes.
993
994 2020-01-23 Nick Clifton <nickc@redhat.com>
995
996 * po/fr.po: Updated French translation.
997
998 2020-01-22 Yuri Chornoivan <yurchor@mageia.org>
999
1000 PR 25417
1001 * readelf.c (get_alpha_symbol_other): Fix error message typo.
1002
1003 2020-01-20 Nick Clifton <nickc@redhat.com>
1004
1005 * po/pt.po: Updated Portuguese translation.
1006 * po/uk.po: Updated Ukranian translation.
1007
1008 2020-01-18 Nick Clifton <nickc@redhat.com>
1009
1010 * README-how-to-make-a-release: Update notes on how to cut a
1011 branch for a release.
1012
1013 2020-01-18 Nick Clifton <nickc@redhat.com>
1014
1015 * configure: Regenerate.
1016 * po/binutils.pot: Regenerate.
1017
1018 2020-01-18 Nick Clifton <nickc@redhat.com>
1019
1020 Binutils 2.34 branch created.
1021
1022 2020-01-17 Thomas Troeger <tstroege@gmx.de>
1023
1024 * objdump.c (jump_info_visualize_address): Discard jumps that are
1025 no longer needed.
1026 (disassemble_bytes): Only compute the maximum level if jumps were
1027 detected.
1028
1029 2020-01-13 Nick Clifton <nickc@redhat.com>
1030
1031 * objdump.c (disassemble_bytes): Remove C99-ism.
1032 * testsuite/binutils-all/debuginfod.exp: New tests.
1033
1034 2020-01-13 Thomas Troeger <tstroege@gmx.de>
1035
1036 * objdump.c (visualize_jumps, color_output, extended_color_output)
1037 (detected_jumps): New variables.
1038 (usage): Add the new jump visualization options.
1039 (option_values): Add new option value.
1040 (long_options): Add the new option.
1041 (jump_info_new, jump_info_free): New functions.
1042 (jump_info_min_address, jump_info_max_address): Likewise.
1043 (jump_info_end_address, jump_info_is_start_address): Likewise.
1044 (jump_info_is_end_address, jump_info_size): Likewise.
1045 (jump_info_unlink, jump_info_insert): Likewise.
1046 (jump_info_add_front, jump_info_move_linked): Likewise.
1047 (jump_info_intersect, jump_info_merge): Likewise.
1048 (jump_info_sort, jump_info_visualize_address): Likewise.
1049 (disassemble_jumps): New function - used to locate jumps.
1050 (disassemble_bytes): Add ascii art generation.
1051 (disassemble_section): Add scan to locate jumps.
1052 (main): Parse the new visualization option.
1053 * doc/binutils.texi: Document the new feature.
1054 * NEWS: Mention the new feature.
1055
1056 2020-01-13 Alan Modra <amodra@gmail.com>
1057
1058 PR 25360
1059 PR 25361
1060 * dwarf.c (display_debug_frames): Move fde_fc earlier. Free
1061 fde_fc col_type and col_offset.
1062 * readelf.c (apply_relocations): Move symsec check earlier.
1063 (free_debug_section): Free reloc_info.
1064 (process_notes_at): Free pnotes on error path.
1065 (process_object): Free dump_sects here..
1066 (process_archive): ..not here.
1067
1068 2020-01-13 Alan Modra <amodra@gmail.com>
1069
1070 PR 25362
1071 * nm.c (display_rel_file): Free dyn_syms.
1072
1073 2020-01-09 Nick Clifton <nickc@redhat.com>
1074
1075 PR 25220
1076 * objcopy.c (empty_name): New variable.
1077 (need_sym_before): Prevent an attempt to free a static variable.
1078 (filter_symbols): Avoid strcmp test by checking for pointer
1079 equality.
1080
1081 2020-01-09 Nick Clifton <nickc@redhat.com>
1082
1083 * po/zh_TW.po: Updated Traditional Chinese translation.
1084
1085 2020-01-09 Aaron Merey <amerey@redhat.com>
1086
1087 * Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod.
1088 * Makefile.in: Regenerate.
1089 * NEWS: Update.
1090 * config.in: Regenerate.
1091 * configure: Regenerate.
1092 * configure.ac: Call AC_DEBUGINFOD.
1093 * doc/Makefile.in: Regenerate.
1094 * doc/binutils.texi: Add section on using binutils
1095 with debuginfod.
1096 * dwarf.c (debuginfod_fetch_separate_debug_info): New function.
1097 Query debuginfod servers for the target debug file.
1098 (load_separate_debug_info): Call
1099 debuginfod_fetch_separate_debug_info if configured with
1100 debuginfod.
1101 (load_separate_debug_files): Add file argument to
1102 load_separate_debug_info calls.
1103 * dwarf.h (get_build_id): Add declaration.
1104 * objdump.c (get_build_id): New function. Get build-id of file.
1105 * readelf.c (get_build_id): Likewise.
1106 * testsuite/binutils-all/debuginfod.exp: New tests.
1107 * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id
1108 section.
1109
1110 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
1111
1112 * readelf.c: Add support for new Z*) relocations and machine
1113 types.
1114
1115 2020-01-01 Alan Modra <amodra@gmail.com>
1116
1117 Update year range in copyright notice of all files.
1118
1119 For older changes see ChangeLog-2019
1120 \f
1121 Copyright (C) 2020 Free Software Foundation, Inc.
1122
1123 Copying and distribution of this file, with or without modification,
1124 are permitted in any medium without royalty provided the copyright
1125 notice and this notice are preserved.
1126
1127 Local Variables:
1128 mode: change-log
1129 left-margin: 8
1130 fill-column: 74
1131 version-control: never
1132 End: