summaryrefslogtreecommitdiff
path: root/elf/dl-lookup.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1997-06-26 00:09:27 +0000
committerUlrich Drepper <drepper@redhat.com>1997-06-26 00:09:27 +0000
commitf9a73ae19a5fd2dff92b9eb631a96fff17b3f5af (patch)
treef93328864ea4994a3a08b73dbfe1c9ee4cb70dba /elf/dl-lookup.c
parent478b92f03a640cba69e9508730abc00116c6940c (diff)
Update.
1997-06-26 02:06 Ulrich Drepper <drepper@cygnus.com> * Makerules ($(common-objpfx)libc.so): Use $(load-map-file) in dependency, not $(libc-map). * sysdeps/posix/mk-stdiolim.c: Pretty print. 1997-06-25 15:54 Fila Kolodny <fila@ibi.com> * sysdeps/posix/Makefile ($(common-objpfx)bits/stdio_lim.h): Don't conditionalize this on whether we are cross-compiling. 1997-06-21 15:47 H.J. Lu <hjl@gnu.ai.mit.edu> * elf/dl-lookup.c (do_lookup): Use default definition for a default versioned symbol. * elf/dl-version.c (_dl_check_map_versions): Set the hidden field. * elf/dlvsym.c (__dlvsym): Set the hidden field to 1. * elf/link.h (r_found_version): Add the hidden field. * math/test-matherr.c: New file. * math/Makefile (tests): Add test-matherr. (libm-support): Put back s_matherr. (static-only-routines, aux): Remove s_matherr.
Diffstat (limited to 'elf/dl-lookup.c')
-rw-r--r--elf/dl-lookup.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c
index 15da23d95c..4cc1f2d468 100644
--- a/elf/dl-lookup.c
+++ b/elf/dl-lookup.c
@@ -151,10 +151,12 @@ do_lookup (const char *undef_name, unsigned long int hash,
}
else
{
- /* We can match the version information. */
+ /* We can match the version information or use the
+ default one. */
ElfW(Half) ndx = verstab[symidx] & 0x7fff;
- if (map->l_versions[ndx].hash != version->hash
- || strcmp (map->l_versions[ndx].name, version->name))
+ if ((map->l_versions[ndx].hash != version->hash
+ || strcmp (map->l_versions[ndx].name, version->name))
+ && (version->hidden || map->l_versions[ndx].hash))
/* It's not the version we want. */
continue;
}