diff options
| author | Ulrich Drepper <[email protected]> | 2009-07-08 00:53:24 -0700 |
|---|---|---|
| committer | Ulrich Drepper <[email protected]> | 2009-07-08 00:53:24 -0700 |
| commit | 70c442caa8296a698b395b8969b9a04d5491d47b (patch) | |
| tree | b4bae07225d5d7d0e1d1b21031f614132091d56c /libebl/eblsymbolbindingname.c | |
| parent | 46d5827cc232c689853b50181b17751aa7574128 (diff) | |
Add support for STB_GNU_UNIQUE to libebl.
Diffstat (limited to 'libebl/eblsymbolbindingname.c')
| -rw-r--r-- | libebl/eblsymbolbindingname.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libebl/eblsymbolbindingname.c b/libebl/eblsymbolbindingname.c index c4412c9e..334a9c3e 100644 --- a/libebl/eblsymbolbindingname.c +++ b/libebl/eblsymbolbindingname.c @@ -1,5 +1,5 @@ /* Return symbol binding name. - Copyright (C) 2001, 2002 Red Hat, Inc. + Copyright (C) 2001, 2002, 2009 Red Hat, Inc. This file is part of Red Hat elfutils. Written by Ulrich Drepper <[email protected]>, 2001. @@ -78,8 +78,14 @@ ebl_symbol_binding_name (ebl, binding, buf, len) res = stb_names[binding]; else { + char *ident; + if (binding >= STB_LOPROC && binding <= STB_HIPROC) snprintf (buf, len, "LOPROC+%d", binding - STB_LOPROC); + else if (binding == STB_GNU_UNIQUE + && (ident = elf_getident (ebl->elf, NULL)) != NULL + && ident[EI_OSABI] == ELFOSABI_LINUX) + return "GNU_UNIQUE"; else if (binding >= STB_LOOS && binding <= STB_HIOS) snprintf (buf, len, "LOOS+%d", binding - STB_LOOS); else |
