This is the mail archive of the elfutils-devel@sourceware.org mailing list for the elfutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[COMMITTED] unstrip: Add ELF_CHECK to make sure gelf_getehdr () doesn't return NULL.


Although we would most likely have seen an error before, make sure we
provide a proper error message in the unlikely case gelf_getehdr ()
returns NULL.

Signed-off-by: Mark Wielaard <mark@klomp.org>
---
 src/ChangeLog | 5 +++++
 src/unstrip.c | 1 +
 2 files changed, 6 insertions(+)

diff --git a/src/ChangeLog b/src/ChangeLog
index 758534d..ca1533d 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2018-11-02  Mark Wielaard  <mark@klomp.org>
+
+	* unstrip.c (copy_elf): Add ELF_CHECK to make sure gelf_getehdr ()
+	doesn't return NULL.
+
 2018-10-18  Mark Wielaard  <mark@klomp.org>
 
 	* elflint.c (check_note_data): Recognize NT_GNU_PROPERTY_TYPE_0.
diff --git a/src/unstrip.c b/src/unstrip.c
index 32da89d..3495b1d 100644
--- a/src/unstrip.c
+++ b/src/unstrip.c
@@ -245,6 +245,7 @@ copy_elf (Elf *outelf, Elf *inelf)
 
   GElf_Ehdr ehdr_mem;
   GElf_Ehdr *ehdr = gelf_getehdr (inelf, &ehdr_mem);
+  ELF_CHECK (ehdr != NULL, _("cannot get ELF header: %s"));
   if (shstrndx < SHN_LORESERVE)
     ehdr->e_shstrndx = shstrndx;
   else
-- 
1.8.3.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]