From: Roland McGrath Date: Fri, 23 Jan 2009 08:48:46 +0000 (-0800) Subject: Merge branch 'master' of ssh://git.fedorahosted.org/git/elfutils into robustify X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9eb23a754cfa33ffb6e584639cc02c9ed428381a;p=thirdparty%2Felfutils.git Merge branch 'master' of ssh://git.fedorahosted.org/git/elfutils into robustify --- 9eb23a754cfa33ffb6e584639cc02c9ed428381a diff --cc src/readelf.c index 03eec292a,d5a3b8d45..9e4270e24 --- a/src/readelf.c +++ b/src/readelf.c @@@ -4074,22 -4058,12 +4088,22 @@@ print_debug_aranges_section (Dwfl_Modul return; } + GElf_Shdr glink_mem; + GElf_Shdr *glink; + glink = gelf_getshdr (elf_getscn (ebl->elf, shdr->sh_link), &glink_mem); + if (glink == NULL) + { + error (0, 0, gettext ("invalid sh_link value in section %Zu"), + elf_ndxscn (scn)); + return; + } + printf (ngettext ("\ - \nDWARF section '%s' at offset %#" PRIx64 " contains %zu entry:\n", + \nDWARF section [%2zu] '%s' at offset %#" PRIx64 " contains %zu entry:\n", "\ - \nDWARF section '%s' at offset %#" PRIx64 " contains %zu entries:\n", + \nDWARF section [%2zu] '%s' at offset %#" PRIx64 " contains %zu entries:\n", cnt), - ".debug_aranges", (uint64_t) shdr->sh_offset, cnt); + elf_ndxscn (scn), ".debug_aranges", (uint64_t) shdr->sh_offset, cnt); /* Compute floor(log16(cnt)). */ size_t tmp = cnt;