This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Fix expanding STB_GNU_UNIQUE hash table
- From: Andreas Schwab <schwab at redhat dot com>
- To: libc-alpha at sourceware dot org
- Date: Fri, 07 Aug 2009 17:58:43 +0200
- Subject: Fix expanding STB_GNU_UNIQUE hash table
An invalid symbol name pointer was entered into the hash table while
enlarging it.
Andreas.
2009-08-07 Andreas Schwab <schwab@redhat.com>
* elf/dl-lookup.c (do_lookup_x): Enter correct name into table of
unique symbols.
diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c
index 56724c9..c1a1366 100644
--- a/elf/dl-lookup.c
+++ b/elf/dl-lookup.c
@@ -321,7 +321,7 @@ do_lookup_x (const char *undef_name, uint_fast32_t new_hash,
if (table[idx].name == NULL)
{
table[idx].hashval = hash;
- table[idx].name = strtab + sym->st_name;
+ table[idx].name = name;
if ((type_class & ELF_RTYPE_CLASS_COPY) != 0)
{
table[idx].sym = ref;
--
1.6.4
--
Andreas Schwab, schwab@redhat.com
GPG Key fingerprint = D4E8 DBE3 3813 BB5D FA84 5EC7 45C6 250E 6F00 984E
"And now for something completely different."