From 0c367d923b58c146c30acc560c18097bacae91c4 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 9 Mar 1998 18:30:58 +0000 Subject: Update. 1998-03-09 18:21 Ulrich Drepper * elf/dl-support.c (_dl_debug_bindings): Add definition. * elf/rtld.c (_dl_debug_bindings): Add definition. (process_dl_debug): Recognize bindings option. Update help message. * elf/link.h (struct link_map): Add l_versyms member. (_dl_debug_bindings): Add declaration. * elf/version.c (_dl_check_map_versions): Initialize l_versyms. * elf/dl-object.c (_dl_new_object): Don't initialize l_rpath_dirs and l_reloc_result. * elf/dl-lookup.c (do_lookup): Define verstab from l_versyms. (sym_val): Remove a member, add m as link_map. (do_lookup): Return result appropriately. (_dl_lookup_symbol): If _dl_debug_bindings is defined print message. Call do_lookup correctly. (_dl_lookup_symbol_skip): Likewise. (_dl_lookup_versioned_symbol): Likewise. (_dl_lookup_versioned_symbol_skip): Likewise. --- elf/dl-version.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'elf/dl-version.c') diff --git a/elf/dl-version.c b/elf/dl-version.c index a4f77f5f17..f615bb0cbc 100644 --- a/elf/dl-version.c +++ b/elf/dl-version.c @@ -273,6 +273,10 @@ _dl_check_map_versions (struct link_map *map, int verbose) /* Store the number of available symbols. */ map->l_nversions = ndx_high + 1; + /* Compute the pointer to the version symbols. */ + map->l_versyms = ((void *) map->l_addr + + map->l_info[VERSTAG (DT_VERSYM)]->d_un.d_ptr); + if (dyn != NULL) { ElfW(Verneed) *ent; -- cgit v1.2.3