Stop the BFD library complaining about compressed dwarf debug string sections being too big.

PR 28834
	* dwarf2.c (read_section): Change the heuristic that checks for
	overlarge dwarf debug info sections.
This commit is contained in:
Nick Clifton 2022-02-02 17:06:22 +00:00
parent 2f6b20e2e0
commit 41ba8b76cc
2 changed files with 12 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2022-02-02 Nick Clifton <nickc@redhat.com>
PR 28834
* dwarf2.c (read_section): Change the heuristic that checks for
overlarge dwarf debug info sections.
2022-02-02 Stafford Horne <shorne@gmail.com>
PR 28735

View File

@ -557,10 +557,14 @@ read_section (bfd * abfd,
amt = bfd_get_section_limit_octets (abfd, msec);
filesize = bfd_get_file_size (abfd);
if (amt >= filesize)
/* PR 28834: A compressed debug section could well decompress to a size
larger than the file, so we choose an arbitrary modifier of 10x in
the test below. If this ever turns out to be insufficient, it can
be changed by a future update. */
if (amt >= filesize * 10)
{
/* PR 26946 */
_bfd_error_handler (_("DWARF error: section %s is larger than its filesize! (0x%lx vs 0x%lx)"),
_bfd_error_handler (_("DWARF error: section %s is larger than 10x its filesize! (0x%lx vs 0x%lx)"),
section_name, (long) amt, (long) filesize);
bfd_set_error (bfd_error_bad_value);
return false;