[PATCH] libebl: Do not require EI_OSABI for IFUNC.

Martin Liška mliska@suse.cz
Thu Nov 24 12:23:19 GMT 2022


Similar fix to:
https://sourceware.org/bugzilla/show_bug.cgi?id=29718

Ready for master?
Thanks,
Martin

	PR 29826

libebl/ChangeLog:

	* eblsymboltypename.c (ebl_symbol_type_name):
	Do not require EI_OSABI for IFUNC
---
 libebl/eblsymboltypename.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libebl/eblsymboltypename.c b/libebl/eblsymboltypename.c
index 0ff1722a..3b8e7ee9 100644
--- a/libebl/eblsymboltypename.c
+++ b/libebl/eblsymboltypename.c
@@ -65,9 +65,9 @@ ebl_symbol_type_name (Ebl *ebl, int symbol, char *buf, size_t len)
 	    snprintf (buf, len, "LOPROC+%d", symbol - STT_LOPROC);
 	  else if (symbol == STT_GNU_IFUNC
 		   && ebl != NULL
-		   && (ident = elf_getident (ebl->elf, NULL)) != NULL
-		   && ident[EI_OSABI] == ELFOSABI_LINUX)
-	    return "GNU_IFUNC";
+		   && (ident = elf_getident (ebl->elf, NULL)) != NULL)
+	    return "GNU_IFUNC"; /* Ignore EI_OSABI
+                             as STT_GNU_IFUNC is a reserved name.  */
 	  else if (symbol >= STT_LOOS && symbol <= STT_HIOS)
 	    snprintf (buf, len, "LOOS+%d", symbol - STT_LOOS);
 	  else
-- 
2.38.1



More information about the Elfutils-devel mailing list