Stop readekf and objdump from aggressively following links.

* dwarf.c (dwarf_select_sections_by_names): Return zero if no
	sections were selected.
	(dwarf_select_sections_by_letters): Likewise.
	* dwarf.h: (dwarf_select_sections_by_names): Update prototype.
	(dwarf_select_sections_by_letters): Update prototype.
	* objdump.c (might_need_separate_debug_info): New function.
	(dump_bfd): Call new function before attempting to load separate
	debug info files.
	(main): Do not enable dwarf section dumping for -WK or -WN.
	* readelf.c (parse_args): Do not enable dwarf section dumping for
	-wK or -wN.
	(might_need_separate_debug_info): New function.
	(process_object): Call new function before attempting to load
	separate debug info files.
	* testsuite/binutils-all/debuginfo.exp: Expect -WE and -wE
	debuginfod tests to pass.
	* testsuite/binutils-all/objdump.Wk: Add extra regexps.
	* testsuite/binutils-all/readelf.k: Add extra regexps.
This commit is contained in:
Nick Clifton
2022-05-20 16:55:36 +01:00
parent 9ecdcd1be1
commit 94585d6d44
8 changed files with 179 additions and 66 deletions

View File

@@ -189,7 +189,7 @@ if { [regexp ".*DEBUGINFOD.*" $conf_objdump] } {
test_fetch_debugaltlink $OBJDUMP "-Wk"
set test "disabling debuginfod access"
setup_xfail *-*-*
# setup_xfail *-*-*
test_fetch_debuglink $OBJDUMP "-W -WE"
set test "debuginfod"
@@ -202,7 +202,7 @@ if { [regexp ".*DEBUGINFOD.*" $conf_readelf] } {
test_fetch_debugaltlink $READELF "-wk"
set test "disabling debuginfod access"
setup_xfail *-*-*
# setup_xfail *-*-*
test_fetch_debuglink $READELF "-w -wE"
set test "debuginfod"

View File

@@ -1,8 +1,9 @@
#...
tmpdir/debuglink\.o: file format .*
Contents of the \.gnu_debuglink section:
Contents of the \.gnu_debuglink section.*
Separate debug info file: this_is_a_debuglink\.debug
CRC value: 0x12345678
Contents of the \.gnu_debugaltlink section:
Contents of the \.gnu_debugaltlink section.*
Separate debug info file: linkdebug\.debug
Build-ID \(0x18 bytes\):
00 11 22 33 44 55 66 77 88 99 aa bb cc dd ee ff 01 23 45 67 89 ab cd ef

View File

@@ -1,7 +1,8 @@
Contents of the \.gnu_debuglink section:
#...
Contents of the \.gnu_debuglink section.*
Separate debug info file: this_is_a_debuglink\.debug
CRC value: 0x12345678
Contents of the \.gnu_debugaltlink section:
Contents of the \.gnu_debugaltlink section.*
Separate debug info file: linkdebug\.debug
Build-ID \(0x18 bytes\):
00 11 22 33 44 55 66 77 88 99 aa bb cc dd ee ff 01 23 45 67 89 ab cd ef