diff options
Diffstat (limited to 'mld/symtab.c')
-rw-r--r-- | mld/symtab.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/mld/symtab.c b/mld/symtab.c index 9417673..314a1c3 100644 --- a/mld/symtab.c +++ b/mld/symtab.c @@ -56,6 +56,10 @@ int symtab_get(struct symbol_table *symtab, Elf32_Sym **res, const char *name, if (strcmp(name, symname) != 0) continue; + // ignore absolute symbols + if (B16(sym->st_shndx) == SHN_ABS) + continue; + // only allow retrevial of local variables from the // same object if (sym->st_info >> 4 != STB_GLOBAL && symtab->map != NULL && |