From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============3620359086396108839==" MIME-Version: 1.0 From: Mark Wielaard To: elfutils-devel@lists.fedorahosted.org Subject: [PATCH] readelf: Skip section if name is NULL in print_debug. Date: Tue, 27 May 2014 10:28:16 +0200 Message-ID: <1401179296-12115-1-git-send-email-mjw@redhat.com> --===============3620359086396108839== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Don't crash and burn when a section doesn't have a name (possibly invalid ELF file string table). Just try the next section instead of calling strcmp on NULL. Signed-off-by: Mark Wielaard --- src/ChangeLog | 4 ++++ src/readelf.c | 4 +++- 2 files changed, 7 insertions(+), 1 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 5535cff..7e68036 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2014-05-27 Mark Wielaard + + * readelf.c (print_debug): Skip section if name is NULL. + 2014-05-26 Mark Wielaard = * readelf.c (handle_relocs_rela): Print header like handle_relocs_rel diff --git a/src/readelf.c b/src/readelf.c index ea14a09..6bbe436 100644 --- a/src/readelf.c +++ b/src/readelf.c @@ -7962,8 +7962,10 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Eh= dr *ehdr) / sizeof (debug_sections[0])); const char *name =3D elf_strptr (ebl->elf, shstrndx, shdr->sh_name); - int n; + if (name =3D=3D NULL) + continue; = + int n; for (n =3D 0; n < ndebug_sections; ++n) if (strcmp (name, debug_sections[n].name) =3D=3D 0 #if USE_ZLIB -- = 1.7.1 --===============3620359086396108839==--