summary refs log tree commit diff
path: root/elf/dl-version.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-03-09 18:30:58 +0000
committerUlrich Drepper <drepper@redhat.com>1998-03-09 18:30:58 +0000
commit0c367d923b58c146c30acc560c18097bacae91c4 (patch)
treec5691885d2c97733e1dbb294f919245084495466 /elf/dl-version.c
parent19212f875d0dd43a8925c68e7b806561b4cabbb9 (diff)
downloadglibc-0c367d923b58c146c30acc560c18097bacae91c4.tar.gz
glibc-0c367d923b58c146c30acc560c18097bacae91c4.tar.xz
glibc-0c367d923b58c146c30acc560c18097bacae91c4.zip
Update.
1998-03-09 18:21  Ulrich Drepper  <drepper@cygnus.com>

	* 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.
Diffstat (limited to 'elf/dl-version.c')
-rw-r--r--elf/dl-version.c4
1 files changed, 4 insertions, 0 deletions
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;