eu-elflint uses ebl_check_reloc_target_type to determine whether a section
is a valid relocation target. In Fedora rawhide there are new ELF notes
(annobin) which have relocations against them in ET_REL files. eu-elflint
currently flags these as invalid. It looks like that is not correct.
I cannot find any reason an SHT_NOTE section cannot have relocations
against it. So this patch allows them.

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

diff --git a/libebl/ChangeLog b/libebl/ChangeLog
index 3ecd732..de325ab 100644
--- a/libebl/ChangeLog
+++ b/libebl/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-21  Mark Wielaard  <m...@klomp.org>
+
+       * eblcheckreloctargettype.c (ebl_check_reloc_target_type): Accept
+       SHT_NOTE.
+
 2018-02-09  Joshua Watt  <jpewhac...@gmail.com>
 
        * eblobjnote.c (ebl_object_note): Use FALLTHROUGH macro instead of
diff --git a/libebl/eblcheckreloctargettype.c b/libebl/eblcheckreloctargettype.c
index e0d57c1..068ad8f 100644
--- a/libebl/eblcheckreloctargettype.c
+++ b/libebl/eblcheckreloctargettype.c
@@ -46,6 +46,7 @@ ebl_check_reloc_target_type (Ebl *ebl, Elf64_Word sh_type)
       case SHT_INIT_ARRAY:
       case SHT_FINI_ARRAY:
       case SHT_PREINIT_ARRAY:
+      case SHT_NOTE:
        return true;
 
       default:
-- 
1.8.3.1

Reply via email to