Summary: | binutils/strip-new: BFD (GNU Binutils) 2.33 internal error, aborting at elf.c:9101 in _bfd_elf_set_section_contents | ||
---|---|---|---|
Product: | binutils | Reporter: | chien_hsiang <fdgkhdkgh> |
Component: | binutils | Assignee: | Alan Modra <amodra> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | P2 | ||
Version: | 2.33 | ||
Target Milestone: | 2.34 | ||
Host: | Target: | ||
Build: | Last reconfirmed: | 2019-11-19 00:00:00 | |
Attachments: | file that reproduces this problem |
Description
chien_hsiang
2019-11-14 17:02:20 UTC
The master branch has been updated by Alan Modra <amodra@sourceware.org>: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=dd68a12bc4b19c50c31fe357335bb8ee9a3322fc commit dd68a12bc4b19c50c31fe357335bb8ee9a3322fc Author: Alan Modra <amodra@gmail.com> Date: Tue Nov 19 14:53:44 2019 +1030 PR25191, internal error in _bfd_elf_set_section_contents This PR copies a fuzzed PE input file to ELF output, in the process confusing the ELF backend by copying COFF-only section flags to the output. SEC_COFF_SHARED has the same value as SEC_ELF_COMPRESS. One approach to fixing this problem is of course not to reuse flag bits, but we've run out. So this patch only copies section flags that are in the bfd_applicable_section_flags set when changing the flavour of the output file. PR 25191 * objcopy.c (is_nondebug_keep_contents_section): Use bfd_get_flavour. (copy_object): Likewise. (setup_section): Likewise. If flavour of input and output files differ, restrict section flags to the intersection of input and output bfd_applicable_section_flags. Fixed. |