Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-1-6]: src/lib/csu/common_elf Pull up revision 1.13 (requested by ...



details:   https://anonhg.NetBSD.org/src/rev/1aa97137026a
branches:  netbsd-1-6
changeset: 531365:1aa97137026a
user:      tron <tron%NetBSD.org@localhost>
date:      Fri May 28 09:01:24 2004 +0000

description:
Pull up revision 1.13 (requested by skrll in ticket #1702):
Resolve dlsym(3) and friends directly so that dlsym(RTLD_NEXT,...) works.
Previously dlsym resolved to the version in crt0.o or libc which would
mean that the caller's shared object couldn't be determined correctly
using __builtin_return_address(0).
Mainly from FreeBSD, but adapted by me. Benefits of this solutions are:
        - backward comptibility maintained
        - existing broken binaries are fixed with a new ld.elf_so
        - __mainprog_obj can be removed from crt0.o
        - we do the same thing as FreeBSD
Fixes PR 22067.
OKed by Jason and Christos.

diffstat:

 lib/csu/common_elf/common.c |  11 +----------
 1 files changed, 1 insertions(+), 10 deletions(-)

diffs (23 lines):

diff -r c58d4e6ba69a -r 1aa97137026a lib/csu/common_elf/common.c
--- a/lib/csu/common_elf/common.c       Fri May 28 09:01:18 2004 +0000
+++ b/lib/csu/common_elf/common.c       Fri May 28 09:01:24 2004 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: common.c,v 1.11 2000/07/03 23:01:01 matt Exp $ */
+/* $NetBSD: common.c,v 1.11.2.1 2004/05/28 09:01:24 tron Exp $ */
 
 /*
  * Copyright (c) 1995 Christopher G. Demetriou
@@ -74,13 +74,4 @@
        atexit(cleanup);
 }
 
-#ifdef __weak_alias
-__weak_alias(dlopen,_dlopen);
-__weak_alias(dlclose,_dlclose);
-__weak_alias(dlsym,_dlsym);
-__weak_alias(dlerror,_dlerror);
-__weak_alias(dladdr,_dladdr);
-#endif
-
-#include <dlfcn_stubs.c>
 #endif /* DYNAMIC */



Home | Main Index | Thread Index | Old Index